@univerjs/sheets-formula 0.2.15 → 0.3.0-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (28) hide show
  1. package/lib/cjs/index.js +3 -3
  2. package/lib/es/index.js +574 -313
  3. package/lib/locale/en-US.json +468 -320
  4. package/lib/locale/ru-RU.json +468 -320
  5. package/lib/locale/vi-VN.json +712 -204
  6. package/lib/locale/zh-CN.json +470 -322
  7. package/lib/locale/zh-TW.json +471 -323
  8. package/lib/types/commands/operations/__tests__/create-command-test-bed.d.ts +1 -1
  9. package/lib/types/controllers/prompt.controller.d.ts +2 -1
  10. package/lib/types/controllers/update-formula.controller.d.ts +1 -1
  11. package/lib/types/index.d.ts +1 -1
  12. package/lib/types/locale/en-US.d.ts +257 -109
  13. package/lib/types/locale/function-list/compatibility/en-US.d.ts +96 -40
  14. package/lib/types/locale/function-list/compatibility/ja-JP.d.ts +96 -40
  15. package/lib/types/locale/function-list/compatibility/vi-VN.d.ts +96 -40
  16. package/lib/types/locale/function-list/compatibility/zh-CN.d.ts +96 -40
  17. package/lib/types/locale/function-list/compatibility/zh-TW.d.ts +96 -40
  18. package/lib/types/locale/function-list/statistical/en-US.d.ts +161 -69
  19. package/lib/types/locale/function-list/statistical/ja-JP.d.ts +161 -69
  20. package/lib/types/locale/function-list/statistical/vi-VN.d.ts +442 -26
  21. package/lib/types/locale/function-list/statistical/zh-CN.d.ts +161 -69
  22. package/lib/types/locale/function-list/statistical/zh-TW.d.ts +161 -69
  23. package/lib/types/locale/ru-RU.d.ts +257 -109
  24. package/lib/types/locale/vi-VN.d.ts +538 -66
  25. package/lib/types/locale/zh-CN.d.ts +257 -109
  26. package/lib/types/locale/zh-TW.d.ts +257 -109
  27. package/lib/umd/index.js +3 -3
  28. package/package.json +26 -29
package/lib/cjs/index.js CHANGED
@@ -1,4 +1,4 @@
1
- "use strict";var __defProp=Object.defineProperty;var __defNormalProp=(obj,key,value)=>key in obj?__defProp(obj,key,{enumerable:!0,configurable:!0,writable:!0,value}):obj[key]=value;var __name=(target,value)=>__defProp(target,"name",{value,configurable:!0});var __publicField=(obj,key,value)=>__defNormalProp(obj,typeof key!="symbol"?key+"":key,value);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const core=require("@univerjs/core"),rpc=require("@univerjs/rpc"),engineFormula=require("@univerjs/engine-formula"),engineRender=require("@univerjs/engine-render"),sheets=require("@univerjs/sheets"),sheetsUi=require("@univerjs/sheets-ui"),ui=require("@univerjs/ui"),rxjs=require("rxjs"),require$$0=require("react"),design=require("@univerjs/design"),docs=require("@univerjs/docs"),docsUi=require("@univerjs/docs-ui"),FORMULA_UI_PLUGIN_NAME="SHEET_FORMULA_UI_PLUGIN";var __defProp$j=Object.defineProperty,__getOwnPropDesc$j=Object.getOwnPropertyDescriptor,__decorateClass$j=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$j(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$j(target,key,result),result},"__decorateClass$j"),__decorateParam$j=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$j"),_a;let ActiveDirtyController=(_a=class extends core.Disposable{constructor(_activeDirtyManagerService,_univerInstanceService,_formulaDataModel,_definedNamesService){super(),this._activeDirtyManagerService=_activeDirtyManagerService,this._univerInstanceService=_univerInstanceService,this._formulaDataModel=_formulaDataModel,this._definedNamesService=_definedNamesService,this._initialize()}_initialize(){this._initialConversion()}_initialConversion(){this._activeDirtyManagerService.register(sheets.SetRangeValuesMutation.id,{commandId:sheets.SetRangeValuesMutation.id,getDirtyData:__name(command=>{const params=command.params;return params.trigger===sheets.SetStyleCommand.id?{}:{dirtyRanges:this._getSetRangeValuesMutationDirtyRange(params)}},"getDirtyData")}),this._initialMove(),this._initialRowAndColumn(),this._initialSheet(),this._initialDefinedName()}_initialMove(){this._activeDirtyManagerService.register(sheets.MoveRangeMutation.id,{commandId:sheets.MoveRangeMutation.id,getDirtyData:__name(command=>{const params=command.params;return{dirtyRanges:this._getMoveRangeMutationDirtyRange(params)}},"getDirtyData")}),this._activeDirtyManagerService.register(sheets.MoveRowsMutation.id,{commandId:sheets.MoveRowsMutation.id,getDirtyData:__name(command=>{const params=command.params;return{dirtyRanges:this._getMoveRowsMutationDirtyRange(params)}},"getDirtyData")}),this._activeDirtyManagerService.register(sheets.MoveColsMutation.id,{commandId:sheets.MoveColsMutation.id,getDirtyData:__name(command=>{const params=command.params;return{dirtyRanges:this._getMoveRowsMutationDirtyRange(params)}},"getDirtyData")}),this._activeDirtyManagerService.register(sheets.ReorderRangeMutation.id,{commandId:sheets.ReorderRangeMutation.id,getDirtyData:__name(command=>{const params=command.params;return{dirtyRanges:this._getReorderRangeMutationDirtyRange(params)}},"getDirtyData")})}_initialRowAndColumn(){this._activeDirtyManagerService.register(sheets.RemoveRowMutation.id,{commandId:sheets.RemoveRowMutation.id,getDirtyData:__name(command=>{const params=command.params;return{dirtyRanges:this._getRemoveRowOrColumnMutation(params,!0)}},"getDirtyData")}),this._activeDirtyManagerService.register(sheets.RemoveColMutation.id,{commandId:sheets.RemoveColMutation.id,getDirtyData:__name(command=>{const params=command.params;return{dirtyRanges:this._getRemoveRowOrColumnMutation(params,!1)}},"getDirtyData")})}_initialSheet(){this._activeDirtyManagerService.register(sheets.RemoveSheetMutation.id,{commandId:sheets.RemoveSheetMutation.id,getDirtyData:__name(command=>{const params=command.params;return{dirtyNameMap:this._getRemoveSheetMutation(params)}},"getDirtyData")}),this._activeDirtyManagerService.register(sheets.InsertSheetMutation.id,{commandId:sheets.InsertSheetMutation.id,getDirtyData:__name(command=>{const params=command.params;return{dirtyNameMap:this._getInsertSheetMutation(params)}},"getDirtyData")})}_initialDefinedName(){this._activeDirtyManagerService.register(engineFormula.SetDefinedNameMutation.id,{commandId:engineFormula.SetDefinedNameMutation.id,getDirtyData:__name(command=>{const params=command.params;return{dirtyDefinedNameMap:this._getDefinedNameMutation(params)}},"getDirtyData")}),this._activeDirtyManagerService.register(engineFormula.RemoveDefinedNameMutation.id,{commandId:engineFormula.RemoveDefinedNameMutation.id,getDirtyData:__name(command=>{const params=command.params;return{dirtyDefinedNameMap:this._getDefinedNameMutation(params)}},"getDirtyData")}),this._activeDirtyManagerService.register(sheets.SetDefinedNameCommand.id,{commandId:sheets.SetDefinedNameCommand.id,getDirtyData:__name(command=>{const params=command.params,{oldDefinedName,newDefinedName}=params;return{dirtyDefinedNameMap:this._getDefinedNameMutation({...newDefinedName,name:oldDefinedName.name})}},"getDirtyData")})}_getDefinedNameMutation(definedName){const{unitId,name,formulaOrRefString}=definedName,result={};return definedName==null?{}:(result[unitId]={},result[unitId][name]=formulaOrRefString,result)}_getSetRangeValuesMutationDirtyRange(params){const{subUnitId:sheetId,unitId,cellValue}=params,dirtyRanges=[];return cellValue==null||(dirtyRanges.push(...this._getDirtyRangesByCellValue(unitId,sheetId,cellValue)),dirtyRanges.push(...this._getDirtyRangesForArrayFormula(unitId,sheetId,cellValue))),dirtyRanges}_getMoveRangeMutationDirtyRange(params){const{unitId,from,to}=params,dirtyRanges=[];return dirtyRanges.push(...this._getDirtyRangesByCellValue(unitId,from.subUnitId,from.value)),dirtyRanges.push(...this._getDirtyRangesByCellValue(unitId,to.subUnitId,to.value)),dirtyRanges.push(...this._getDirtyRangesForArrayFormula(unitId,to.subUnitId,to.value)),dirtyRanges}_getMoveRowsMutationDirtyRange(params){const{subUnitId:sheetId,unitId,sourceRange,targetRange}=params,dirtyRanges=[],sourceMatrix=this._rangeToMatrix(sourceRange).getData(),targetMatrix=this._rangeToMatrix(targetRange).getData();return dirtyRanges.push(...this._getDirtyRangesByCellValue(unitId,sheetId,sourceMatrix)),dirtyRanges.push(...this._getDirtyRangesByCellValue(unitId,sheetId,targetMatrix)),dirtyRanges.push(...this._getDirtyRangesForArrayFormula(unitId,sheetId,targetMatrix)),dirtyRanges}_getReorderRangeMutationDirtyRange(params){const{unitId,subUnitId:sheetId,range}=params,matrix=this._rangeToMatrix(range).getData(),dirtyRanges=[];return dirtyRanges.push(...this._getDirtyRangesByCellValue(unitId,sheetId,matrix)),dirtyRanges.push(...this._getDirtyRangesForArrayFormula(unitId,sheetId,matrix)),dirtyRanges}_getDeleteRangeMutationDirtyRange(params){const{subUnitId:sheetId,unitId,range,shiftDimension}=params,dirtyRanges=[],workbook=this._univerInstanceService.getUniverSheetInstance(unitId),worksheet=workbook==null?void 0:workbook.getSheetBySheetId(sheetId),lastEndRow=(worksheet==null?void 0:worksheet.getLastRowWithContent())||0,lastEndColumn=(worksheet==null?void 0:worksheet.getLastColumnWithContent())||0,matrix=new core.ObjectMatrix;let newMatrix=null;const{startRow,startColumn,endRow,endColumn}=range;shiftDimension===core.Dimension.ROWS?newMatrix=this._rangeToMatrix({startRow,startColumn,endRow:lastEndRow,endColumn}):shiftDimension===core.Dimension.COLUMNS&&(newMatrix=this._rangeToMatrix({startRow,startColumn,endRow,endColumn:lastEndColumn})),newMatrix!=null&&matrix.merge(newMatrix);const matrixData=matrix.getData();return dirtyRanges.push(...this._getDirtyRangesByCellValue(unitId,sheetId,matrixData)),dirtyRanges.push(...this._getDirtyRangesForArrayFormula(unitId,sheetId,matrixData)),dirtyRanges}_getRemoveRowOrColumnMutation(params,isRow=!0){const{subUnitId:sheetId,unitId,range}=params,dirtyRanges=[],workbook=this._univerInstanceService.getUniverSheetInstance(unitId),worksheet=workbook==null?void 0:workbook.getSheetBySheetId(sheetId),rowCount=(worksheet==null?void 0:worksheet.getRowCount())||0,columnCount=(worksheet==null?void 0:worksheet.getColumnCount())||0,matrix=new core.ObjectMatrix;let newMatrix=null;const{startRow,endRow,startColumn,endColumn}=range;isRow===!0?newMatrix=this._rangeToMatrix({startRow,startColumn:0,endRow,endColumn:columnCount-1}):newMatrix=this._rangeToMatrix({startRow:0,startColumn,endRow:rowCount,endColumn}),newMatrix!=null&&matrix.merge(newMatrix);const matrixData=matrix.getData();return dirtyRanges.push(...this._getDirtyRangesByCellValue(unitId,sheetId,matrixData)),dirtyRanges.push(...this._getDirtyRangesForArrayFormula(unitId,sheetId,matrixData)),dirtyRanges}_getRemoveSheetMutation(params){const dirtyNameMap={},{subUnitId:sheetId,unitId,subUnitName}=params;return dirtyNameMap[unitId]==null&&(dirtyNameMap[unitId]={}),dirtyNameMap[unitId][sheetId]=subUnitName,dirtyNameMap}_getInsertSheetMutation(params){const dirtyNameMap={},{sheet,unitId}=params;return dirtyNameMap[unitId]==null&&(dirtyNameMap[unitId]={}),dirtyNameMap[unitId][sheet.id]=sheet.name,dirtyNameMap}_rangeToMatrix(range){const matrix=new core.ObjectMatrix,{startRow,startColumn,endRow,endColumn}=range;for(let r=startRow;r<=endRow;r++)for(let c=startColumn;c<=endColumn;c++)matrix.setValue(r,c,{});return matrix}_getDirtyRangesByCellValue(unitId,sheetId,cellValue){const dirtyRanges=[];return cellValue==null||new core.ObjectMatrix(cellValue).getDiscreteRanges().forEach(range=>{dirtyRanges.push({unitId,sheetId,range})}),dirtyRanges}_getDirtyRangesForArrayFormula(unitId,sheetId,cellValue){var _a23,_b;const dirtyRanges=[];if(cellValue==null)return dirtyRanges;const cellMatrix=new core.ObjectMatrix(cellValue),arrayFormulaRange=this._formulaDataModel.getArrayFormulaRange();if((_a23=arrayFormulaRange==null?void 0:arrayFormulaRange[unitId])!=null&&_a23[sheetId]){const cellRangeData=new core.ObjectMatrix((_b=arrayFormulaRange==null?void 0:arrayFormulaRange[unitId])==null?void 0:_b[sheetId]);cellMatrix.forValue((row,column)=>{cellRangeData.forValue((arrayFormulaRow,arrayFormulaColumn,arrayFormulaRange2)=>{if(arrayFormulaRange2==null)return!0;const{startRow,startColumn,endRow,endColumn}=arrayFormulaRange2;row>=startRow&&row<=endRow&&column>=startColumn&&column<=endColumn&&dirtyRanges.push({unitId,sheetId,range:{startRow,startColumn,endRow:startRow,endColumn:startColumn}})})})}return dirtyRanges}},__name(_a,"ActiveDirtyController"),_a);ActiveDirtyController=__decorateClass$j([core.OnLifecycle(core.LifecycleStages.Ready,ActiveDirtyController),__decorateParam$j(0,engineFormula.IActiveDirtyManagerService),__decorateParam$j(1,core.IUniverInstanceService),__decorateParam$j(2,core.Inject(engineFormula.FormulaDataModel)),__decorateParam$j(3,engineFormula.IDefinedNamesService)],ActiveDirtyController);var __defProp$i=Object.defineProperty,__getOwnPropDesc$i=Object.getOwnPropertyDescriptor,__decorateClass$i=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$i(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$i(target,key,result),result},"__decorateClass$i"),__decorateParam$i=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$i"),_a2;let ArrayFormulaDisplayController=(_a2=class extends core.Disposable{constructor(_commandService,_sheetInterceptorService,_formulaDataModel,_themeService){super(),this._commandService=_commandService,this._sheetInterceptorService=_sheetInterceptorService,this._formulaDataModel=_formulaDataModel,this._themeService=_themeService,this._initialize()}_initialize(){this._commandExecutedListener(),this._initInterceptorCellContent()}_commandExecutedListener(){this.disposeWithMe(this._commandService.onCommandExecuted(command=>{if(command.id!==engineFormula.SetArrayFormulaDataMutation.id)return;const params=command.params;if(params==null)return;const{arrayFormulaRange,arrayFormulaCellData}=params;this._formulaDataModel.setArrayFormulaRange(arrayFormulaRange),this._formulaDataModel.setArrayFormulaCellData(arrayFormulaCellData)}))}_initInterceptorCellContent(){this.disposeWithMe(this._sheetInterceptorService.intercept(sheets.INTERCEPTOR_POINT.CELL_CONTENT,{priority:100,handler:__name((cell,location,next)=>{var _a23,_b,_c;const{unitId,subUnitId,row,col}=location,arrayFormulaCellData=this._formulaDataModel.getArrayFormulaCellData(),cellData=(_c=(_b=(_a23=arrayFormulaCellData==null?void 0:arrayFormulaCellData[unitId])==null?void 0:_a23[subUnitId])==null?void 0:_b[row])==null?void 0:_c[col];return cellData==null?next(cell):cellData.v==null&&cellData.t==null?next({...cell,v:0,t:core.CellValueType.NUMBER}):(cell==null?void 0:cell.t)===core.CellValueType.NUMBER&&typeof(cell==null?void 0:cell.v)=="number"?next({...cell,v:engineFormula.stripErrorMargin(cell.v)}):next({...cell,v:cellData.v,t:cellData.t})},"handler")}))}},__name(_a2,"ArrayFormulaDisplayController"),_a2);ArrayFormulaDisplayController=__decorateClass$i([core.OnLifecycle(core.LifecycleStages.Ready,ArrayFormulaDisplayController),__decorateParam$i(0,core.ICommandService),__decorateParam$i(1,core.Inject(sheets.SheetInterceptorService)),__decorateParam$i(2,core.Inject(engineFormula.FormulaDataModel)),__decorateParam$i(3,core.Inject(core.ThemeService))],ArrayFormulaDisplayController);var __defProp$h=Object.defineProperty,__getOwnPropDesc$h=Object.getOwnPropertyDescriptor,__decorateClass$h=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$h(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$h(target,key,result),result},"__decorateClass$h"),__decorateParam$h=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$h"),_a3;let FormulaAutoFillController=(_a3=class extends core.Disposable{constructor(_autoFillService,_lexerTreeBuilder){super(),this._autoFillService=_autoFillService,this._lexerTreeBuilder=_lexerTreeBuilder,this._initialize()}_initialize(){this._registerAutoFill()}_registerAutoFill(){const formulaRule={type:sheetsUi.DATA_TYPE.FORMULA,priority:1001,match:__name(cellData=>core.isFormulaString(cellData==null?void 0:cellData.f)||core.isFormulaId(cellData==null?void 0:cellData.si),"match"),isContinue:__name((prev,cur)=>prev.type===sheetsUi.DATA_TYPE.FORMULA,"isContinue"),applyFunctions:{[sheetsUi.APPLY_TYPE.COPY]:(dataWithIndex,len,direction,copyDataPiece)=>{const{data,index}=dataWithIndex;return this._fillCopyFormula(data,len,direction,index,copyDataPiece)}}};this._autoFillService.registerRule(formulaRule)}_fillCopyFormula(data,len,direction,index,copyDataPiece){var _a23,_b;const step=getDataLength(copyDataPiece),applyData=[],formulaIdMap=new Map;for(let i=1;i<=len;i++){const index2=(i-1)%data.length,d=core.Tools.deepClone(data[index2]);if(d){const originalFormula=((_a23=data[index2])==null?void 0:_a23.f)||"",originalFormulaId=((_b=data[index2])==null?void 0:_b.si)||"",checkFormula=core.isFormulaString(originalFormula);if(core.isFormulaId(originalFormulaId))d.si=originalFormulaId,d.f=null,d.v=null,d.p=null,d.t=null,direction===core.Direction.DOWN||direction===core.Direction.RIGHT?applyData.push(d):applyData.unshift(d);else if(checkFormula){let formulaId=formulaIdMap.get(index2);if(formulaId)d.si=formulaId,d.f=null,d.v=null,d.p=null,d.t=null;else{formulaId=core.Tools.generateRandomId(6),formulaIdMap.set(index2,formulaId);const{offsetX,offsetY}=directionToOffset(step,direction),shiftedFormula=this._lexerTreeBuilder.moveFormulaRefOffset(originalFormula,offsetX,offsetY);d.si=formulaId,d.f=shiftedFormula,d.v=null,d.p=null,d.t=null}direction===core.Direction.DOWN||direction===core.Direction.RIGHT?applyData.push(d):applyData.unshift(d)}}}return applyData}},__name(_a3,"FormulaAutoFillController"),_a3);FormulaAutoFillController=__decorateClass$h([core.OnLifecycle(core.LifecycleStages.Ready,FormulaAutoFillController),__decorateParam$h(0,sheetsUi.IAutoFillService),__decorateParam$h(1,core.Inject(engineFormula.LexerTreeBuilder))],FormulaAutoFillController);function directionToOffset(step,direction){let offsetX=0,offsetY=0;switch(direction){case core.Direction.UP:offsetY=-step;break;case core.Direction.RIGHT:offsetX=step;break;case core.Direction.DOWN:offsetY=step;break;case core.Direction.LEFT:offsetX=-step;break}return{offsetX,offsetY}}__name(directionToOffset,"directionToOffset");function getDataLength(copyDataPiece){let length=0;for(const t in copyDataPiece)copyDataPiece[t].forEach(item=>{length+=item.data.length});return length}__name(getDataLength,"getDataLength");var __defProp$g=Object.defineProperty,__getOwnPropDesc$g=Object.getOwnPropertyDescriptor,__decorateClass$g=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$g(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$g(target,key,result),result},"__decorateClass$g"),__decorateParam$g=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$g");const DEFAULT_PASTE_FORMULA="default-paste-formula";var _a4;let FormulaClipboardController=(_a4=class extends core.Disposable{constructor(_currentUniverSheet,_lexerTreeBuilder,_sheetClipboardService,_injector,_formulaDataModel){super(),this._currentUniverSheet=_currentUniverSheet,this._lexerTreeBuilder=_lexerTreeBuilder,this._sheetClipboardService=_sheetClipboardService,this._injector=_injector,this._formulaDataModel=_formulaDataModel,this._initialize()}_initialize(){this._registerClipboardHook()}_registerClipboardHook(){this.disposeWithMe(this._sheetClipboardService.addClipboardHook(this._pasteFormulaHook())),this.disposeWithMe(this._sheetClipboardService.addClipboardHook(this._pasteWithFormulaHook()))}_pasteFormulaHook(){return{id:sheetsUi.PREDEFINED_HOOK_NAME.SPECIAL_PASTE_FORMULA,priority:10,specialPasteInfo:{label:"specialPaste.formula"},onPasteCells:__name((pasteFrom,pasteTo,data,payload)=>this._onPasteCells(pasteFrom,pasteTo,data,payload,!0),"onPasteCells")}}_pasteWithFormulaHook(){return{id:DEFAULT_PASTE_FORMULA,priority:10,onPasteCells:__name((pasteFrom,pasteTo,data,payload)=>this._onPasteCells(pasteFrom,pasteTo,data,payload,!1),"onPasteCells")}}_onPasteCells(pasteFrom,pasteTo,data,payload,isSpecialPaste){var _a23;if([sheetsUi.PREDEFINED_HOOK_NAME.SPECIAL_PASTE_FORMAT,sheetsUi.PREDEFINED_HOOK_NAME.SPECIAL_PASTE_COL_WIDTH].includes(payload.pasteType))return{undos:[],redos:[]};const workbook=this._currentUniverSheet.getCurrentUnitForType(core.UniverInstanceType.UNIVER_SHEET),unitId=pasteTo.unitId||workbook.getUnitId(),subUnitId=pasteTo.subUnitId||((_a23=workbook.getActiveSheet())==null?void 0:_a23.getSheetId());if(!unitId||!subUnitId)return{undos:[],redos:[]};const pastedRange=pasteTo.range,matrix=data,copyInfo={copyType:payload.copyType||sheetsUi.COPY_TYPE.COPY,copyRange:pasteFrom==null?void 0:pasteFrom.range,pasteType:payload.pasteType};return this._injector.invoke(accessor=>getSetCellFormulaMutations(unitId,subUnitId,pastedRange,matrix,accessor,copyInfo,this._lexerTreeBuilder,this._formulaDataModel,isSpecialPaste,pasteFrom))}},__name(_a4,"FormulaClipboardController"),_a4);FormulaClipboardController=__decorateClass$g([core.OnLifecycle(core.LifecycleStages.Ready,FormulaClipboardController),__decorateParam$g(0,core.IUniverInstanceService),__decorateParam$g(1,core.Inject(engineFormula.LexerTreeBuilder)),__decorateParam$g(2,sheetsUi.ISheetClipboardService),__decorateParam$g(3,core.Inject(core.Injector)),__decorateParam$g(4,core.Inject(engineFormula.FormulaDataModel))],FormulaClipboardController);function getSetCellFormulaMutations(unitId,subUnitId,range,matrix,accessor,copyInfo,lexerTreeBuilder,formulaDataModel,isSpecialPaste=!1,pasteFrom){const redoMutationsInfo=[],undoMutationsInfo=[],valueMatrix=getValueMatrix(unitId,subUnitId,range,matrix,copyInfo,lexerTreeBuilder,formulaDataModel,pasteFrom),setValuesMutation={unitId,subUnitId,cellValue:valueMatrix.getData()};redoMutationsInfo.push({id:sheets.SetRangeValuesMutation.id,params:setValuesMutation});const undoSetValuesMutation=sheets.SetRangeValuesUndoMutationFactory(accessor,setValuesMutation);return undoMutationsInfo.push({id:sheets.SetRangeValuesMutation.id,params:undoSetValuesMutation}),{undos:undoMutationsInfo,redos:redoMutationsInfo}}__name(getSetCellFormulaMutations,"getSetCellFormulaMutations");function getValueMatrix(unitId,subUnitId,range,matrix,copyInfo,lexerTreeBuilder,formulaDataModel,pasteFrom){return pasteFrom?copyInfo.pasteType===sheetsUi.PREDEFINED_HOOK_NAME.SPECIAL_PASTE_VALUE?getSpecialPasteValueValueMatrix(unitId,subUnitId,range,matrix,formulaDataModel,pasteFrom):copyInfo.pasteType===sheetsUi.PREDEFINED_HOOK_NAME.SPECIAL_PASTE_FORMULA?getSpecialPasteFormulaValueMatrix(unitId,subUnitId,range,matrix,lexerTreeBuilder,formulaDataModel,pasteFrom):getDefaultPasteValueMatrix(unitId,subUnitId,range,matrix,lexerTreeBuilder,formulaDataModel,pasteFrom):getValueMatrixOfPasteFromIsNull(unitId,subUnitId,range,matrix,formulaDataModel)}__name(getValueMatrix,"getValueMatrix");function getValueMatrixOfPasteFromIsNull(unitId,subUnitId,range,matrix,formulaDataModel){var _a23,_b;const valueMatrix=new core.ObjectMatrix,formulaData=(_b=(_a23=formulaDataModel.getFormulaData())==null?void 0:_a23[unitId])==null?void 0:_b[subUnitId];return matrix.forValue((row,col,value)=>{var _a24;const toRow=range.rows[row],toCol=range.cols[col],valueObject={};core.isFormulaString(value.v)?(valueObject.v=null,valueObject.f=`${value.v}`,valueObject.si=null,valueObject.p=null,valueMatrix.setValue(toRow,toCol,valueObject)):(_a24=formulaData==null?void 0:formulaData[toRow])!=null&&_a24[toCol]&&(valueObject.v=value.v,valueObject.f=null,valueObject.si=null,valueObject.p=null,valueMatrix.setValue(toRow,toCol,valueObject))}),valueMatrix}__name(getValueMatrixOfPasteFromIsNull,"getValueMatrixOfPasteFromIsNull");function getSpecialPasteValueValueMatrix(unitId,subUnitId,range,matrix,formulaDataModel,pasteFrom){var _a23,_b,_c,_d;const valueMatrix=new core.ObjectMatrix,arrayFormulaCellData=(_b=(_a23=formulaDataModel.getArrayFormulaCellData())==null?void 0:_a23[pasteFrom.unitId])==null?void 0:_b[pasteFrom.subUnitId],formulaData=(_d=(_c=formulaDataModel.getFormulaData())==null?void 0:_c[unitId])==null?void 0:_d[subUnitId];return matrix.forValue((row,col,value)=>{var _a24,_b2;const fromRow=pasteFrom.range.rows[row%pasteFrom.range.rows.length],fromCol=pasteFrom.range.cols[col%pasteFrom.range.cols.length],toRow=range.rows[row],toCol=range.cols[col],valueObject={};if(core.isFormulaString(value.f)||core.isFormulaId(value.si))valueObject.v=value.v,valueObject.f=null,valueObject.si=null,valueObject.p=null,valueMatrix.setValue(toRow,toCol,valueObject);else if((_a24=arrayFormulaCellData==null?void 0:arrayFormulaCellData[fromRow])!=null&&_a24[fromCol]){const cell=arrayFormulaCellData[fromRow][fromCol];valueObject.v=cell.v,valueObject.f=null,valueObject.si=null,valueObject.p=null,valueMatrix.setValue(toRow,toCol,valueObject)}else if((_b2=formulaData==null?void 0:formulaData[toRow])!=null&&_b2[toCol]){if(valueObject.v=value.v,valueObject.f=null,valueObject.si=null,valueObject.p=null,value.p){const richText=getCellRichText(value);richText&&(valueObject.v=richText)}valueMatrix.setValue(toRow,toCol,valueObject)}}),valueMatrix}__name(getSpecialPasteValueValueMatrix,"getSpecialPasteValueValueMatrix");function getSpecialPasteFormulaValueMatrix(unitId,subUnitId,range,matrix,lexerTreeBuilder,formulaDataModel,pasteFrom){const valueMatrix=new core.ObjectMatrix,formulaIdMap=new Map;return matrix.forValue((row,col,value)=>{const toRow=range.rows[row],toCol=range.cols[col],valueObject={};if(core.isFormulaId(value.si)){if(pasteFrom.unitId!==unitId||pasteFrom.subUnitId!==subUnitId){const formulaString=formulaDataModel.getFormulaStringByCell(pasteFrom.range.rows[row%pasteFrom.range.rows.length],pasteFrom.range.cols[col%pasteFrom.range.cols.length],pasteFrom.subUnitId,pasteFrom.unitId),offsetX=range.cols[col]-pasteFrom.range.cols[col%pasteFrom.range.cols.length],offsetY=range.rows[row]-pasteFrom.range.rows[row%pasteFrom.range.rows.length],shiftedFormula=lexerTreeBuilder.moveFormulaRefOffset(formulaString||"",offsetX,offsetY);valueObject.si=null,valueObject.f=shiftedFormula}else valueObject.si=value.si,valueObject.f=null;valueObject.v=null,valueObject.p=null,valueMatrix.setValue(toRow,toCol,valueObject)}else if(core.isFormulaString(value.f)){const index=`${row%pasteFrom.range.rows.length}_${col%pasteFrom.range.cols.length}`;let formulaId=formulaIdMap.get(index);if(formulaId)valueObject.si=formulaId,valueObject.f=null;else{formulaId=core.Tools.generateRandomId(6),formulaIdMap.set(index,formulaId);const offsetX=range.cols[col]-pasteFrom.range.cols[col%pasteFrom.range.cols.length],offsetY=range.rows[row]-pasteFrom.range.rows[row%pasteFrom.range.rows.length],shiftedFormula=lexerTreeBuilder.moveFormulaRefOffset(value.f||"",offsetX,offsetY);valueObject.si=formulaId,valueObject.f=shiftedFormula}valueObject.v=null,valueObject.p=null,valueMatrix.setValue(toRow,toCol,valueObject)}else{if(valueObject.v=value.v,valueObject.f=null,valueObject.si=null,valueObject.p=null,value.p){const richText=getCellRichText(value);richText&&(valueObject.v=richText)}valueMatrix.setValue(toRow,toCol,valueObject)}}),valueMatrix}__name(getSpecialPasteFormulaValueMatrix,"getSpecialPasteFormulaValueMatrix");function getDefaultPasteValueMatrix(unitId,subUnitId,range,matrix,lexerTreeBuilder,formulaDataModel,pasteFrom){var _a23,_b;const valueMatrix=new core.ObjectMatrix,formulaIdMap=new Map,formulaData=(_b=(_a23=formulaDataModel.getFormulaData())==null?void 0:_a23[unitId])==null?void 0:_b[subUnitId];return matrix.forValue((row,col,value)=>{var _a24;const toRow=range.rows[row],toCol=range.cols[col],valueObject={};if(core.isFormulaId(value.si)){if(pasteFrom.unitId!==unitId||pasteFrom.subUnitId!==subUnitId){const formulaString=formulaDataModel.getFormulaStringByCell(pasteFrom.range.rows[row%pasteFrom.range.rows.length],pasteFrom.range.cols[col%pasteFrom.range.cols.length],pasteFrom.subUnitId,pasteFrom.unitId),offsetX=range.cols[col]-pasteFrom.range.cols[col%pasteFrom.range.cols.length],offsetY=range.rows[row]-pasteFrom.range.rows[row%pasteFrom.range.rows.length],shiftedFormula=lexerTreeBuilder.moveFormulaRefOffset(formulaString||"",offsetX,offsetY);valueObject.si=null,valueObject.f=shiftedFormula}else valueObject.si=value.si,valueObject.f=null;valueObject.v=null,valueObject.p=null,valueMatrix.setValue(toRow,toCol,valueObject)}else if(core.isFormulaString(value.f)){const index=`${row%pasteFrom.range.rows.length}_${col%pasteFrom.range.cols.length}`;let formulaId=formulaIdMap.get(index);if(formulaId)valueObject.si=formulaId,valueObject.f=null;else{formulaId=core.Tools.generateRandomId(6),formulaIdMap.set(index,formulaId);const offsetX=range.cols[col]-pasteFrom.range.cols[col%pasteFrom.range.cols.length],offsetY=range.rows[row]-pasteFrom.range.rows[row%pasteFrom.range.rows.length],shiftedFormula=lexerTreeBuilder.moveFormulaRefOffset(value.f||"",offsetX,offsetY);valueObject.si=formulaId,valueObject.f=shiftedFormula}valueObject.v=null,valueObject.p=null,valueMatrix.setValue(toRow,toCol,valueObject)}else(_a24=formulaData==null?void 0:formulaData[toRow])!=null&&_a24[toCol]&&(valueObject.v=value.v,valueObject.f=null,valueObject.si=null,valueObject.p=value.p,valueMatrix.setValue(toRow,toCol,valueObject))}),valueMatrix}__name(getDefaultPasteValueMatrix,"getDefaultPasteValueMatrix");function getCellRichText(cell){if(cell!=null&&cell.p){const body=cell==null?void 0:cell.p.body;if(body==null)return;const data=body.dataStream;return data.substring(data.length-2,data.length)===core.DEFAULT_EMPTY_DOCUMENT_VALUE?data.substring(0,data.length-2):data}}__name(getCellRichText,"getCellRichText");var __defProp$f=Object.defineProperty,__getOwnPropDesc$f=Object.getOwnPropertyDescriptor,__decorateClass$f=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$f(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$f(target,key,result),result},"__decorateClass$f"),__decorateParam$f=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$f");const REFRESH_ARRAY_SHAPE_MUTATIONS=[sheets.SetWorksheetRowHeightMutation.id,sheets.SetWorksheetColWidthMutation.id,sheets.SetColHiddenMutation.id,sheets.SetColVisibleMutation.id,sheets.SetRowHiddenMutation.id,sheets.SetRowVisibleMutation.id];var _a5;let FormulaEditorShowController=(_a5=class extends core.Disposable{constructor(_context,_editorBridgeService,_formulaDataModel,_themeService,_renderManagerService,_sheetSkeletonManagerService,_commandService,_logService){super();__publicField(this,"_previousShape");__publicField(this,"_skeleton");this._context=_context,this._editorBridgeService=_editorBridgeService,this._formulaDataModel=_formulaDataModel,this._themeService=_themeService,this._renderManagerService=_renderManagerService,this._sheetSkeletonManagerService=_sheetSkeletonManagerService,this._commandService=_commandService,this._logService=_logService,this._initSkeletonChangeListener(),this._initInterceptorEditorStart(),this._commandExecutedListener()}_initSkeletonChangeListener(){this.disposeWithMe(this._sheetSkeletonManagerService.currentSkeleton$.subscribe(param=>{var _a23,_b;if(param==null)this._logService.debug("[FormulaEditorShowController]: should not receive currentSkeleton$ as null!");else{const{skeleton}=param,prevSheetId=(_b=(_a23=this._skeleton)==null?void 0:_a23.worksheet)==null?void 0:_b.getSheetId();this._changeRuntime(skeleton),prevSheetId!==skeleton.worksheet.getSheetId()&&this._removeArrayFormulaRangeShape()}}))}_changeRuntime(skeleton){this._skeleton=skeleton}_initInterceptorEditorStart(){this.disposeWithMe(core.toDisposable(this._editorBridgeService.interceptor.intercept(this._editorBridgeService.interceptor.getInterceptPoints().BEFORE_CELL_EDIT,{handler:__name((value,context,next)=>{var _a23,_b,_c,_d;const{row,col,unitId,subUnitId,worksheet}=context,arrayFormulaMatrixRange=this._formulaDataModel.getArrayFormulaRange(),arrayFormulaMatrixCell=this._formulaDataModel.getArrayFormulaCellData();if(this._removeArrayFormulaRangeShape(),value==null)return next(value);let cellInfo=null;const formulaString=this._formulaDataModel.getFormulaStringByCell(row,col,subUnitId,unitId);if(formulaString!==null&&(cellInfo={f:formulaString}),value.v!=null&&value.v!==""&&((_c=(_b=(_a23=arrayFormulaMatrixCell[unitId])==null?void 0:_a23[subUnitId])==null?void 0:_b[row])==null?void 0:_c[col])==null)return cellInfo?{...value,...cellInfo}:next(value);const matrixRange=(_d=arrayFormulaMatrixRange==null?void 0:arrayFormulaMatrixRange[unitId])==null?void 0:_d[subUnitId];return matrixRange!=null&&(cellInfo=this._displayArrayFormulaRangeShape(matrixRange,row,col,unitId,subUnitId,worksheet,cellInfo)),cellInfo?{...value,...cellInfo}:next(value)},"handler")})))}_commandExecutedListener(){this.disposeWithMe(this._commandService.onCommandExecuted((command,options)=>{(command.id===engineFormula.SetFormulaCalculationResultMutation.id||command.id===engineFormula.SetArrayFormulaDataMutation.id&&options&&options.remove)&&this._removeArrayFormulaRangeShape()})),this.disposeWithMe(this._commandService.beforeCommandExecuted(command=>{sheets.SetWorksheetRowAutoHeightMutation.id===command.id&&requestIdleCallback(()=>{const params=command.params,{unitId,subUnitId,rowsAutoHeightInfo}=params;this._refreshArrayFormulaRangeShapeByRow(unitId,subUnitId,rowsAutoHeightInfo)}),REFRESH_ARRAY_SHAPE_MUTATIONS.includes(command.id)&&requestIdleCallback(()=>{const params=command.params,{unitId,subUnitId,ranges}=params;this._refreshArrayFormulaRangeShapeByRanges(unitId,subUnitId,ranges)})}))}_displayArrayFormulaRangeShape(matrixRange,row,col,unitId,subUnitId,worksheet,cellInfo){return new core.ObjectMatrix(matrixRange).forValue((rowIndex,columnIndex,range)=>{if(range==null)return!0;const{startRow,startColumn,endRow,endColumn}=range;if(rowIndex===row&&columnIndex===col)return this._createArrayFormulaRangeShape(range,unitId),!1;if(row>=startRow&&row<=endRow&&col>=startColumn&&col<=endColumn){const mainCellValue=worksheet.getCell(startRow,startColumn);if((mainCellValue==null?void 0:mainCellValue.v)===engineFormula.ErrorType.SPILL)return;const formulaDataItem=this._formulaDataModel.getFormulaDataItem(rowIndex,columnIndex,subUnitId,unitId);return formulaDataItem==null||formulaDataItem.f==null?!0:(cellInfo==null&&(cellInfo={f:formulaDataItem.f,isInArrayFormulaRange:!0}),this._createArrayFormulaRangeShape(range,unitId),!1)}}),cellInfo}_createArrayFormulaRangeShape(arrayRange,unitId){const styleSheet=this._themeService.getCurrentTheme(),fill=new core.ColorKit(styleSheet.colorWhite).setAlpha(0).toString(),style={strokeWidth:1,stroke:styleSheet.hyacinth700,fill,widgets:{},hasAutoFill:!1,hasRowHeader:!1,hasColumnHeader:!1},renderUnit=this._renderManagerService.getRenderById(unitId);if(!renderUnit)return;const{scene}=renderUnit,{rangeWithCoord,primaryWithCoord}=renderUnit.with(sheetsUi.ISheetSelectionRenderService).attachSelectionWithCoord({range:arrayRange,primary:null,style}),skeleton=this._sheetSkeletonManagerService.getCurrentSkeleton();if(!scene||!skeleton)return;const{rowHeaderWidth,columnHeaderHeight}=skeleton,control=new sheetsUi.SelectionShape(scene,sheetsUi.SELECTION_SHAPE_DEPTH.FORMULA_EDITOR_SHOW,this._themeService,!1);control.update(rangeWithCoord,rowHeaderWidth,columnHeaderHeight,style,primaryWithCoord),control.setEvent(!1),this._previousShape=control}_removeArrayFormulaRangeShape(){this._previousShape!=null&&(this._previousShape.dispose(),this._previousShape=null)}_refreshArrayFormulaRangeShape(unitId,range){if(this._previousShape){const{startRow,endRow,startColumn,endColumn}=this._previousShape.getRange(),range2={startRow,endRow,startColumn,endColumn};this._removeArrayFormulaRangeShape(),this._createArrayFormulaRangeShape(range2,unitId)}}_checkCurrentSheet(unitId,subUnitId){const skeleton=this._sheetSkeletonManagerService.getCurrentSkeleton();if(!skeleton)return!1;const worksheet=skeleton.worksheet;return worksheet?worksheet.unitId===unitId&&worksheet.getSheetId()===subUnitId:!1}_refreshArrayFormulaRangeShapeByRanges(unitId,subUnitId,ranges){if(!this._checkCurrentSheet(unitId,subUnitId)||!this._previousShape)return;const{startRow:shapeStartRow,endRow:shapeEndRow,startColumn:shapeStartColumn,endColumn:shapeEndColumn}=this._previousShape.getRange();for(let i=0;i<ranges.length;i++){const range=ranges[i],{startRow,endRow,startColumn,endColumn}=range;if(core.Rectangle.intersects({startRow,endRow,startColumn,endColumn},{startRow:shapeStartRow,endRow:shapeEndRow,startColumn:shapeStartColumn,endColumn:shapeEndColumn})||shapeStartRow>=endRow||startColumn>=endColumn){const shapeRange={startRow:shapeStartRow,endRow:shapeEndRow,startColumn:shapeStartColumn,endColumn:shapeEndColumn};this._refreshArrayFormulaRangeShape(unitId,shapeRange);break}}}_refreshArrayFormulaRangeShapeByRow(unitId,subUnitId,rowAutoHeightInfo){if(!this._checkCurrentSheet(unitId,subUnitId)||!this._previousShape)return;const{startRow:shapeStartRow,endRow:shapeEndRow,startColumn:shapeStartColumn,endColumn:shapeEndColumn}=this._previousShape.getRange();for(let i=0;i<rowAutoHeightInfo.length;i++){const{row}=rowAutoHeightInfo[i];if(shapeStartRow>=row){const shapeRange={startRow:shapeStartRow,endRow:shapeEndRow,startColumn:shapeStartColumn,endColumn:shapeEndColumn};this._refreshArrayFormulaRangeShape(unitId,shapeRange);break}}}},__name(_a5,"FormulaEditorShowController"),_a5);FormulaEditorShowController=__decorateClass$f([__decorateParam$f(1,core.Inject(sheetsUi.IEditorBridgeService)),__decorateParam$f(2,core.Inject(engineFormula.FormulaDataModel)),__decorateParam$f(3,core.Inject(core.ThemeService)),__decorateParam$f(4,engineRender.IRenderManagerService),__decorateParam$f(5,core.Inject(sheetsUi.SheetSkeletonManagerService)),__decorateParam$f(6,core.ICommandService),__decorateParam$f(7,core.ILogService)],FormulaEditorShowController);const SheetOnlyPasteFormulaCommand={id:"sheet.command.paste-formula",type:core.CommandType.COMMAND,handler:__name(async accessor=>accessor.get(core.ICommandService).executeCommand(sheetsUi.SheetPasteCommand.id,{value:sheetsUi.PREDEFINED_HOOK_NAME.SPECIAL_PASTE_FORMULA}),"handler")},InsertFunctionCommand={id:"formula-ui.command.insert-function",type:core.CommandType.COMMAND,handler:__name(async(accessor,params)=>{const{list}=params,commandService=accessor.get(core.ICommandService),cellMatrix=new core.ObjectMatrix;list.forEach(item=>{const{range,primary,formula}=item,{row,column}=primary,formulaId=core.Tools.generateRandomId(6);cellMatrix.setValue(row,column,{f:formula,si:formulaId});const{startRow,startColumn,endRow,endColumn}=range;for(let i=startRow;i<=endRow;i++)for(let j=startColumn;j<=endColumn;j++)(i!==row||j!==column)&&cellMatrix.setValue(i,j,{si:formulaId})});const setRangeValuesParams={value:cellMatrix.getData()};return commandService.executeCommand(sheets.SetRangeValuesCommand.id,setRangeValuesParams)},"handler")},SelectEditorFormulaOperation={id:"formula-ui.operation.select-editor-formula",type:core.CommandType.OPERATION,handler:__name((accessor,params)=>!0,"handler")};var __defProp$e=Object.defineProperty,__getOwnPropDesc$e=Object.getOwnPropertyDescriptor,__decorateClass$e=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$e(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$e(target,key,result),result},"__decorateClass$e"),__decorateParam$e=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$e");const FORMULA_PROMPT_ACTIVATED="FORMULA_PROMPT_ACTIVATED",IFormulaPromptService=core.createIdentifier("formula-ui.prompt-service");var _a6;let FormulaPromptService=(_a6=class{constructor(_contextService){__publicField(this,"_search$",new rxjs.Subject);__publicField(this,"_help$",new rxjs.Subject);__publicField(this,"_navigate$",new rxjs.Subject);__publicField(this,"_accept$",new rxjs.Subject);__publicField(this,"_acceptFormulaName$",new rxjs.Subject);__publicField(this,"search$",this._search$.asObservable());__publicField(this,"help$",this._help$.asObservable());__publicField(this,"navigate$",this._navigate$.asObservable());__publicField(this,"accept$",this._accept$.asObservable());__publicField(this,"acceptFormulaName$",this._acceptFormulaName$.asObservable());__publicField(this,"_searching",!1);__publicField(this,"_helping",!1);__publicField(this,"_sequenceNodes",[]);__publicField(this,"_isLockedOnSelectionChangeRefString",!1);__publicField(this,"_isLockedOnSelectionInsertRefString",!1);this._contextService=_contextService}dispose(){this._search$.complete(),this._help$.complete(),this._navigate$.complete(),this._accept$.complete(),this._acceptFormulaName$.complete(),this._sequenceNodes=[]}search(param){this._contextService.setContextValue(FORMULA_PROMPT_ACTIVATED,param.visible),this._searching=param.visible,this._search$.next(param)}isSearching(){return this._searching}help(param){this._helping=param.visible,this._help$.next(param)}isHelping(){return this._helping}navigate(param){this._navigate$.next(param)}accept(param){this._accept$.next(param)}acceptFormulaName(param){this._acceptFormulaName$.next(param)}getSequenceNodes(){return[...this._sequenceNodes]}setSequenceNodes(nodes){this._sequenceNodes=nodes}clearSequenceNodes(){this._sequenceNodes=[]}getCurrentSequenceNode(strIndex){return this._sequenceNodes[this.getCurrentSequenceNodeIndex(strIndex)]}getCurrentSequenceNodeByIndex(nodeIndex){return this._sequenceNodes[nodeIndex]}getCurrentSequenceNodeIndex(strIndex){let nodeIndex=0;const firstNode=this._sequenceNodes[0];for(let i=0,len=this._sequenceNodes.length;i<len;i++){const node=this._sequenceNodes[i];if(typeof node=="string")nodeIndex++;else{const{endIndex}=node;nodeIndex=endIndex}if(strIndex<=nodeIndex)return typeof firstNode=="string"&&strIndex!==0?i+1:i}return this._sequenceNodes.length}updateSequenceRef(nodeIndex,refString){const node=this._sequenceNodes[nodeIndex];if(typeof node=="string"||node.nodeType!==engineFormula.sequenceNodeType.REFERENCE)return;const difference=refString.length-node.token.length,newNode={...node};newNode.token=refString,newNode.endIndex+=difference,this._sequenceNodes[nodeIndex]=newNode;for(let i=nodeIndex+1,len=this._sequenceNodes.length;i<len;i++){const node2=this._sequenceNodes[i];if(typeof node2=="string")continue;const newNode2={...node2};newNode2.startIndex+=difference,newNode2.endIndex+=difference,this._sequenceNodes[i]=newNode2}}insertSequenceRef(index,refString){const refStringCount=refString.length,nodeIndex=this.getCurrentSequenceNodeIndex(index);this._sequenceNodes.splice(nodeIndex,0,{token:refString,startIndex:index,endIndex:index+refStringCount-1,nodeType:engineFormula.sequenceNodeType.REFERENCE});for(let i=nodeIndex+1,len=this._sequenceNodes.length;i<len;i++){const node=this._sequenceNodes[i];if(typeof node=="string")continue;const newNode={...node};newNode.startIndex+=refStringCount,newNode.endIndex+=refStringCount,this._sequenceNodes[i]=newNode}}insertSequenceString(index,content){const nodeIndex=this.getCurrentSequenceNodeIndex(index),str=content.split("");this._sequenceNodes.splice(nodeIndex,0,...str);const contentCount=str.length;for(let i=nodeIndex+contentCount,len=this._sequenceNodes.length;i<len;i++){const node=this._sequenceNodes[i];if(typeof node=="string")continue;const newNode={...node};newNode.startIndex+=contentCount,newNode.endIndex+=contentCount,this._sequenceNodes[i]=newNode}}enableLockedSelectionChange(){this._isLockedOnSelectionChangeRefString=!0}disableLockedSelectionChange(){this._isLockedOnSelectionChangeRefString=!1}isLockedSelectionChange(){return this._isLockedOnSelectionChangeRefString}enableLockedSelectionInsert(){this._isLockedOnSelectionInsertRefString=!0}disableLockedSelectionInsert(){this._isLockedOnSelectionInsertRefString=!1}isLockedSelectionInsert(){return this._isLockedOnSelectionInsertRefString}},__name(_a6,"FormulaPromptService"),_a6);FormulaPromptService=__decorateClass$e([__decorateParam$e(0,core.IContextService)],FormulaPromptService);const HelpFunctionOperation={id:"formula-ui.operation.help-function",type:core.CommandType.OPERATION,handler:__name(async(accessor,params)=>(accessor.get(IFormulaPromptService).help(params),!0),"handler")},InsertFunctionOperation={id:"formula-ui.operation.insert-function",type:core.CommandType.OPERATION,handler:__name(async(accessor,params)=>{var _a23,_b;const selectionManagerService=accessor.get(sheets.SheetsSelectionsService),editorService=accessor.get(ui.IEditorService),currentSelections=selectionManagerService.getCurrentSelections();if(!currentSelections||!currentSelections.length)return!1;const target=sheets.getSheetCommandTarget(accessor.get(core.IUniverInstanceService));if(!target)return!1;const{worksheet,unitId,subUnitId}=target,cellMatrix=worksheet.getCellMatrix(),{value}=params,commandService=accessor.get(core.ICommandService),list=[];let editRange=null,editRow=0,editColumn=0,editFormulaRangeString="";if(currentSelections.length===1&&(isSingleCell(currentSelections[0].range)||isMultiRowsColumnsRange(currentSelections[0].range))){const{range,primary}=currentSelections[0],row=(_a23=primary==null?void 0:primary.actualRow)!=null?_a23:range.startRow,column=(_b=primary==null?void 0:primary.actualColumn)!=null?_b:range.startColumn;editRange=range,editRow=row,editColumn=column;const refRange=findRefRange(cellMatrix,row,column);refRange&&(editFormulaRangeString=engineFormula.serializeRange(refRange))}else currentSelections.some(selection=>{var _a24,_b2;const{range,primary}=selection,row=(_a24=primary==null?void 0:primary.actualRow)!=null?_a24:range.startRow,column=(_b2=primary==null?void 0:primary.actualColumn)!=null?_b2:range.startColumn,refRange=findRefRange(cellMatrix,row,column);if(!refRange)return editRange=range,editRow=row,editColumn=column,!0;const rangeString=engineFormula.serializeRange(refRange),formulaString=`=${value}(${rangeString})`;return list.push({range,primary:{row,column},formula:formulaString}),!1});if(editRange){const destRange=sheets.getCellAtRowCol(editRow,editColumn,worksheet),resultRange={range:core.Rectangle.clone(editRange),primary:{startRow:destRange.startRow,startColumn:destRange.startColumn,endRow:destRange.endRow,endColumn:destRange.endColumn,actualRow:editRow,actualColumn:editColumn,isMerged:destRange.isMerged,isMergedMainCell:destRange.startRow===editRow&&destRange.startColumn===editColumn}},setSelectionParams={unitId,subUnitId,selections:[resultRange]};await commandService.executeCommand(sheets.SetSelectionsOperation.id,setSelectionParams),setTimeout(()=>{editorService.setFormula(`=${value}(${editFormulaRangeString}`)},0)}return list.length===0?!1:commandService.executeCommand(InsertFunctionCommand.id,{list})},"handler")};function findRefRange(cellMatrix,row,column){const startRow=findStartRow(cellMatrix,row,column);if(startRow!==row)return{startRow,endRow:row-1,startColumn:column,endColumn:column};const startColumn=findStartColumn(cellMatrix,row,column);return startColumn!==column?{startRow:row,endRow:row,startColumn,endColumn:column-1}:null}__name(findRefRange,"findRefRange");function findStartRow(cellMatrix,row,column){let isFirstNumber=!1;if(row===0)return row;for(let r=row-1;r>=0;r--){const cell=cellMatrix.getValue(r,column);if(isNumberCell(cell)&&!isFirstNumber){if(r===0)return 0;isFirstNumber=!0}else{if(isFirstNumber&&!isNumberCell(cell))return r+1;if(isFirstNumber&&r===0)return 0}}return row}__name(findStartRow,"findStartRow");function findStartColumn(cellMatrix,row,column){let isFirstNumber=!1;if(column===0)return column;for(let c=column-1;c>=0;c--){const cell=cellMatrix.getValue(row,c);if(isNumberCell(cell)&&!isFirstNumber){if(c===0)return 0;isFirstNumber=!0}else{if(isFirstNumber&&!isNumberCell(cell))return c+1;if(isFirstNumber&&c===0)return 0}}return column}__name(findStartColumn,"findStartColumn");function isNumberCell(cell){if(cell!=null&&cell.p){const body=cell==null?void 0:cell.p.body;if(body==null)return!1;const data=body.dataStream,newDataStream=data.substring(data.length-2,data.length)===core.DEFAULT_EMPTY_DOCUMENT_VALUE?data.substring(0,data.length-2):data;return core.isRealNum(newDataStream)}return cell&&(cell.t===core.CellValueType.NUMBER||core.getCellValueType(cell)===core.CellValueType.NUMBER)}__name(isNumberCell,"isNumberCell");function isSingleCell(range){return range.startRow===range.endRow&&range.startColumn===range.endColumn}__name(isSingleCell,"isSingleCell");function isMultiRowsColumnsRange(range){return range.startRow!==range.endRow&&range.startColumn!==range.endColumn}__name(isMultiRowsColumnsRange,"isMultiRowsColumnsRange");const MORE_FUNCTIONS_COMPONENT=`${FORMULA_UI_PLUGIN_NAME}_MORE_FUNCTIONS_COMPONENT`,MoreFunctionsOperation={id:"formula-ui.operation.more-functions",type:core.CommandType.OPERATION,handler:__name(async accessor=>(accessor.get(ui.ISidebarService).open({header:{title:"formula.insert.tooltip"},children:{label:MORE_FUNCTIONS_COMPONENT}}),!0),"handler")},ReferenceAbsoluteOperation={id:"formula-ui.operation.change-ref-to-absolute",type:core.CommandType.OPERATION,handler:__name(async accessor=>!0,"handler")},SearchFunctionOperation={id:"formula-ui.operation.search-function",type:core.CommandType.OPERATION,handler:__name(async(accessor,params)=>(accessor.get(IFormulaPromptService).search(params),!0),"handler")};var jsxRuntime={exports:{}},reactJsxRuntime_production_min={};/**
1
+ "use strict";var __defProp=Object.defineProperty;var __defNormalProp=(obj,key,value)=>key in obj?__defProp(obj,key,{enumerable:!0,configurable:!0,writable:!0,value}):obj[key]=value;var __name=(target,value)=>__defProp(target,"name",{value,configurable:!0});var __publicField=(obj,key,value)=>__defNormalProp(obj,typeof key!="symbol"?key+"":key,value);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const core=require("@univerjs/core"),rpc=require("@univerjs/rpc"),engineFormula=require("@univerjs/engine-formula"),engineRender=require("@univerjs/engine-render"),sheets=require("@univerjs/sheets"),sheetsUi=require("@univerjs/sheets-ui"),ui=require("@univerjs/ui"),rxjs=require("rxjs"),docsUi=require("@univerjs/docs-ui"),require$$0=require("react"),design=require("@univerjs/design"),docs=require("@univerjs/docs"),FORMULA_UI_PLUGIN_NAME="SHEET_FORMULA_UI_PLUGIN";var __defProp$j=Object.defineProperty,__getOwnPropDesc$j=Object.getOwnPropertyDescriptor,__decorateClass$j=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$j(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$j(target,key,result),result},"__decorateClass$j"),__decorateParam$j=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$j"),_a;let ActiveDirtyController=(_a=class extends core.Disposable{constructor(_activeDirtyManagerService,_univerInstanceService,_formulaDataModel,_definedNamesService){super(),this._activeDirtyManagerService=_activeDirtyManagerService,this._univerInstanceService=_univerInstanceService,this._formulaDataModel=_formulaDataModel,this._definedNamesService=_definedNamesService,this._initialize()}_initialize(){this._initialConversion()}_initialConversion(){this._activeDirtyManagerService.register(sheets.SetRangeValuesMutation.id,{commandId:sheets.SetRangeValuesMutation.id,getDirtyData:__name(command=>{const params=command.params;return params.trigger===sheets.SetStyleCommand.id?{}:{dirtyRanges:this._getSetRangeValuesMutationDirtyRange(params)}},"getDirtyData")}),this._initialMove(),this._initialRowAndColumn(),this._initialSheet(),this._initialDefinedName()}_initialMove(){this._activeDirtyManagerService.register(sheets.MoveRangeMutation.id,{commandId:sheets.MoveRangeMutation.id,getDirtyData:__name(command=>{const params=command.params;return{dirtyRanges:this._getMoveRangeMutationDirtyRange(params)}},"getDirtyData")}),this._activeDirtyManagerService.register(sheets.MoveRowsMutation.id,{commandId:sheets.MoveRowsMutation.id,getDirtyData:__name(command=>{const params=command.params;return{dirtyRanges:this._getMoveRowsMutationDirtyRange(params)}},"getDirtyData")}),this._activeDirtyManagerService.register(sheets.MoveColsMutation.id,{commandId:sheets.MoveColsMutation.id,getDirtyData:__name(command=>{const params=command.params;return{dirtyRanges:this._getMoveRowsMutationDirtyRange(params)}},"getDirtyData")}),this._activeDirtyManagerService.register(sheets.ReorderRangeMutation.id,{commandId:sheets.ReorderRangeMutation.id,getDirtyData:__name(command=>{const params=command.params;return{dirtyRanges:this._getReorderRangeMutationDirtyRange(params)}},"getDirtyData")})}_initialRowAndColumn(){this._activeDirtyManagerService.register(sheets.RemoveRowMutation.id,{commandId:sheets.RemoveRowMutation.id,getDirtyData:__name(command=>{const params=command.params;return{dirtyRanges:this._getRemoveRowOrColumnMutation(params,!0)}},"getDirtyData")}),this._activeDirtyManagerService.register(sheets.RemoveColMutation.id,{commandId:sheets.RemoveColMutation.id,getDirtyData:__name(command=>{const params=command.params;return{dirtyRanges:this._getRemoveRowOrColumnMutation(params,!1)}},"getDirtyData")})}_initialSheet(){this._activeDirtyManagerService.register(sheets.RemoveSheetMutation.id,{commandId:sheets.RemoveSheetMutation.id,getDirtyData:__name(command=>{const params=command.params;return{dirtyNameMap:this._getRemoveSheetMutation(params)}},"getDirtyData")}),this._activeDirtyManagerService.register(sheets.InsertSheetMutation.id,{commandId:sheets.InsertSheetMutation.id,getDirtyData:__name(command=>{const params=command.params;return{dirtyNameMap:this._getInsertSheetMutation(params)}},"getDirtyData")})}_initialDefinedName(){this._activeDirtyManagerService.register(engineFormula.SetDefinedNameMutation.id,{commandId:engineFormula.SetDefinedNameMutation.id,getDirtyData:__name(command=>{const params=command.params;return{dirtyDefinedNameMap:this._getDefinedNameMutation(params)}},"getDirtyData")}),this._activeDirtyManagerService.register(engineFormula.RemoveDefinedNameMutation.id,{commandId:engineFormula.RemoveDefinedNameMutation.id,getDirtyData:__name(command=>{const params=command.params;return{dirtyDefinedNameMap:this._getDefinedNameMutation(params)}},"getDirtyData")}),this._activeDirtyManagerService.register(sheets.SetDefinedNameCommand.id,{commandId:sheets.SetDefinedNameCommand.id,getDirtyData:__name(command=>{const params=command.params,{oldDefinedName,newDefinedName}=params;return{dirtyDefinedNameMap:this._getDefinedNameMutation({...newDefinedName,name:oldDefinedName.name})}},"getDirtyData")})}_getDefinedNameMutation(definedName){const{unitId,name,formulaOrRefString}=definedName,result={};return definedName==null?{}:(result[unitId]={},result[unitId][name]=formulaOrRefString,result)}_getSetRangeValuesMutationDirtyRange(params){const{subUnitId:sheetId,unitId,cellValue}=params,dirtyRanges=[];return cellValue==null||(dirtyRanges.push(...this._getDirtyRangesByCellValue(unitId,sheetId,cellValue)),dirtyRanges.push(...this._getDirtyRangesForArrayFormula(unitId,sheetId,cellValue))),dirtyRanges}_getMoveRangeMutationDirtyRange(params){const{unitId,from,to}=params,dirtyRanges=[];return dirtyRanges.push(...this._getDirtyRangesByCellValue(unitId,from.subUnitId,from.value)),dirtyRanges.push(...this._getDirtyRangesByCellValue(unitId,to.subUnitId,to.value)),dirtyRanges.push(...this._getDirtyRangesForArrayFormula(unitId,to.subUnitId,to.value)),dirtyRanges}_getMoveRowsMutationDirtyRange(params){const{subUnitId:sheetId,unitId,sourceRange,targetRange}=params,dirtyRanges=[],sourceMatrix=this._rangeToMatrix(sourceRange).getData(),targetMatrix=this._rangeToMatrix(targetRange).getData();return dirtyRanges.push(...this._getDirtyRangesByCellValue(unitId,sheetId,sourceMatrix)),dirtyRanges.push(...this._getDirtyRangesByCellValue(unitId,sheetId,targetMatrix)),dirtyRanges.push(...this._getDirtyRangesForArrayFormula(unitId,sheetId,targetMatrix)),dirtyRanges}_getReorderRangeMutationDirtyRange(params){const{unitId,subUnitId:sheetId,range}=params,matrix=this._rangeToMatrix(range).getData(),dirtyRanges=[];return dirtyRanges.push(...this._getDirtyRangesByCellValue(unitId,sheetId,matrix)),dirtyRanges.push(...this._getDirtyRangesForArrayFormula(unitId,sheetId,matrix)),dirtyRanges}_getDeleteRangeMutationDirtyRange(params){const{subUnitId:sheetId,unitId,range,shiftDimension}=params,dirtyRanges=[],workbook=this._univerInstanceService.getUniverSheetInstance(unitId),worksheet=workbook==null?void 0:workbook.getSheetBySheetId(sheetId),lastEndRow=(worksheet==null?void 0:worksheet.getLastRowWithContent())||0,lastEndColumn=(worksheet==null?void 0:worksheet.getLastColumnWithContent())||0,matrix=new core.ObjectMatrix;let newMatrix=null;const{startRow,startColumn,endRow,endColumn}=range;shiftDimension===core.Dimension.ROWS?newMatrix=this._rangeToMatrix({startRow,startColumn,endRow:lastEndRow,endColumn}):shiftDimension===core.Dimension.COLUMNS&&(newMatrix=this._rangeToMatrix({startRow,startColumn,endRow,endColumn:lastEndColumn})),newMatrix!=null&&matrix.merge(newMatrix);const matrixData=matrix.getData();return dirtyRanges.push(...this._getDirtyRangesByCellValue(unitId,sheetId,matrixData)),dirtyRanges.push(...this._getDirtyRangesForArrayFormula(unitId,sheetId,matrixData)),dirtyRanges}_getRemoveRowOrColumnMutation(params,isRow=!0){const{subUnitId:sheetId,unitId,range}=params,dirtyRanges=[],workbook=this._univerInstanceService.getUniverSheetInstance(unitId),worksheet=workbook==null?void 0:workbook.getSheetBySheetId(sheetId),rowCount=(worksheet==null?void 0:worksheet.getRowCount())||0,columnCount=(worksheet==null?void 0:worksheet.getColumnCount())||0,matrix=new core.ObjectMatrix;let newMatrix=null;const{startRow,endRow,startColumn,endColumn}=range;isRow===!0?newMatrix=this._rangeToMatrix({startRow,startColumn:0,endRow,endColumn:columnCount-1}):newMatrix=this._rangeToMatrix({startRow:0,startColumn,endRow:rowCount,endColumn}),newMatrix!=null&&matrix.merge(newMatrix);const matrixData=matrix.getData();return dirtyRanges.push(...this._getDirtyRangesByCellValue(unitId,sheetId,matrixData)),dirtyRanges.push(...this._getDirtyRangesForArrayFormula(unitId,sheetId,matrixData)),dirtyRanges}_getRemoveSheetMutation(params){const dirtyNameMap={},{subUnitId:sheetId,unitId,subUnitName}=params;return dirtyNameMap[unitId]==null&&(dirtyNameMap[unitId]={}),dirtyNameMap[unitId][sheetId]=subUnitName,dirtyNameMap}_getInsertSheetMutation(params){const dirtyNameMap={},{sheet,unitId}=params;return dirtyNameMap[unitId]==null&&(dirtyNameMap[unitId]={}),dirtyNameMap[unitId][sheet.id]=sheet.name,dirtyNameMap}_rangeToMatrix(range){const matrix=new core.ObjectMatrix,{startRow,startColumn,endRow,endColumn}=range;for(let r=startRow;r<=endRow;r++)for(let c=startColumn;c<=endColumn;c++)matrix.setValue(r,c,{});return matrix}_getDirtyRangesByCellValue(unitId,sheetId,cellValue){const dirtyRanges=[];return cellValue==null||new core.ObjectMatrix(cellValue).getDiscreteRanges().forEach(range=>{dirtyRanges.push({unitId,sheetId,range})}),dirtyRanges}_getDirtyRangesForArrayFormula(unitId,sheetId,cellValue){var _a23,_b;const dirtyRanges=[];if(cellValue==null)return dirtyRanges;const cellMatrix=new core.ObjectMatrix(cellValue),arrayFormulaRange=this._formulaDataModel.getArrayFormulaRange();if((_a23=arrayFormulaRange==null?void 0:arrayFormulaRange[unitId])!=null&&_a23[sheetId]){const cellRangeData=new core.ObjectMatrix((_b=arrayFormulaRange==null?void 0:arrayFormulaRange[unitId])==null?void 0:_b[sheetId]);cellMatrix.forValue((row,column)=>{cellRangeData.forValue((arrayFormulaRow,arrayFormulaColumn,arrayFormulaRange2)=>{if(arrayFormulaRange2==null)return!0;const{startRow,startColumn,endRow,endColumn}=arrayFormulaRange2;row>=startRow&&row<=endRow&&column>=startColumn&&column<=endColumn&&dirtyRanges.push({unitId,sheetId,range:{startRow,startColumn,endRow:startRow,endColumn:startColumn}})})})}return dirtyRanges}},__name(_a,"ActiveDirtyController"),_a);ActiveDirtyController=__decorateClass$j([core.OnLifecycle(core.LifecycleStages.Ready,ActiveDirtyController),__decorateParam$j(0,engineFormula.IActiveDirtyManagerService),__decorateParam$j(1,core.IUniverInstanceService),__decorateParam$j(2,core.Inject(engineFormula.FormulaDataModel)),__decorateParam$j(3,engineFormula.IDefinedNamesService)],ActiveDirtyController);var __defProp$i=Object.defineProperty,__getOwnPropDesc$i=Object.getOwnPropertyDescriptor,__decorateClass$i=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$i(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$i(target,key,result),result},"__decorateClass$i"),__decorateParam$i=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$i"),_a2;let ArrayFormulaDisplayController=(_a2=class extends core.Disposable{constructor(_commandService,_sheetInterceptorService,_formulaDataModel,_themeService){super(),this._commandService=_commandService,this._sheetInterceptorService=_sheetInterceptorService,this._formulaDataModel=_formulaDataModel,this._themeService=_themeService,this._initialize()}_initialize(){this._commandExecutedListener(),this._initInterceptorCellContent()}_commandExecutedListener(){this.disposeWithMe(this._commandService.onCommandExecuted(command=>{if(command.id!==engineFormula.SetArrayFormulaDataMutation.id)return;const params=command.params;if(params==null)return;const{arrayFormulaRange,arrayFormulaCellData}=params;this._formulaDataModel.setArrayFormulaRange(arrayFormulaRange),this._formulaDataModel.setArrayFormulaCellData(arrayFormulaCellData)}))}_initInterceptorCellContent(){this.disposeWithMe(this._sheetInterceptorService.intercept(sheets.INTERCEPTOR_POINT.CELL_CONTENT,{priority:100,effect:core.InterceptorEffectEnum.Value,handler:__name((cell,location,next)=>{var _a23,_b,_c;const{unitId,subUnitId,row,col}=location,arrayFormulaCellData=this._formulaDataModel.getArrayFormulaCellData(),cellData=(_c=(_b=(_a23=arrayFormulaCellData==null?void 0:arrayFormulaCellData[unitId])==null?void 0:_a23[subUnitId])==null?void 0:_b[row])==null?void 0:_c[col];return cellData==null?next(cell):cellData.v==null&&cellData.t==null?next({...cell,v:0,t:core.CellValueType.NUMBER}):(cell==null?void 0:cell.t)===core.CellValueType.NUMBER&&typeof(cell==null?void 0:cell.v)=="number"?next({...cell,v:engineFormula.stripErrorMargin(cell.v)}):next({...cell,v:cellData.v,t:cellData.t})},"handler")}))}},__name(_a2,"ArrayFormulaDisplayController"),_a2);ArrayFormulaDisplayController=__decorateClass$i([core.OnLifecycle(core.LifecycleStages.Ready,ArrayFormulaDisplayController),__decorateParam$i(0,core.ICommandService),__decorateParam$i(1,core.Inject(sheets.SheetInterceptorService)),__decorateParam$i(2,core.Inject(engineFormula.FormulaDataModel)),__decorateParam$i(3,core.Inject(core.ThemeService))],ArrayFormulaDisplayController);var __defProp$h=Object.defineProperty,__getOwnPropDesc$h=Object.getOwnPropertyDescriptor,__decorateClass$h=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$h(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$h(target,key,result),result},"__decorateClass$h"),__decorateParam$h=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$h"),_a3;let FormulaAutoFillController=(_a3=class extends core.Disposable{constructor(_autoFillService,_lexerTreeBuilder){super(),this._autoFillService=_autoFillService,this._lexerTreeBuilder=_lexerTreeBuilder,this._initialize()}_initialize(){this._registerAutoFill()}_registerAutoFill(){const formulaRule={type:sheetsUi.DATA_TYPE.FORMULA,priority:1001,match:__name(cellData=>core.isFormulaString(cellData==null?void 0:cellData.f)||core.isFormulaId(cellData==null?void 0:cellData.si),"match"),isContinue:__name((prev,cur)=>prev.type===sheetsUi.DATA_TYPE.FORMULA,"isContinue"),applyFunctions:{[sheetsUi.APPLY_TYPE.COPY]:(dataWithIndex,len,direction,copyDataPiece)=>{const{data,index}=dataWithIndex;return this._fillCopyFormula(data,len,direction,index,copyDataPiece)}}};this._autoFillService.registerRule(formulaRule)}_fillCopyFormula(data,len,direction,index,copyDataPiece){var _a23,_b;const step=getDataLength(copyDataPiece),applyData=[],formulaIdMap=new Map;for(let i=1;i<=len;i++){const index2=(i-1)%data.length,d=core.Tools.deepClone(data[index2]);if(d){const originalFormula=((_a23=data[index2])==null?void 0:_a23.f)||"",originalFormulaId=((_b=data[index2])==null?void 0:_b.si)||"",checkFormula=core.isFormulaString(originalFormula);if(core.isFormulaId(originalFormulaId))d.si=originalFormulaId,d.f=null,d.v=null,d.p=null,d.t=null,direction===core.Direction.DOWN||direction===core.Direction.RIGHT?applyData.push(d):applyData.unshift(d);else if(checkFormula){let formulaId=formulaIdMap.get(index2);if(formulaId)d.si=formulaId,d.f=null,d.v=null,d.p=null,d.t=null;else{formulaId=core.Tools.generateRandomId(6),formulaIdMap.set(index2,formulaId);const{offsetX,offsetY}=directionToOffset(step,direction),shiftedFormula=this._lexerTreeBuilder.moveFormulaRefOffset(originalFormula,offsetX,offsetY);d.si=formulaId,d.f=shiftedFormula,d.v=null,d.p=null,d.t=null}direction===core.Direction.DOWN||direction===core.Direction.RIGHT?applyData.push(d):applyData.unshift(d)}}}return applyData}},__name(_a3,"FormulaAutoFillController"),_a3);FormulaAutoFillController=__decorateClass$h([core.OnLifecycle(core.LifecycleStages.Ready,FormulaAutoFillController),__decorateParam$h(0,sheetsUi.IAutoFillService),__decorateParam$h(1,core.Inject(engineFormula.LexerTreeBuilder))],FormulaAutoFillController);function directionToOffset(step,direction){let offsetX=0,offsetY=0;switch(direction){case core.Direction.UP:offsetY=-step;break;case core.Direction.RIGHT:offsetX=step;break;case core.Direction.DOWN:offsetY=step;break;case core.Direction.LEFT:offsetX=-step;break}return{offsetX,offsetY}}__name(directionToOffset,"directionToOffset");function getDataLength(copyDataPiece){let length=0;for(const t in copyDataPiece)copyDataPiece[t].forEach(item=>{length+=item.data.length});return length}__name(getDataLength,"getDataLength");var __defProp$g=Object.defineProperty,__getOwnPropDesc$g=Object.getOwnPropertyDescriptor,__decorateClass$g=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$g(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$g(target,key,result),result},"__decorateClass$g"),__decorateParam$g=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$g");const DEFAULT_PASTE_FORMULA="default-paste-formula";var _a4;let FormulaClipboardController=(_a4=class extends core.Disposable{constructor(_currentUniverSheet,_lexerTreeBuilder,_sheetClipboardService,_injector,_formulaDataModel){super(),this._currentUniverSheet=_currentUniverSheet,this._lexerTreeBuilder=_lexerTreeBuilder,this._sheetClipboardService=_sheetClipboardService,this._injector=_injector,this._formulaDataModel=_formulaDataModel,this._initialize()}_initialize(){this._registerClipboardHook()}_registerClipboardHook(){this.disposeWithMe(this._sheetClipboardService.addClipboardHook(this._pasteFormulaHook())),this.disposeWithMe(this._sheetClipboardService.addClipboardHook(this._pasteWithFormulaHook()))}_pasteFormulaHook(){return{id:sheetsUi.PREDEFINED_HOOK_NAME.SPECIAL_PASTE_FORMULA,priority:10,specialPasteInfo:{label:"specialPaste.formula"},onPasteCells:__name((pasteFrom,pasteTo,data,payload)=>this._onPasteCells(pasteFrom,pasteTo,data,payload,!0),"onPasteCells")}}_pasteWithFormulaHook(){return{id:DEFAULT_PASTE_FORMULA,priority:10,onPasteCells:__name((pasteFrom,pasteTo,data,payload)=>this._onPasteCells(pasteFrom,pasteTo,data,payload,!1),"onPasteCells")}}_onPasteCells(pasteFrom,pasteTo,data,payload,isSpecialPaste){var _a23;if([sheetsUi.PREDEFINED_HOOK_NAME.SPECIAL_PASTE_FORMAT,sheetsUi.PREDEFINED_HOOK_NAME.SPECIAL_PASTE_COL_WIDTH].includes(payload.pasteType))return{undos:[],redos:[]};const workbook=this._currentUniverSheet.getCurrentUnitForType(core.UniverInstanceType.UNIVER_SHEET),unitId=pasteTo.unitId||workbook.getUnitId(),subUnitId=pasteTo.subUnitId||((_a23=workbook.getActiveSheet())==null?void 0:_a23.getSheetId());if(!unitId||!subUnitId)return{undos:[],redos:[]};const pastedRange=pasteTo.range,matrix=data,copyInfo={copyType:payload.copyType||sheetsUi.COPY_TYPE.COPY,copyRange:pasteFrom==null?void 0:pasteFrom.range,pasteType:payload.pasteType};return this._injector.invoke(accessor=>getSetCellFormulaMutations(unitId,subUnitId,pastedRange,matrix,accessor,copyInfo,this._lexerTreeBuilder,this._formulaDataModel,isSpecialPaste,pasteFrom))}},__name(_a4,"FormulaClipboardController"),_a4);FormulaClipboardController=__decorateClass$g([core.OnLifecycle(core.LifecycleStages.Ready,FormulaClipboardController),__decorateParam$g(0,core.IUniverInstanceService),__decorateParam$g(1,core.Inject(engineFormula.LexerTreeBuilder)),__decorateParam$g(2,sheetsUi.ISheetClipboardService),__decorateParam$g(3,core.Inject(core.Injector)),__decorateParam$g(4,core.Inject(engineFormula.FormulaDataModel))],FormulaClipboardController);function getSetCellFormulaMutations(unitId,subUnitId,range,matrix,accessor,copyInfo,lexerTreeBuilder,formulaDataModel,isSpecialPaste=!1,pasteFrom){const redoMutationsInfo=[],undoMutationsInfo=[],valueMatrix=getValueMatrix(unitId,subUnitId,range,matrix,copyInfo,lexerTreeBuilder,formulaDataModel,pasteFrom),setValuesMutation={unitId,subUnitId,cellValue:valueMatrix.getData()};redoMutationsInfo.push({id:sheets.SetRangeValuesMutation.id,params:setValuesMutation});const undoSetValuesMutation=sheets.SetRangeValuesUndoMutationFactory(accessor,setValuesMutation);return undoMutationsInfo.push({id:sheets.SetRangeValuesMutation.id,params:undoSetValuesMutation}),{undos:undoMutationsInfo,redos:redoMutationsInfo}}__name(getSetCellFormulaMutations,"getSetCellFormulaMutations");function getValueMatrix(unitId,subUnitId,range,matrix,copyInfo,lexerTreeBuilder,formulaDataModel,pasteFrom){return pasteFrom?copyInfo.pasteType===sheetsUi.PREDEFINED_HOOK_NAME.SPECIAL_PASTE_VALUE?getSpecialPasteValueValueMatrix(unitId,subUnitId,range,matrix,formulaDataModel,pasteFrom):copyInfo.pasteType===sheetsUi.PREDEFINED_HOOK_NAME.SPECIAL_PASTE_FORMULA?getSpecialPasteFormulaValueMatrix(unitId,subUnitId,range,matrix,lexerTreeBuilder,formulaDataModel,pasteFrom):getDefaultPasteValueMatrix(unitId,subUnitId,range,matrix,lexerTreeBuilder,formulaDataModel,pasteFrom):getValueMatrixOfPasteFromIsNull(unitId,subUnitId,range,matrix,formulaDataModel)}__name(getValueMatrix,"getValueMatrix");function getValueMatrixOfPasteFromIsNull(unitId,subUnitId,range,matrix,formulaDataModel){var _a23,_b;const valueMatrix=new core.ObjectMatrix,formulaData=(_b=(_a23=formulaDataModel.getFormulaData())==null?void 0:_a23[unitId])==null?void 0:_b[subUnitId];return matrix.forValue((row,col,value)=>{var _a24;const toRow=range.rows[row],toCol=range.cols[col],valueObject={};core.isFormulaString(value.v)?(valueObject.v=null,valueObject.f=`${value.v}`,valueObject.si=null,valueObject.p=null,valueMatrix.setValue(toRow,toCol,valueObject)):(_a24=formulaData==null?void 0:formulaData[toRow])!=null&&_a24[toCol]&&(valueObject.v=value.v,valueObject.f=null,valueObject.si=null,valueObject.p=null,valueMatrix.setValue(toRow,toCol,valueObject))}),valueMatrix}__name(getValueMatrixOfPasteFromIsNull,"getValueMatrixOfPasteFromIsNull");function getSpecialPasteValueValueMatrix(unitId,subUnitId,range,matrix,formulaDataModel,pasteFrom){var _a23,_b,_c,_d;const valueMatrix=new core.ObjectMatrix,arrayFormulaCellData=(_b=(_a23=formulaDataModel.getArrayFormulaCellData())==null?void 0:_a23[pasteFrom.unitId])==null?void 0:_b[pasteFrom.subUnitId],formulaData=(_d=(_c=formulaDataModel.getFormulaData())==null?void 0:_c[unitId])==null?void 0:_d[subUnitId];return matrix.forValue((row,col,value)=>{var _a24,_b2;const fromRow=pasteFrom.range.rows[row%pasteFrom.range.rows.length],fromCol=pasteFrom.range.cols[col%pasteFrom.range.cols.length],toRow=range.rows[row],toCol=range.cols[col],valueObject={};if(core.isFormulaString(value.f)||core.isFormulaId(value.si))valueObject.v=value.v,valueObject.f=null,valueObject.si=null,valueObject.p=null,valueMatrix.setValue(toRow,toCol,valueObject);else if((_a24=arrayFormulaCellData==null?void 0:arrayFormulaCellData[fromRow])!=null&&_a24[fromCol]){const cell=arrayFormulaCellData[fromRow][fromCol];valueObject.v=cell.v,valueObject.f=null,valueObject.si=null,valueObject.p=null,valueMatrix.setValue(toRow,toCol,valueObject)}else if((_b2=formulaData==null?void 0:formulaData[toRow])!=null&&_b2[toCol]){if(valueObject.v=value.v,valueObject.f=null,valueObject.si=null,valueObject.p=null,value.p){const richText=getCellRichText(value);richText&&(valueObject.v=richText)}valueMatrix.setValue(toRow,toCol,valueObject)}}),valueMatrix}__name(getSpecialPasteValueValueMatrix,"getSpecialPasteValueValueMatrix");function getSpecialPasteFormulaValueMatrix(unitId,subUnitId,range,matrix,lexerTreeBuilder,formulaDataModel,pasteFrom){const valueMatrix=new core.ObjectMatrix,formulaIdMap=new Map;return matrix.forValue((row,col,value)=>{const toRow=range.rows[row],toCol=range.cols[col],valueObject={};if(core.isFormulaId(value.si)){if(pasteFrom.unitId!==unitId||pasteFrom.subUnitId!==subUnitId){const formulaString=formulaDataModel.getFormulaStringByCell(pasteFrom.range.rows[row%pasteFrom.range.rows.length],pasteFrom.range.cols[col%pasteFrom.range.cols.length],pasteFrom.subUnitId,pasteFrom.unitId),offsetX=range.cols[col]-pasteFrom.range.cols[col%pasteFrom.range.cols.length],offsetY=range.rows[row]-pasteFrom.range.rows[row%pasteFrom.range.rows.length],shiftedFormula=lexerTreeBuilder.moveFormulaRefOffset(formulaString||"",offsetX,offsetY);valueObject.si=null,valueObject.f=shiftedFormula}else valueObject.si=value.si,valueObject.f=null;valueObject.v=null,valueObject.p=null,valueMatrix.setValue(toRow,toCol,valueObject)}else if(core.isFormulaString(value.f)){const index=`${row%pasteFrom.range.rows.length}_${col%pasteFrom.range.cols.length}`;let formulaId=formulaIdMap.get(index);if(formulaId)valueObject.si=formulaId,valueObject.f=null;else{formulaId=core.Tools.generateRandomId(6),formulaIdMap.set(index,formulaId);const offsetX=range.cols[col]-pasteFrom.range.cols[col%pasteFrom.range.cols.length],offsetY=range.rows[row]-pasteFrom.range.rows[row%pasteFrom.range.rows.length],shiftedFormula=lexerTreeBuilder.moveFormulaRefOffset(value.f||"",offsetX,offsetY);valueObject.si=formulaId,valueObject.f=shiftedFormula}valueObject.v=null,valueObject.p=null,valueMatrix.setValue(toRow,toCol,valueObject)}else{if(valueObject.v=value.v,valueObject.f=null,valueObject.si=null,valueObject.p=null,value.p){const richText=getCellRichText(value);richText&&(valueObject.v=richText)}valueMatrix.setValue(toRow,toCol,valueObject)}}),valueMatrix}__name(getSpecialPasteFormulaValueMatrix,"getSpecialPasteFormulaValueMatrix");function getDefaultPasteValueMatrix(unitId,subUnitId,range,matrix,lexerTreeBuilder,formulaDataModel,pasteFrom){var _a23,_b;const valueMatrix=new core.ObjectMatrix,formulaIdMap=new Map,formulaData=(_b=(_a23=formulaDataModel.getFormulaData())==null?void 0:_a23[unitId])==null?void 0:_b[subUnitId];return matrix.forValue((row,col,value)=>{var _a24;const toRow=range.rows[row],toCol=range.cols[col],valueObject={};if(core.isFormulaId(value.si)){if(pasteFrom.unitId!==unitId||pasteFrom.subUnitId!==subUnitId){const formulaString=formulaDataModel.getFormulaStringByCell(pasteFrom.range.rows[row%pasteFrom.range.rows.length],pasteFrom.range.cols[col%pasteFrom.range.cols.length],pasteFrom.subUnitId,pasteFrom.unitId),offsetX=range.cols[col]-pasteFrom.range.cols[col%pasteFrom.range.cols.length],offsetY=range.rows[row]-pasteFrom.range.rows[row%pasteFrom.range.rows.length],shiftedFormula=lexerTreeBuilder.moveFormulaRefOffset(formulaString||"",offsetX,offsetY);valueObject.si=null,valueObject.f=shiftedFormula}else valueObject.si=value.si,valueObject.f=null;valueObject.v=null,valueObject.p=null,valueMatrix.setValue(toRow,toCol,valueObject)}else if(core.isFormulaString(value.f)){const index=`${row%pasteFrom.range.rows.length}_${col%pasteFrom.range.cols.length}`;let formulaId=formulaIdMap.get(index);if(formulaId)valueObject.si=formulaId,valueObject.f=null;else{formulaId=core.Tools.generateRandomId(6),formulaIdMap.set(index,formulaId);const offsetX=range.cols[col]-pasteFrom.range.cols[col%pasteFrom.range.cols.length],offsetY=range.rows[row]-pasteFrom.range.rows[row%pasteFrom.range.rows.length],shiftedFormula=lexerTreeBuilder.moveFormulaRefOffset(value.f||"",offsetX,offsetY);valueObject.si=formulaId,valueObject.f=shiftedFormula}valueObject.v=null,valueObject.p=null,valueMatrix.setValue(toRow,toCol,valueObject)}else(_a24=formulaData==null?void 0:formulaData[toRow])!=null&&_a24[toCol]&&(valueObject.v=value.v,valueObject.f=null,valueObject.si=null,valueObject.p=value.p,valueMatrix.setValue(toRow,toCol,valueObject))}),valueMatrix}__name(getDefaultPasteValueMatrix,"getDefaultPasteValueMatrix");function getCellRichText(cell){if(cell!=null&&cell.p){const body=cell==null?void 0:cell.p.body;if(body==null)return;const data=body.dataStream;return data.substring(data.length-2,data.length)===core.DEFAULT_EMPTY_DOCUMENT_VALUE?data.substring(0,data.length-2):data}}__name(getCellRichText,"getCellRichText");var __defProp$f=Object.defineProperty,__getOwnPropDesc$f=Object.getOwnPropertyDescriptor,__decorateClass$f=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$f(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$f(target,key,result),result},"__decorateClass$f"),__decorateParam$f=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$f");const REFRESH_ARRAY_SHAPE_MUTATIONS=[sheets.SetWorksheetRowHeightMutation.id,sheets.SetWorksheetColWidthMutation.id,sheets.SetColHiddenMutation.id,sheets.SetColVisibleMutation.id,sheets.SetRowHiddenMutation.id,sheets.SetRowVisibleMutation.id];var _a5;let FormulaEditorShowController=(_a5=class extends core.Disposable{constructor(_context,_editorBridgeService,_formulaDataModel,_themeService,_renderManagerService,_sheetSkeletonManagerService,_commandService,_logService){super();__publicField(this,"_previousShape");__publicField(this,"_skeleton");this._context=_context,this._editorBridgeService=_editorBridgeService,this._formulaDataModel=_formulaDataModel,this._themeService=_themeService,this._renderManagerService=_renderManagerService,this._sheetSkeletonManagerService=_sheetSkeletonManagerService,this._commandService=_commandService,this._logService=_logService,this._initSkeletonChangeListener(),this._initInterceptorEditorStart(),this._commandExecutedListener()}_initSkeletonChangeListener(){this.disposeWithMe(this._sheetSkeletonManagerService.currentSkeleton$.subscribe(param=>{var _a23,_b;if(param==null)this._logService.debug("[FormulaEditorShowController]: should not receive currentSkeleton$ as null!");else{const{skeleton}=param,prevSheetId=(_b=(_a23=this._skeleton)==null?void 0:_a23.worksheet)==null?void 0:_b.getSheetId();this._changeRuntime(skeleton),prevSheetId!==skeleton.worksheet.getSheetId()&&this._removeArrayFormulaRangeShape()}}))}_changeRuntime(skeleton){this._skeleton=skeleton}_initInterceptorEditorStart(){this.disposeWithMe(core.toDisposable(this._editorBridgeService.interceptor.intercept(this._editorBridgeService.interceptor.getInterceptPoints().BEFORE_CELL_EDIT,{handler:__name((value,context,next)=>{var _a23,_b,_c,_d;const{row,col,unitId,subUnitId,worksheet}=context,arrayFormulaMatrixRange=this._formulaDataModel.getArrayFormulaRange(),arrayFormulaMatrixCell=this._formulaDataModel.getArrayFormulaCellData();if(this._removeArrayFormulaRangeShape(),value==null)return next(value);let cellInfo=null;const formulaString=this._formulaDataModel.getFormulaStringByCell(row,col,subUnitId,unitId);if(formulaString!==null&&(cellInfo={f:formulaString}),value.v!=null&&value.v!==""&&((_c=(_b=(_a23=arrayFormulaMatrixCell[unitId])==null?void 0:_a23[subUnitId])==null?void 0:_b[row])==null?void 0:_c[col])==null)return cellInfo?{...value,...cellInfo}:next(value);const matrixRange=(_d=arrayFormulaMatrixRange==null?void 0:arrayFormulaMatrixRange[unitId])==null?void 0:_d[subUnitId];return matrixRange!=null&&(cellInfo=this._displayArrayFormulaRangeShape(matrixRange,row,col,unitId,subUnitId,worksheet,cellInfo)),cellInfo?{...value,...cellInfo}:next(value)},"handler")})))}_commandExecutedListener(){this.disposeWithMe(this._commandService.onCommandExecuted((command,options)=>{(command.id===engineFormula.SetFormulaCalculationResultMutation.id||command.id===engineFormula.SetArrayFormulaDataMutation.id&&options&&options.remove)&&this._removeArrayFormulaRangeShape()})),this.disposeWithMe(this._commandService.beforeCommandExecuted(command=>{sheets.SetWorksheetRowAutoHeightMutation.id===command.id&&requestIdleCallback(()=>{const params=command.params,{unitId,subUnitId,rowsAutoHeightInfo}=params;this._refreshArrayFormulaRangeShapeByRow(unitId,subUnitId,rowsAutoHeightInfo)}),REFRESH_ARRAY_SHAPE_MUTATIONS.includes(command.id)&&requestIdleCallback(()=>{const params=command.params,{unitId,subUnitId,ranges}=params;this._refreshArrayFormulaRangeShapeByRanges(unitId,subUnitId,ranges)})}))}_displayArrayFormulaRangeShape(matrixRange,row,col,unitId,subUnitId,worksheet,cellInfo){return new core.ObjectMatrix(matrixRange).forValue((rowIndex,columnIndex,range)=>{if(range==null)return!0;const{startRow,startColumn,endRow,endColumn}=range;if(rowIndex===row&&columnIndex===col)return this._createArrayFormulaRangeShape(range,unitId),!1;if(row>=startRow&&row<=endRow&&col>=startColumn&&col<=endColumn){const mainCellValue=worksheet.getCell(startRow,startColumn);if((mainCellValue==null?void 0:mainCellValue.v)===engineFormula.ErrorType.SPILL)return;const formulaDataItem=this._formulaDataModel.getFormulaDataItem(rowIndex,columnIndex,subUnitId,unitId);return formulaDataItem==null||formulaDataItem.f==null?!0:(cellInfo==null&&(cellInfo={f:formulaDataItem.f,isInArrayFormulaRange:!0}),this._createArrayFormulaRangeShape(range,unitId),!1)}}),cellInfo}_createArrayFormulaRangeShape(arrayRange,unitId){const styleSheet=this._themeService.getCurrentTheme(),fill=new core.ColorKit(styleSheet.colorWhite).setAlpha(0).toString(),style={strokeWidth:1,stroke:styleSheet.hyacinth700,fill,widgets:{},hasAutoFill:!1,hasRowHeader:!1,hasColumnHeader:!1},renderUnit=this._renderManagerService.getRenderById(unitId);if(!renderUnit)return;const{scene}=renderUnit,{rangeWithCoord,primaryWithCoord}=renderUnit.with(sheetsUi.ISheetSelectionRenderService).attachSelectionWithCoord({range:arrayRange,primary:null,style}),skeleton=this._sheetSkeletonManagerService.getCurrentSkeleton();if(!scene||!skeleton)return;const{rowHeaderWidth,columnHeaderHeight}=skeleton,control=new sheetsUi.SelectionShape(scene,sheetsUi.SELECTION_SHAPE_DEPTH.FORMULA_EDITOR_SHOW,this._themeService,!1);control.update(rangeWithCoord,rowHeaderWidth,columnHeaderHeight,style,primaryWithCoord),control.setEvent(!1),this._previousShape=control}_removeArrayFormulaRangeShape(){this._previousShape!=null&&(this._previousShape.dispose(),this._previousShape=null)}_refreshArrayFormulaRangeShape(unitId,range){if(this._previousShape){const{startRow,endRow,startColumn,endColumn}=this._previousShape.getRange(),range2={startRow,endRow,startColumn,endColumn};this._removeArrayFormulaRangeShape(),this._createArrayFormulaRangeShape(range2,unitId)}}_checkCurrentSheet(unitId,subUnitId){const skeleton=this._sheetSkeletonManagerService.getCurrentSkeleton();if(!skeleton)return!1;const worksheet=skeleton.worksheet;return worksheet?worksheet.unitId===unitId&&worksheet.getSheetId()===subUnitId:!1}_refreshArrayFormulaRangeShapeByRanges(unitId,subUnitId,ranges){if(!this._checkCurrentSheet(unitId,subUnitId)||!this._previousShape)return;const{startRow:shapeStartRow,endRow:shapeEndRow,startColumn:shapeStartColumn,endColumn:shapeEndColumn}=this._previousShape.getRange();for(let i=0;i<ranges.length;i++){const range=ranges[i],{startRow,endRow,startColumn,endColumn}=range;if(core.Rectangle.intersects({startRow,endRow,startColumn,endColumn},{startRow:shapeStartRow,endRow:shapeEndRow,startColumn:shapeStartColumn,endColumn:shapeEndColumn})||shapeStartRow>=endRow||startColumn>=endColumn){const shapeRange={startRow:shapeStartRow,endRow:shapeEndRow,startColumn:shapeStartColumn,endColumn:shapeEndColumn};this._refreshArrayFormulaRangeShape(unitId,shapeRange);break}}}_refreshArrayFormulaRangeShapeByRow(unitId,subUnitId,rowAutoHeightInfo){if(!this._checkCurrentSheet(unitId,subUnitId)||!this._previousShape)return;const{startRow:shapeStartRow,endRow:shapeEndRow,startColumn:shapeStartColumn,endColumn:shapeEndColumn}=this._previousShape.getRange();for(let i=0;i<rowAutoHeightInfo.length;i++){const{row}=rowAutoHeightInfo[i];if(shapeStartRow>=row){const shapeRange={startRow:shapeStartRow,endRow:shapeEndRow,startColumn:shapeStartColumn,endColumn:shapeEndColumn};this._refreshArrayFormulaRangeShape(unitId,shapeRange);break}}}},__name(_a5,"FormulaEditorShowController"),_a5);FormulaEditorShowController=__decorateClass$f([__decorateParam$f(1,core.Inject(sheetsUi.IEditorBridgeService)),__decorateParam$f(2,core.Inject(engineFormula.FormulaDataModel)),__decorateParam$f(3,core.Inject(core.ThemeService)),__decorateParam$f(4,engineRender.IRenderManagerService),__decorateParam$f(5,core.Inject(sheetsUi.SheetSkeletonManagerService)),__decorateParam$f(6,core.ICommandService),__decorateParam$f(7,core.ILogService)],FormulaEditorShowController);const SheetOnlyPasteFormulaCommand={id:"sheet.command.paste-formula",type:core.CommandType.COMMAND,handler:__name(async accessor=>accessor.get(core.ICommandService).executeCommand(sheetsUi.SheetPasteCommand.id,{value:sheetsUi.PREDEFINED_HOOK_NAME.SPECIAL_PASTE_FORMULA}),"handler")},InsertFunctionCommand={id:"formula-ui.command.insert-function",type:core.CommandType.COMMAND,handler:__name(async(accessor,params)=>{const{list}=params,commandService=accessor.get(core.ICommandService),cellMatrix=new core.ObjectMatrix;list.forEach(item=>{const{range,primary,formula}=item,{row,column}=primary,formulaId=core.Tools.generateRandomId(6);cellMatrix.setValue(row,column,{f:formula,si:formulaId});const{startRow,startColumn,endRow,endColumn}=range;for(let i=startRow;i<=endRow;i++)for(let j=startColumn;j<=endColumn;j++)(i!==row||j!==column)&&cellMatrix.setValue(i,j,{si:formulaId})});const setRangeValuesParams={value:cellMatrix.getData()};return commandService.executeCommand(sheets.SetRangeValuesCommand.id,setRangeValuesParams)},"handler")},SelectEditorFormulaOperation={id:"formula-ui.operation.select-editor-formula",type:core.CommandType.OPERATION,handler:__name((accessor,params)=>!0,"handler")};var __defProp$e=Object.defineProperty,__getOwnPropDesc$e=Object.getOwnPropertyDescriptor,__decorateClass$e=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$e(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$e(target,key,result),result},"__decorateClass$e"),__decorateParam$e=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$e");const FORMULA_PROMPT_ACTIVATED="FORMULA_PROMPT_ACTIVATED",IFormulaPromptService=core.createIdentifier("formula-ui.prompt-service");var _a6;let FormulaPromptService=(_a6=class{constructor(_contextService){__publicField(this,"_search$",new rxjs.Subject);__publicField(this,"_help$",new rxjs.Subject);__publicField(this,"_navigate$",new rxjs.Subject);__publicField(this,"_accept$",new rxjs.Subject);__publicField(this,"_acceptFormulaName$",new rxjs.Subject);__publicField(this,"search$",this._search$.asObservable());__publicField(this,"help$",this._help$.asObservable());__publicField(this,"navigate$",this._navigate$.asObservable());__publicField(this,"accept$",this._accept$.asObservable());__publicField(this,"acceptFormulaName$",this._acceptFormulaName$.asObservable());__publicField(this,"_searching",!1);__publicField(this,"_helping",!1);__publicField(this,"_sequenceNodes",[]);__publicField(this,"_isLockedOnSelectionChangeRefString",!1);__publicField(this,"_isLockedOnSelectionInsertRefString",!1);this._contextService=_contextService}dispose(){this._search$.complete(),this._help$.complete(),this._navigate$.complete(),this._accept$.complete(),this._acceptFormulaName$.complete(),this._sequenceNodes=[]}search(param){this._contextService.setContextValue(FORMULA_PROMPT_ACTIVATED,param.visible),this._searching=param.visible,this._search$.next(param)}isSearching(){return this._searching}help(param){this._helping=param.visible,this._help$.next(param)}isHelping(){return this._helping}navigate(param){this._navigate$.next(param)}accept(param){this._accept$.next(param)}acceptFormulaName(param){this._acceptFormulaName$.next(param)}getSequenceNodes(){return[...this._sequenceNodes]}setSequenceNodes(nodes){this._sequenceNodes=nodes}clearSequenceNodes(){this._sequenceNodes=[]}getCurrentSequenceNode(strIndex){return this._sequenceNodes[this.getCurrentSequenceNodeIndex(strIndex)]}getCurrentSequenceNodeByIndex(nodeIndex){return this._sequenceNodes[nodeIndex]}getCurrentSequenceNodeIndex(strIndex){let nodeIndex=0;const firstNode=this._sequenceNodes[0];for(let i=0,len=this._sequenceNodes.length;i<len;i++){const node=this._sequenceNodes[i];if(typeof node=="string")nodeIndex++;else{const{endIndex}=node;nodeIndex=endIndex}if(strIndex<=nodeIndex)return typeof firstNode=="string"&&strIndex!==0?i+1:i}return this._sequenceNodes.length}updateSequenceRef(nodeIndex,refString){const node=this._sequenceNodes[nodeIndex];if(typeof node=="string"||node.nodeType!==engineFormula.sequenceNodeType.REFERENCE)return;const difference=refString.length-node.token.length,newNode={...node};newNode.token=refString,newNode.endIndex+=difference,this._sequenceNodes[nodeIndex]=newNode;for(let i=nodeIndex+1,len=this._sequenceNodes.length;i<len;i++){const node2=this._sequenceNodes[i];if(typeof node2=="string")continue;const newNode2={...node2};newNode2.startIndex+=difference,newNode2.endIndex+=difference,this._sequenceNodes[i]=newNode2}}insertSequenceRef(index,refString){const refStringCount=refString.length,nodeIndex=this.getCurrentSequenceNodeIndex(index);this._sequenceNodes.splice(nodeIndex,0,{token:refString,startIndex:index,endIndex:index+refStringCount-1,nodeType:engineFormula.sequenceNodeType.REFERENCE});for(let i=nodeIndex+1,len=this._sequenceNodes.length;i<len;i++){const node=this._sequenceNodes[i];if(typeof node=="string")continue;const newNode={...node};newNode.startIndex+=refStringCount,newNode.endIndex+=refStringCount,this._sequenceNodes[i]=newNode}}insertSequenceString(index,content){const nodeIndex=this.getCurrentSequenceNodeIndex(index),str=content.split("");this._sequenceNodes.splice(nodeIndex,0,...str);const contentCount=str.length;for(let i=nodeIndex+contentCount,len=this._sequenceNodes.length;i<len;i++){const node=this._sequenceNodes[i];if(typeof node=="string")continue;const newNode={...node};newNode.startIndex+=contentCount,newNode.endIndex+=contentCount,this._sequenceNodes[i]=newNode}}enableLockedSelectionChange(){this._isLockedOnSelectionChangeRefString=!0}disableLockedSelectionChange(){this._isLockedOnSelectionChangeRefString=!1}isLockedSelectionChange(){return this._isLockedOnSelectionChangeRefString}enableLockedSelectionInsert(){this._isLockedOnSelectionInsertRefString=!0}disableLockedSelectionInsert(){this._isLockedOnSelectionInsertRefString=!1}isLockedSelectionInsert(){return this._isLockedOnSelectionInsertRefString}},__name(_a6,"FormulaPromptService"),_a6);FormulaPromptService=__decorateClass$e([__decorateParam$e(0,core.IContextService)],FormulaPromptService);const HelpFunctionOperation={id:"formula-ui.operation.help-function",type:core.CommandType.OPERATION,handler:__name(async(accessor,params)=>(accessor.get(IFormulaPromptService).help(params),!0),"handler")},InsertFunctionOperation={id:"formula-ui.operation.insert-function",type:core.CommandType.OPERATION,handler:__name(async(accessor,params)=>{var _a23,_b;const selectionManagerService=accessor.get(sheets.SheetsSelectionsService),editorService=accessor.get(docsUi.IEditorService),currentSelections=selectionManagerService.getCurrentSelections();if(!currentSelections||!currentSelections.length)return!1;const target=sheets.getSheetCommandTarget(accessor.get(core.IUniverInstanceService));if(!target)return!1;const{worksheet,unitId,subUnitId}=target,cellMatrix=worksheet.getCellMatrix(),{value}=params,commandService=accessor.get(core.ICommandService),list=[];let editRange=null,editRow=0,editColumn=0,editFormulaRangeString="";if(currentSelections.length===1&&(isSingleCell(currentSelections[0].range)||isMultiRowsColumnsRange(currentSelections[0].range))){const{range,primary}=currentSelections[0],row=(_a23=primary==null?void 0:primary.actualRow)!=null?_a23:range.startRow,column=(_b=primary==null?void 0:primary.actualColumn)!=null?_b:range.startColumn;editRange=range,editRow=row,editColumn=column;const refRange=findRefRange(cellMatrix,row,column);refRange&&(editFormulaRangeString=engineFormula.serializeRange(refRange))}else currentSelections.some(selection=>{var _a24,_b2;const{range,primary}=selection,row=(_a24=primary==null?void 0:primary.actualRow)!=null?_a24:range.startRow,column=(_b2=primary==null?void 0:primary.actualColumn)!=null?_b2:range.startColumn,refRange=findRefRange(cellMatrix,row,column);if(!refRange)return editRange=range,editRow=row,editColumn=column,!0;const rangeString=engineFormula.serializeRange(refRange),formulaString=`=${value}(${rangeString})`;return list.push({range,primary:{row,column},formula:formulaString}),!1});if(editRange){const destRange=sheets.getCellAtRowCol(editRow,editColumn,worksheet),resultRange={range:core.Rectangle.clone(editRange),primary:{startRow:destRange.startRow,startColumn:destRange.startColumn,endRow:destRange.endRow,endColumn:destRange.endColumn,actualRow:editRow,actualColumn:editColumn,isMerged:destRange.isMerged,isMergedMainCell:destRange.startRow===editRow&&destRange.startColumn===editColumn}},setSelectionParams={unitId,subUnitId,selections:[resultRange]};await commandService.executeCommand(sheets.SetSelectionsOperation.id,setSelectionParams),setTimeout(()=>{editorService.setFormula(`=${value}(${editFormulaRangeString}`)},0)}return list.length===0?!1:commandService.executeCommand(InsertFunctionCommand.id,{list})},"handler")};function findRefRange(cellMatrix,row,column){const startRow=findStartRow(cellMatrix,row,column);if(startRow!==row)return{startRow,endRow:row-1,startColumn:column,endColumn:column};const startColumn=findStartColumn(cellMatrix,row,column);return startColumn!==column?{startRow:row,endRow:row,startColumn,endColumn:column-1}:null}__name(findRefRange,"findRefRange");function findStartRow(cellMatrix,row,column){let isFirstNumber=!1;if(row===0)return row;for(let r=row-1;r>=0;r--){const cell=cellMatrix.getValue(r,column);if(isNumberCell(cell)&&!isFirstNumber){if(r===0)return 0;isFirstNumber=!0}else{if(isFirstNumber&&!isNumberCell(cell))return r+1;if(isFirstNumber&&r===0)return 0}}return row}__name(findStartRow,"findStartRow");function findStartColumn(cellMatrix,row,column){let isFirstNumber=!1;if(column===0)return column;for(let c=column-1;c>=0;c--){const cell=cellMatrix.getValue(row,c);if(isNumberCell(cell)&&!isFirstNumber){if(c===0)return 0;isFirstNumber=!0}else{if(isFirstNumber&&!isNumberCell(cell))return c+1;if(isFirstNumber&&c===0)return 0}}return column}__name(findStartColumn,"findStartColumn");function isNumberCell(cell){if(cell!=null&&cell.p){const body=cell==null?void 0:cell.p.body;if(body==null)return!1;const data=body.dataStream,newDataStream=data.substring(data.length-2,data.length)===core.DEFAULT_EMPTY_DOCUMENT_VALUE?data.substring(0,data.length-2):data;return core.isRealNum(newDataStream)}return cell&&(cell.t===core.CellValueType.NUMBER||core.getCellValueType(cell)===core.CellValueType.NUMBER)}__name(isNumberCell,"isNumberCell");function isSingleCell(range){return range.startRow===range.endRow&&range.startColumn===range.endColumn}__name(isSingleCell,"isSingleCell");function isMultiRowsColumnsRange(range){return range.startRow!==range.endRow&&range.startColumn!==range.endColumn}__name(isMultiRowsColumnsRange,"isMultiRowsColumnsRange");const MORE_FUNCTIONS_COMPONENT=`${FORMULA_UI_PLUGIN_NAME}_MORE_FUNCTIONS_COMPONENT`,MoreFunctionsOperation={id:"formula-ui.operation.more-functions",type:core.CommandType.OPERATION,handler:__name(async accessor=>(accessor.get(ui.ISidebarService).open({header:{title:"formula.insert.tooltip"},children:{label:MORE_FUNCTIONS_COMPONENT}}),!0),"handler")},ReferenceAbsoluteOperation={id:"formula-ui.operation.change-ref-to-absolute",type:core.CommandType.OPERATION,handler:__name(async accessor=>!0,"handler")},SearchFunctionOperation={id:"formula-ui.operation.search-function",type:core.CommandType.OPERATION,handler:__name(async(accessor,params)=>(accessor.get(IFormulaPromptService).search(params),!0),"handler")};var jsxRuntime={exports:{}},reactJsxRuntime_production_min={};/**
2
2
  * @license React
3
3
  * react-jsx-runtime.production.min.js
4
4
  *
@@ -6,6 +6,6 @@
6
6
  *
7
7
  * This source code is licensed under the MIT license found in the
8
8
  * LICENSE file in the root directory of this source tree.
9
- */var f=require$$0,k=Symbol.for("react.element"),l=Symbol.for("react.fragment"),m=Object.prototype.hasOwnProperty,n=f.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,p={key:!0,ref:!0,__self:!0,__source:!0};function q(c,a,g){var b,d={},e=null,h=null;g!==void 0&&(e=""+g),a.key!==void 0&&(e=""+a.key),a.ref!==void 0&&(h=a.ref);for(b in a)m.call(a,b)&&!p.hasOwnProperty(b)&&(d[b]=a[b]);if(c&&c.defaultProps)for(b in a=c.defaultProps,a)d[b]===void 0&&(d[b]=a[b]);return{$$typeof:k,type:c,key:e,ref:h,props:d,_owner:n.current}}__name(q,"q");reactJsxRuntime_production_min.Fragment=l;reactJsxRuntime_production_min.jsx=q;reactJsxRuntime_production_min.jsxs=q;jsxRuntime.exports=reactJsxRuntime_production_min;var jsxRuntimeExports=jsxRuntime.exports,__assign=function(){return __assign=Object.assign||function(t){for(var s,i=1,n2=arguments.length;i<n2;i++){s=arguments[i];for(var p2 in s)Object.prototype.hasOwnProperty.call(s,p2)&&(t[p2]=s[p2])}return t},__assign.apply(this,arguments)},__rest=function(s,e){var t={};for(var p2 in s)Object.prototype.hasOwnProperty.call(s,p2)&&e.indexOf(p2)<0&&(t[p2]=s[p2]);if(s!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,p2=Object.getOwnPropertySymbols(s);i<p2.length;i++)e.indexOf(p2[i])<0&&Object.prototype.propertyIsEnumerable.call(s,p2[i])&&(t[p2[i]]=s[p2[i]]);return t},IconBase=require$$0.forwardRef(function(props,ref){var icon=props.icon,id=props.id,className=props.className,extend=props.extend,restProps=__rest(props,["icon","id","className","extend"]),cls="univerjs-icon univerjs-icon-".concat(id," ").concat(className||"").trim(),idSuffix=require$$0.useRef("_".concat(generateShortUuid()));return render(icon,"".concat(id),{defIds:icon.defIds,idSuffix:idSuffix.current},__assign({ref,className:cls},restProps),extend)});function render(node,id,runtimeProps,rootProps,extend){return require$$0.createElement(node.tag,__assign(__assign({key:id},replaceRuntimeIdsAndExtInAttrs(node,runtimeProps,extend)),rootProps),(replaceRuntimeIdsInDefs(node,runtimeProps).children||[]).map(function(child,index){return render(child,"".concat(id,"-").concat(node.tag,"-").concat(index),runtimeProps,void 0,extend)}))}__name(render,"render");function replaceRuntimeIdsAndExtInAttrs(node,runtimeProps,extend){var attrs=__assign({},node.attrs);extend!=null&&extend.colorChannel1&&attrs.fill==="colorChannel1"&&(attrs.fill=extend.colorChannel1);var defIds=runtimeProps.defIds;return!defIds||defIds.length===0||(node.tag==="use"&&attrs["xlink:href"]&&(attrs["xlink:href"]=attrs["xlink:href"]+runtimeProps.idSuffix),Object.entries(attrs).forEach(function(_a23){var key=_a23[0],value=_a23[1];typeof value=="string"&&(attrs[key]=value.replace(/url\(#(.*)\)/,"url(#$1".concat(runtimeProps.idSuffix,")")))})),attrs}__name(replaceRuntimeIdsAndExtInAttrs,"replaceRuntimeIdsAndExtInAttrs");function replaceRuntimeIdsInDefs(node,runtimeProps){var _a23,defIds=runtimeProps.defIds;return!defIds||defIds.length===0?node:node.tag==="defs"&&(!((_a23=node.children)===null||_a23===void 0)&&_a23.length)?__assign(__assign({},node),{children:node.children.map(function(child){return typeof child.attrs.id=="string"&&defIds&&defIds.indexOf(child.attrs.id)>-1?__assign(__assign({},child),{attrs:__assign(__assign({},child.attrs),{id:child.attrs.id+runtimeProps.idSuffix})}):child})}):node}__name(replaceRuntimeIdsInDefs,"replaceRuntimeIdsInDefs");function generateShortUuid(){return Math.random().toString(36).substring(2,8)}__name(generateShortUuid,"generateShortUuid");IconBase.displayName="UniverIcon";var element$3={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M14.1544 3.75557C14.3887 3.98988 14.3887 4.36978 14.1544 4.6041L6.51409 12.2444C6.40157 12.3569 6.24896 12.4201 6.08983 12.4201C5.9307 12.4201 5.77808 12.3569 5.66556 12.2444L1.84541 8.42425C1.6111 8.18993 1.6111 7.81003 1.84541 7.57572C2.07973 7.34141 2.45963 7.34141 2.69394 7.57572L6.08983 10.9716L13.3059 3.75557C13.5402 3.52126 13.9201 3.52126 14.1544 3.75557Z",fillRule:"evenodd",clipRule:"evenodd"}}]},CheckMarkSingle=require$$0.forwardRef(function(props,ref){return require$$0.createElement(IconBase,Object.assign({},props,{id:"check-mark-single",ref,icon:element$3}))});CheckMarkSingle.displayName="CheckMarkSingle";var element$2={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M3.71274 2.86421C3.47843 2.6299 3.09853 2.6299 2.86421 2.86421C2.6299 3.09853 2.6299 3.47843 2.86421 3.71274L7.15154 8.00007L2.86421 12.2874C2.6299 12.5217 2.6299 12.9016 2.86421 13.1359C3.09853 13.3702 3.47843 13.3702 3.71274 13.1359L8.00007 8.84859L12.2874 13.1359C12.5217 13.3702 12.9016 13.3702 13.1359 13.1359C13.3702 12.9016 13.3702 12.5217 13.1359 12.2874L8.84859 8.00007L13.1359 3.71274C13.3702 3.47843 13.3702 3.09853 13.1359 2.86421C12.9016 2.6299 12.5217 2.6299 12.2874 2.86421L8.00007 7.15154L3.71274 2.86421Z"}}]},CloseSingle=require$$0.forwardRef(function(props,ref){return require$$0.createElement(IconBase,Object.assign({},props,{id:"close-single",ref,icon:element$2}))});CloseSingle.displayName="CloseSingle";var element$1={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M8.75 5.32495C8.75 5.73916 8.41421 6.07495 8 6.07495 7.58579 6.07495 7.25 5.73916 7.25 5.32495 7.25 4.91074 7.58579 4.57495 8 4.57495 8.41421 4.57495 8.75 4.91074 8.75 5.32495zM8.5999 7.52505C8.5999 7.19368 8.33127 6.92505 7.9999 6.92505 7.66853 6.92505 7.3999 7.19368 7.3999 7.52505V11.425C7.3999 11.7564 7.66853 12.025 7.9999 12.025 8.33127 12.025 8.5999 11.7564 8.5999 11.425V7.52505z"}},{tag:"path",attrs:{fill:"currentColor",d:"M0.899902 8.00002C0.899902 4.0788 4.07868 0.900024 7.9999 0.900024C11.9211 0.900024 15.0999 4.0788 15.0999 8.00002C15.0999 11.9212 11.9211 15.1 7.9999 15.1C4.07868 15.1 0.899902 11.9212 0.899902 8.00002ZM7.9999 2.10002C4.74142 2.10002 2.0999 4.74154 2.0999 8.00002C2.0999 11.2585 4.74142 13.9 7.9999 13.9C11.2584 13.9 13.8999 11.2585 13.8999 8.00002C13.8999 4.74154 11.2584 2.10002 7.9999 2.10002Z",fillRule:"evenodd",clipRule:"evenodd"}}]},DetailsSingle=require$$0.forwardRef(function(props,ref){return require$$0.createElement(IconBase,Object.assign({},props,{id:"details-single",ref,icon:element$1}))});DetailsSingle.displayName="DetailsSingle";var element={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M5.90913 3.57564C6.14345 3.34132 6.52335 3.34132 6.75766 3.57564L10.7577 7.57564C10.992 7.80995 10.992 8.18985 10.7577 8.42417L6.75766 12.4242C6.52335 12.6585 6.14345 12.6585 5.90913 12.4242C5.67482 12.1899 5.67482 11.81 5.90913 11.5756L9.48487 7.9999L5.90913 4.42417C5.67482 4.18985 5.67482 3.80995 5.90913 3.57564Z",fillRule:"evenodd",clipRule:"evenodd"}}]},MoreSingle=require$$0.forwardRef(function(props,ref){return require$$0.createElement(IconBase,Object.assign({},props,{id:"more-single",ref,icon:element}))});MoreSingle.displayName="MoreSingle";function getFunctionTypeValues(enumObj,localeService){return Object.keys(enumObj).filter(key=>isNaN(Number(key))&&key!=="DefinedName").map(key=>({label:localeService.t(`formula.functionType.${key.toLocaleLowerCase()}`),value:`${enumObj[key]}`}))}__name(getFunctionTypeValues,"getFunctionTypeValues");function getFunctionName(item,localeService){let functionName="";return item.aliasFunctionName?(functionName=localeService.t(item.aliasFunctionName),functionName===item.aliasFunctionName&&(functionName=item.functionName)):functionName=item.functionName,functionName}__name(getFunctionName,"getFunctionName");function generateParam(param){if(!param.require&&!param.repeat)return`[${param.name}]`;if(param.require&&!param.repeat)return param.name;if(!param.require&&param.repeat)return`[${param.name},...]`;if(param.require&&param.repeat)return`${param.name},...`}__name(generateParam,"generateParam");const useResizeScrollObserver=__name((callback,delay=100)=>{require$$0.useEffect(()=>{let throttleTimeout=null;const throttledCallback=__name(()=>{throttleTimeout===null&&(throttleTimeout=window.setTimeout(()=>{callback(),throttleTimeout=null},delay))},"throttledCallback");return window.addEventListener("scroll",throttledCallback),window.addEventListener("resize",throttledCallback),()=>{throttleTimeout!==null&&clearTimeout(throttleTimeout),window.removeEventListener("scroll",throttledCallback),window.removeEventListener("resize",throttledCallback)}},[callback,delay])},"useResizeScrollObserver"),formulaHelpFunction="univer-formula-help-function",formulaHelpFunctionTitle="univer-formula-help-function-title",formulaHelpFunctionTitleIcons="univer-formula-help-function-title-icons",formulaHelpFunctionTitleIcon="univer-formula-help-function-title-icon",formulaHelpFunctionContent="univer-formula-help-function-content",formulaHelpFunctionContentInner="univer-formula-help-function-content-inner",formulaHelpFunctionContentParams="univer-formula-help-function-content-params",formulaHelpFunctionContentParamsTitle="univer-formula-help-function-content-params-title",formulaHelpFunctionContentParamsDetail="univer-formula-help-function-content-params-detail",formulaHelpFunctionActive="univer-formula-help-function-active",formulaHelpDecorator="univer-formula-help-decorator",formulaHelpParam="univer-formula-help-param",formulaHelpParamPrefix="univer-formula-help-param-prefix",formulaHelpParamItem="univer-formula-help-param-item",formulaHelpParamActive="univer-formula-help-param-active",styles$5={formulaHelpFunction,formulaHelpFunctionTitle,formulaHelpFunctionTitleIcons,formulaHelpFunctionTitleIcon,formulaHelpFunctionContent,formulaHelpFunctionContentInner,formulaHelpFunctionContentParams,formulaHelpFunctionContentParamsTitle,formulaHelpFunctionContentParamsDetail,formulaHelpFunctionActive,formulaHelpDecorator,formulaHelpParam,formulaHelpParamPrefix,formulaHelpParamItem,formulaHelpParamActive};function HelpFunction(){const[visible,setVisible]=require$$0.useState(!1),[contentVisible,setContentVisible]=require$$0.useState(!0),[helpVisible,setHelpVisible]=require$$0.useState(!0),[paramIndex,setParamIndex]=require$$0.useState(0),[offset,setOffset]=require$$0.useState([0,0]),[decoratorPosition,setDecoratorPosition]=require$$0.useState({left:0,top:0}),[functionInfo,setFunctionInfo]=require$$0.useState(null),promptService=core.useDependency(IFormulaPromptService),localeService=core.useDependency(core.LocaleService),required=localeService.t("formula.prompt.required"),optional=localeService.t("formula.prompt.optional"),univerInstanceService=core.useDependency(core.IUniverInstanceService),editorService=core.useDependency(ui.IEditorService),sidebarService=core.useDependency(ui.ISidebarService),injector=core.useInjector();useResizeScrollObserver(updatePosition),require$$0.useEffect(()=>{const subscription=promptService.help$.subscribe(params=>{const{visible:visible2,paramIndex:paramIndex2,functionInfo:functionInfo2}=params;if(!visible2){setVisible(visible2);return}const position=getPosition();if(position==null)return;const{left,top,height}=position;functionInfo2.description===""&&functionInfo2.functionParameter.length===0||(setOffset([left,top+height]),setParamIndex(paramIndex2),setFunctionInfo(functionInfo2),setDecoratorPosition({left,top}),setVisible(visible2))}),sidebarSubscription=sidebarService.scrollEvent$.pipe(rxjs.throttleTime(100)).subscribe(updatePosition);return()=>{subscription==null||subscription.unsubscribe(),sidebarSubscription.unsubscribe()}},[]);function updatePosition(){if(!helpVisible)return;const position=getPosition();if(position==null)return;const{left,top,height}=position;setOffset([left,top+height])}__name(updatePosition,"updatePosition");function getPosition(){const documentDataModel=univerInstanceService.getCurrentUniverDocInstance();if(!documentDataModel)return;const editorUnitId=documentDataModel.getUnitId();if(!editorService.isEditor(editorUnitId))return;const editor=editorService.getEditor(editorUnitId);return editor==null?void 0:editor.getBoundingClientRect()}__name(getPosition,"getPosition");function handleSwitchActive(paramIndex2){setParamIndex(paramIndex2)}__name(handleSwitchActive,"handleSwitchActive");function handleClose(){setHelpVisible(!helpVisible),injector.get(ui.ILayoutService).focus()}return __name(handleClose,"handleClose"),jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment,{children:helpVisible?jsxRuntimeExports.jsx(design.Popup,{visible,offset,children:functionInfo?jsxRuntimeExports.jsxs("div",{className:styles$5.formulaHelpFunction,children:[jsxRuntimeExports.jsxs("div",{className:styles$5.formulaHelpFunctionTitle,children:[jsxRuntimeExports.jsx(Help,{prefix:functionInfo.functionName,value:functionInfo.functionParameter,active:paramIndex,onClick:handleSwitchActive}),jsxRuntimeExports.jsxs("div",{className:styles$5.formulaHelpFunctionTitleIcons,children:[jsxRuntimeExports.jsx("div",{className:styles$5.formulaHelpFunctionTitleIcon,style:{transform:contentVisible?"rotateZ(-90deg)":"rotateZ(90deg)"},onClick:__name(()=>setContentVisible(!contentVisible),"onClick"),children:jsxRuntimeExports.jsx(MoreSingle,{})}),jsxRuntimeExports.jsx("div",{className:styles$5.formulaHelpFunctionTitleIcon,onClick:handleClose,children:jsxRuntimeExports.jsx(CloseSingle,{})})]})]}),jsxRuntimeExports.jsx("div",{className:styles$5.formulaHelpFunctionContent,style:{height:contentVisible?"unset":0,padding:contentVisible?"revert-layer":0},children:jsxRuntimeExports.jsxs("div",{className:styles$5.formulaHelpFunctionContentInner,children:[jsxRuntimeExports.jsx(Params,{title:localeService.t("formula.prompt.helpExample"),value:`${functionInfo.functionName}(${functionInfo.functionParameter.map(item=>item.example).join(",")})`}),jsxRuntimeExports.jsx(Params,{title:localeService.t("formula.prompt.helpAbstract"),value:functionInfo.description}),functionInfo&&functionInfo.functionParameter&&functionInfo.functionParameter.map((item,i)=>jsxRuntimeExports.jsx(Params,{className:paramIndex===i?styles$5.formulaHelpFunctionActive:"",title:item.name,value:`${item.require?required:optional} ${item.detail}`},i))]})})]}):jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment,{})}):visible?jsxRuntimeExports.jsx("div",{className:styles$5.formulaHelpDecorator,onClick:__name(()=>setHelpVisible(!helpVisible),"onClick"),style:{left:decoratorPosition.left-24,top:decoratorPosition.top},children:jsxRuntimeExports.jsx(DetailsSingle,{})}):jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment,{})})}__name(HelpFunction,"HelpFunction");const Params=__name(props=>jsxRuntimeExports.jsxs("div",{className:styles$5.formulaHelpFunctionContentParams,children:[jsxRuntimeExports.jsx("div",{className:`${styles$5.formulaHelpFunctionContentParamsTitle} ${props.className}`,children:props.title}),jsxRuntimeExports.jsx("div",{className:styles$5.formulaHelpFunctionContentParamsDetail,children:props.value})]}),"Params"),Help=__name(props=>{const{prefix,value,active,onClick}=props;return jsxRuntimeExports.jsxs("div",{className:styles$5.formulaHelpParam,children:[jsxRuntimeExports.jsxs("span",{className:styles$5.formulaHelpParamPrefix,children:[prefix,"("]}),value&&value.map((item,i)=>jsxRuntimeExports.jsxs("span",{className:styles$5.formulaHelpParamItem,children:[jsxRuntimeExports.jsx("span",{className:active===i?styles$5.formulaHelpFunctionActive:styles$5.formulaHelpParamActive,onClick:__name(()=>onClick(i),"onClick"),children:generateParam(item)}),i===value.length-1?"":","]},i)),")"]})},"Help"),formulaSearchFunction="univer-formula-search-function",formulaSearchFunctionItem="univer-formula-search-function-item",formulaSearchFunctionItemName="univer-formula-search-function-item-name",formulaSearchFunctionItemNameLight="univer-formula-search-function-item-name-light",formulaSearchFunctionItemDesc="univer-formula-search-function-item-desc",formulaSearchFunctionItemActive="univer-formula-search-function-item-active",styles$4={formulaSearchFunction,formulaSearchFunctionItem,formulaSearchFunctionItemName,formulaSearchFunctionItemNameLight,formulaSearchFunctionItemDesc,formulaSearchFunctionItemActive};function SearchFunction(){const[visible,setVisible]=require$$0.useState(!1),[active,setActive]=require$$0.useState(0),[offset,setOffset]=require$$0.useState([0,0]),[searchList,setSearchList]=require$$0.useState([]),[searchText,setSearchText]=require$$0.useState(""),ulRef=require$$0.useRef(null),promptService=core.useDependency(IFormulaPromptService),univerInstanceService=core.useDependency(core.IUniverInstanceService),editorService=core.useDependency(ui.IEditorService);require$$0.useEffect(()=>{let updatedSearchList=[],updatedActive=0;const subscribeSearch=promptService.search$.subscribe(params=>{const{visible:visible2,searchText:searchText2,searchList:searchList2}=params;if(!visible2){setVisible(visible2);return}const position=getPosition();if(position==null)return;const{left,top,height}=position;setSearchText(searchText2),setSearchList(searchList2),updatedSearchList=searchList2,setOffset([left,top+height]),setVisible(visible2),setActive(0),updatedActive=0}),subscribeNavigate=promptService.navigate$.subscribe(params=>{const{direction}=params;if(direction===core.Direction.UP){let nextActive=updatedActive-1;nextActive=nextActive<0?updatedSearchList.length-1:nextActive,setActive(nextActive),updatedActive=nextActive}else if(direction===core.Direction.DOWN){let nextActive=updatedActive+1;nextActive=nextActive>=updatedSearchList.length?0:nextActive,setActive(nextActive),updatedActive=nextActive}scrollToVisible(updatedActive)}),subscribeAccept=promptService.accept$.subscribe(params=>{const functionName=updatedSearchList[updatedActive].name;promptService.acceptFormulaName(functionName)});return()=>{subscribeSearch==null||subscribeSearch.unsubscribe(),subscribeNavigate==null||subscribeNavigate.unsubscribe(),subscribeAccept==null||subscribeAccept.unsubscribe()}},[]);function getPosition(){const editorUnitId=univerInstanceService.getCurrentUniverDocInstance().getUnitId();if(!editorService.isEditor(editorUnitId))return;const editor=editorService.getEditor(editorUnitId);return editor==null?void 0:editor.getBoundingClientRect()}__name(getPosition,"getPosition");function handleLiMouseEnter(index){setActive(index)}__name(handleLiMouseEnter,"handleLiMouseEnter");function handleLiMouseLeave(){setActive(-1)}__name(handleLiMouseLeave,"handleLiMouseLeave");function scrollToVisible(liIndex){var _a23;const liElement=(_a23=ulRef.current)==null?void 0:_a23.querySelectorAll(`.${styles$4.formulaSearchFunctionItem}`)[liIndex];if(!liElement)return;const ulElement=liElement.parentNode;if(!ulElement)return;const ulTop=ulElement.getBoundingClientRect().top,ulHeight=ulElement.offsetHeight,liRect=liElement.getBoundingClientRect(),liTop=liRect.top,liHeight=liRect.height;if(liTop>=0&&liTop>ulTop&&liTop-ulTop+liHeight<=ulHeight)return;const scrollTo=liElement.offsetTop-(ulHeight-liHeight)/2;ulElement.scrollTo({top:scrollTo,behavior:"smooth"})}return __name(scrollToVisible,"scrollToVisible"),searchList.length>0&&jsxRuntimeExports.jsx(design.Popup,{visible,offset,children:jsxRuntimeExports.jsx("ul",{className:styles$4.formulaSearchFunction,ref:ulRef,children:searchList.map((item,index)=>jsxRuntimeExports.jsxs("li",{className:active===index?`${styles$4.formulaSearchFunctionItem} ${styles$4.formulaSearchFunctionItemActive}`:styles$4.formulaSearchFunctionItem,onMouseEnter:__name(()=>handleLiMouseEnter(index),"onMouseEnter"),onMouseLeave:handleLiMouseLeave,onClick:__name(()=>promptService.acceptFormulaName(item.name),"onClick"),children:[jsxRuntimeExports.jsxs("span",{className:styles$4.formulaSearchFunctionItemName,children:[jsxRuntimeExports.jsx("span",{className:styles$4.formulaSearchFunctionItemNameLight,children:item.name.substring(0,searchText.length)}),jsxRuntimeExports.jsx("span",{children:item.name.slice(searchText.length)})]}),jsxRuntimeExports.jsx("span",{className:styles$4.formulaSearchFunctionItemDesc,children:item.desc})]},index))})})}__name(SearchFunction,"SearchFunction");function RenderFormulaPromptContent(){return jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment,{children:[jsxRuntimeExports.jsx(SearchFunction,{}),jsxRuntimeExports.jsx(HelpFunction,{})]})}__name(RenderFormulaPromptContent,"RenderFormulaPromptContent");const formulaMoreFunctions="univer-formula-more-functions",formulaMoreFunctionsOperation="univer-formula-more-functions-operation",styles$3={formulaMoreFunctions,formulaMoreFunctionsOperation};function FunctionHelp(props){const{prefix,value}=props;return jsxRuntimeExports.jsxs("div",{children:[jsxRuntimeExports.jsxs("span",{children:[prefix,"("]}),value&&value.map((item,i)=>jsxRuntimeExports.jsxs("span",{children:[jsxRuntimeExports.jsx("span",{children:generateParam(item)}),i===value.length-1?"":","]},i)),")"]})}__name(FunctionHelp,"FunctionHelp");const formulaFunctionParams="univer-formula-function-params",formulaFunctionParamsTitle="univer-formula-function-params-title",formulaFunctionParamsDetail="univer-formula-function-params-detail",styles$2={formulaFunctionParams,formulaFunctionParamsTitle,formulaFunctionParamsDetail};function FunctionParams(props){const{className,value,title}=props;return jsxRuntimeExports.jsxs("div",{className:styles$2.formulaFunctionParams,children:[jsxRuntimeExports.jsx("div",{className:`${styles$2.formulaFunctionParamsTitle} ${className}`,children:title}),jsxRuntimeExports.jsx("div",{className:styles$2.formulaFunctionParamsDetail,children:value})]})}__name(FunctionParams,"FunctionParams");const formulaInputParamsList="univer-formula-input-params-list",formulaInputParamsListItemName="univer-formula-input-params-list-item-name",formulaInputParamsListItemSelector="univer-formula-input-params-list-item-selector",styles$1={formulaInputParamsList,formulaInputParamsListItemName,formulaInputParamsListItemSelector};function InputParams(props){const{functionInfo,onChange}=props;if(!functionInfo)return null;require$$0.useState([]);const[functionParameter,setFunctionParameter]=require$$0.useState(functionInfo.functionParameter),[activeIndex,setActiveIndex]=require$$0.useState(-1);return jsxRuntimeExports.jsxs("div",{className:styles$1.formulaInputParams,children:[jsxRuntimeExports.jsx("div",{className:styles$1.formulaInputParamsList,children:functionParameter.map((item,i)=>jsxRuntimeExports.jsxs("div",{children:[jsxRuntimeExports.jsx("div",{className:styles$1.formulaInputParamsListItemName,children:item.name}),jsxRuntimeExports.jsx("div",{className:styles$1.formulaInputParamsListItemSelector})]},i))}),jsxRuntimeExports.jsx("div",{className:styles$1.formulaInputParamsInfo,children:jsxRuntimeExports.jsx(FunctionParams,{title:activeIndex===-1?jsxRuntimeExports.jsx(FunctionHelp,{prefix:functionInfo.functionName,value:functionParameter}):functionParameter[activeIndex].name,value:activeIndex===-1?functionInfo.description:functionParameter[activeIndex].detail})})]})}__name(InputParams,"InputParams");const PLUGIN_CONFIG_KEY_BASE="sheets-formula.base.config",defaultPluginBaseConfig={},PLUGIN_CONFIG_KEY_REMOTE="sheets-formula.remote.config",defaultPluginRemoteConfig={},PLUGIN_CONFIG_KEY_MOBILE="sheets-formula.mobile.config",defaultPluginMobileConfig={},FUNCTION_LIST_ARRAY=[],FUNCTION_LIST_COMPATIBILITY=[{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.BETADIST,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.BETADIST.description",abstract:"formula.functionList.BETADIST.abstract",functionParameter:[{name:"formula.functionList.BETADIST.functionParameter.number1.name",detail:"formula.functionList.BETADIST.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.BETADIST.functionParameter.number2.name",detail:"formula.functionList.BETADIST.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.BETAINV,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.BETAINV.description",abstract:"formula.functionList.BETAINV.abstract",functionParameter:[{name:"formula.functionList.BETAINV.functionParameter.number1.name",detail:"formula.functionList.BETAINV.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.BETAINV.functionParameter.number2.name",detail:"formula.functionList.BETAINV.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.BINOMDIST,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.BINOMDIST.description",abstract:"formula.functionList.BINOMDIST.abstract",functionParameter:[{name:"formula.functionList.BINOMDIST.functionParameter.number1.name",detail:"formula.functionList.BINOMDIST.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.BINOMDIST.functionParameter.number2.name",detail:"formula.functionList.BINOMDIST.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.CHIDIST,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.CHIDIST.description",abstract:"formula.functionList.CHIDIST.abstract",functionParameter:[{name:"formula.functionList.CHIDIST.functionParameter.number1.name",detail:"formula.functionList.CHIDIST.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.CHIDIST.functionParameter.number2.name",detail:"formula.functionList.CHIDIST.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.CHIINV,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.CHIINV.description",abstract:"formula.functionList.CHIINV.abstract",functionParameter:[{name:"formula.functionList.CHIINV.functionParameter.number1.name",detail:"formula.functionList.CHIINV.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.CHIINV.functionParameter.number2.name",detail:"formula.functionList.CHIINV.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.CHITEST,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.CHITEST.description",abstract:"formula.functionList.CHITEST.abstract",functionParameter:[{name:"formula.functionList.CHITEST.functionParameter.number1.name",detail:"formula.functionList.CHITEST.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.CHITEST.functionParameter.number2.name",detail:"formula.functionList.CHITEST.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.CONFIDENCE,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.CONFIDENCE.description",abstract:"formula.functionList.CONFIDENCE.abstract",functionParameter:[{name:"formula.functionList.CONFIDENCE.functionParameter.number1.name",detail:"formula.functionList.CONFIDENCE.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.CONFIDENCE.functionParameter.number2.name",detail:"formula.functionList.CONFIDENCE.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.COVAR,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.COVAR.description",abstract:"formula.functionList.COVAR.abstract",functionParameter:[{name:"formula.functionList.COVAR.functionParameter.number1.name",detail:"formula.functionList.COVAR.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.COVAR.functionParameter.number2.name",detail:"formula.functionList.COVAR.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.CRITBINOM,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.CRITBINOM.description",abstract:"formula.functionList.CRITBINOM.abstract",functionParameter:[{name:"formula.functionList.CRITBINOM.functionParameter.number1.name",detail:"formula.functionList.CRITBINOM.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.CRITBINOM.functionParameter.number2.name",detail:"formula.functionList.CRITBINOM.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.EXPONDIST,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.EXPONDIST.description",abstract:"formula.functionList.EXPONDIST.abstract",functionParameter:[{name:"formula.functionList.EXPONDIST.functionParameter.number1.name",detail:"formula.functionList.EXPONDIST.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.EXPONDIST.functionParameter.number2.name",detail:"formula.functionList.EXPONDIST.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.FDIST,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.FDIST.description",abstract:"formula.functionList.FDIST.abstract",functionParameter:[{name:"formula.functionList.FDIST.functionParameter.number1.name",detail:"formula.functionList.FDIST.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.FDIST.functionParameter.number2.name",detail:"formula.functionList.FDIST.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.FINV,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.FINV.description",abstract:"formula.functionList.FINV.abstract",functionParameter:[{name:"formula.functionList.FINV.functionParameter.number1.name",detail:"formula.functionList.FINV.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.FINV.functionParameter.number2.name",detail:"formula.functionList.FINV.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.FTEST,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.FTEST.description",abstract:"formula.functionList.FTEST.abstract",functionParameter:[{name:"formula.functionList.FTEST.functionParameter.number1.name",detail:"formula.functionList.FTEST.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.FTEST.functionParameter.number2.name",detail:"formula.functionList.FTEST.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.GAMMADIST,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.GAMMADIST.description",abstract:"formula.functionList.GAMMADIST.abstract",functionParameter:[{name:"formula.functionList.GAMMADIST.functionParameter.number1.name",detail:"formula.functionList.GAMMADIST.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.GAMMADIST.functionParameter.number2.name",detail:"formula.functionList.GAMMADIST.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.GAMMAINV,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.GAMMAINV.description",abstract:"formula.functionList.GAMMAINV.abstract",functionParameter:[{name:"formula.functionList.GAMMAINV.functionParameter.number1.name",detail:"formula.functionList.GAMMAINV.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.GAMMAINV.functionParameter.number2.name",detail:"formula.functionList.GAMMAINV.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.HYPGEOMDIST,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.HYPGEOMDIST.description",abstract:"formula.functionList.HYPGEOMDIST.abstract",functionParameter:[{name:"formula.functionList.HYPGEOMDIST.functionParameter.number1.name",detail:"formula.functionList.HYPGEOMDIST.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.HYPGEOMDIST.functionParameter.number2.name",detail:"formula.functionList.HYPGEOMDIST.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.LOGINV,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.LOGINV.description",abstract:"formula.functionList.LOGINV.abstract",functionParameter:[{name:"formula.functionList.LOGINV.functionParameter.number1.name",detail:"formula.functionList.LOGINV.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.LOGINV.functionParameter.number2.name",detail:"formula.functionList.LOGINV.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.LOGNORMDIST,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.LOGNORMDIST.description",abstract:"formula.functionList.LOGNORMDIST.abstract",functionParameter:[{name:"formula.functionList.LOGNORMDIST.functionParameter.number1.name",detail:"formula.functionList.LOGNORMDIST.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.LOGNORMDIST.functionParameter.number2.name",detail:"formula.functionList.LOGNORMDIST.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.MODE,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.MODE.description",abstract:"formula.functionList.MODE.abstract",functionParameter:[{name:"formula.functionList.MODE.functionParameter.number1.name",detail:"formula.functionList.MODE.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.MODE.functionParameter.number2.name",detail:"formula.functionList.MODE.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.NEGBINOMDIST,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.NEGBINOMDIST.description",abstract:"formula.functionList.NEGBINOMDIST.abstract",functionParameter:[{name:"formula.functionList.NEGBINOMDIST.functionParameter.number1.name",detail:"formula.functionList.NEGBINOMDIST.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.NEGBINOMDIST.functionParameter.number2.name",detail:"formula.functionList.NEGBINOMDIST.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.NORMDIST,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.NORMDIST.description",abstract:"formula.functionList.NORMDIST.abstract",functionParameter:[{name:"formula.functionList.NORMDIST.functionParameter.number1.name",detail:"formula.functionList.NORMDIST.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.NORMDIST.functionParameter.number2.name",detail:"formula.functionList.NORMDIST.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.NORMINV,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.NORMINV.description",abstract:"formula.functionList.NORMINV.abstract",functionParameter:[{name:"formula.functionList.NORMINV.functionParameter.number1.name",detail:"formula.functionList.NORMINV.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.NORMINV.functionParameter.number2.name",detail:"formula.functionList.NORMINV.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.NORMSDIST,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.NORMSDIST.description",abstract:"formula.functionList.NORMSDIST.abstract",functionParameter:[{name:"formula.functionList.NORMSDIST.functionParameter.number1.name",detail:"formula.functionList.NORMSDIST.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.NORMSDIST.functionParameter.number2.name",detail:"formula.functionList.NORMSDIST.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.NORMSINV,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.NORMSINV.description",abstract:"formula.functionList.NORMSINV.abstract",functionParameter:[{name:"formula.functionList.NORMSINV.functionParameter.number1.name",detail:"formula.functionList.NORMSINV.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.NORMSINV.functionParameter.number2.name",detail:"formula.functionList.NORMSINV.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.PERCENTILE,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.PERCENTILE.description",abstract:"formula.functionList.PERCENTILE.abstract",functionParameter:[{name:"formula.functionList.PERCENTILE.functionParameter.number1.name",detail:"formula.functionList.PERCENTILE.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.PERCENTILE.functionParameter.number2.name",detail:"formula.functionList.PERCENTILE.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.PERCENTRANK,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.PERCENTRANK.description",abstract:"formula.functionList.PERCENTRANK.abstract",functionParameter:[{name:"formula.functionList.PERCENTRANK.functionParameter.number1.name",detail:"formula.functionList.PERCENTRANK.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.PERCENTRANK.functionParameter.number2.name",detail:"formula.functionList.PERCENTRANK.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.POISSON,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.POISSON.description",abstract:"formula.functionList.POISSON.abstract",functionParameter:[{name:"formula.functionList.POISSON.functionParameter.number1.name",detail:"formula.functionList.POISSON.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.POISSON.functionParameter.number2.name",detail:"formula.functionList.POISSON.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.QUARTILE,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.QUARTILE.description",abstract:"formula.functionList.QUARTILE.abstract",functionParameter:[{name:"formula.functionList.QUARTILE.functionParameter.number1.name",detail:"formula.functionList.QUARTILE.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.QUARTILE.functionParameter.number2.name",detail:"formula.functionList.QUARTILE.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.RANK,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.RANK.description",abstract:"formula.functionList.RANK.abstract",functionParameter:[{name:"formula.functionList.RANK.functionParameter.number.name",detail:"formula.functionList.RANK.functionParameter.number.detail",example:"A3",require:1,repeat:0},{name:"formula.functionList.RANK.functionParameter.ref.name",detail:"formula.functionList.RANK.functionParameter.ref.detail",example:"A2:A6",require:1,repeat:0},{name:"formula.functionList.RANK.functionParameter.order.name",detail:"formula.functionList.RANK.functionParameter.order.detail",example:"1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.STDEV,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.STDEV.description",abstract:"formula.functionList.STDEV.abstract",functionParameter:[{name:"formula.functionList.STDEV.functionParameter.number1.name",detail:"formula.functionList.STDEV.functionParameter.number1.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.STDEV.functionParameter.number2.name",detail:"formula.functionList.STDEV.functionParameter.number2.detail",example:"2",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.STDEVP,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.STDEVP.description",abstract:"formula.functionList.STDEVP.abstract",functionParameter:[{name:"formula.functionList.STDEVP.functionParameter.number1.name",detail:"formula.functionList.STDEVP.functionParameter.number1.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.STDEVP.functionParameter.number2.name",detail:"formula.functionList.STDEVP.functionParameter.number2.detail",example:"2",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.TDIST,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.TDIST.description",abstract:"formula.functionList.TDIST.abstract",functionParameter:[{name:"formula.functionList.TDIST.functionParameter.number1.name",detail:"formula.functionList.TDIST.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.TDIST.functionParameter.number2.name",detail:"formula.functionList.TDIST.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.TINV,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.TINV.description",abstract:"formula.functionList.TINV.abstract",functionParameter:[{name:"formula.functionList.TINV.functionParameter.number1.name",detail:"formula.functionList.TINV.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.TINV.functionParameter.number2.name",detail:"formula.functionList.TINV.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.TTEST,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.TTEST.description",abstract:"formula.functionList.TTEST.abstract",functionParameter:[{name:"formula.functionList.TTEST.functionParameter.number1.name",detail:"formula.functionList.TTEST.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.TTEST.functionParameter.number2.name",detail:"formula.functionList.TTEST.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.VAR,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.VAR.description",abstract:"formula.functionList.VAR.abstract",functionParameter:[{name:"formula.functionList.VAR.functionParameter.number1.name",detail:"formula.functionList.VAR.functionParameter.number1.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.VAR.functionParameter.number2.name",detail:"formula.functionList.VAR.functionParameter.number2.detail",example:"2",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.VARP,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.VARP.description",abstract:"formula.functionList.VARP.abstract",functionParameter:[{name:"formula.functionList.VARP.functionParameter.number1.name",detail:"formula.functionList.VARP.functionParameter.number1.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.VARP.functionParameter.number2.name",detail:"formula.functionList.VARP.functionParameter.number2.detail",example:"2",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.WEIBULL,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.WEIBULL.description",abstract:"formula.functionList.WEIBULL.abstract",functionParameter:[{name:"formula.functionList.WEIBULL.functionParameter.number1.name",detail:"formula.functionList.WEIBULL.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.WEIBULL.functionParameter.number2.name",detail:"formula.functionList.WEIBULL.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.ZTEST,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.ZTEST.description",abstract:"formula.functionList.ZTEST.abstract",functionParameter:[{name:"formula.functionList.ZTEST.functionParameter.number1.name",detail:"formula.functionList.ZTEST.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.ZTEST.functionParameter.number2.name",detail:"formula.functionList.ZTEST.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]}],FUNCTION_LIST_CUBE=[{functionName:engineFormula.FUNCTION_NAMES_CUBE.CUBEKPIMEMBER,functionType:engineFormula.FunctionType.Cube,description:"formula.functionList.CUBEKPIMEMBER.description",abstract:"formula.functionList.CUBEKPIMEMBER.abstract",functionParameter:[{name:"formula.functionList.CUBEKPIMEMBER.functionParameter.number1.name",detail:"formula.functionList.CUBEKPIMEMBER.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.CUBEKPIMEMBER.functionParameter.number2.name",detail:"formula.functionList.CUBEKPIMEMBER.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_CUBE.CUBEMEMBER,functionType:engineFormula.FunctionType.Cube,description:"formula.functionList.CUBEMEMBER.description",abstract:"formula.functionList.CUBEMEMBER.abstract",functionParameter:[{name:"formula.functionList.CUBEMEMBER.functionParameter.number1.name",detail:"formula.functionList.CUBEMEMBER.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.CUBEMEMBER.functionParameter.number2.name",detail:"formula.functionList.CUBEMEMBER.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_CUBE.CUBEMEMBERPROPERTY,functionType:engineFormula.FunctionType.Cube,description:"formula.functionList.CUBEMEMBERPROPERTY.description",abstract:"formula.functionList.CUBEMEMBERPROPERTY.abstract",functionParameter:[{name:"formula.functionList.CUBEMEMBERPROPERTY.functionParameter.number1.name",detail:"formula.functionList.CUBEMEMBERPROPERTY.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.CUBEMEMBERPROPERTY.functionParameter.number2.name",detail:"formula.functionList.CUBEMEMBERPROPERTY.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_CUBE.CUBERANKEDMEMBER,functionType:engineFormula.FunctionType.Cube,description:"formula.functionList.CUBERANKEDMEMBER.description",abstract:"formula.functionList.CUBERANKEDMEMBER.abstract",functionParameter:[{name:"formula.functionList.CUBERANKEDMEMBER.functionParameter.number1.name",detail:"formula.functionList.CUBERANKEDMEMBER.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.CUBERANKEDMEMBER.functionParameter.number2.name",detail:"formula.functionList.CUBERANKEDMEMBER.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_CUBE.CUBESET,functionType:engineFormula.FunctionType.Cube,description:"formula.functionList.CUBESET.description",abstract:"formula.functionList.CUBESET.abstract",functionParameter:[{name:"formula.functionList.CUBESET.functionParameter.number1.name",detail:"formula.functionList.CUBESET.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.CUBESET.functionParameter.number2.name",detail:"formula.functionList.CUBESET.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_CUBE.CUBESETCOUNT,functionType:engineFormula.FunctionType.Cube,description:"formula.functionList.CUBESETCOUNT.description",abstract:"formula.functionList.CUBESETCOUNT.abstract",functionParameter:[{name:"formula.functionList.CUBESETCOUNT.functionParameter.number1.name",detail:"formula.functionList.CUBESETCOUNT.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.CUBESETCOUNT.functionParameter.number2.name",detail:"formula.functionList.CUBESETCOUNT.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_CUBE.CUBEVALUE,functionType:engineFormula.FunctionType.Cube,description:"formula.functionList.CUBEVALUE.description",abstract:"formula.functionList.CUBEVALUE.abstract",functionParameter:[{name:"formula.functionList.CUBEVALUE.functionParameter.number1.name",detail:"formula.functionList.CUBEVALUE.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.CUBEVALUE.functionParameter.number2.name",detail:"formula.functionList.CUBEVALUE.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]}],FUNCTION_LIST_DATABASE=[{functionName:engineFormula.FUNCTION_NAMES_DATABASE.DAVERAGE,functionType:engineFormula.FunctionType.Database,description:"formula.functionList.DAVERAGE.description",abstract:"formula.functionList.DAVERAGE.abstract",functionParameter:[{name:"formula.functionList.DAVERAGE.functionParameter.number1.name",detail:"formula.functionList.DAVERAGE.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.DAVERAGE.functionParameter.number2.name",detail:"formula.functionList.DAVERAGE.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATABASE.DCOUNT,functionType:engineFormula.FunctionType.Database,description:"formula.functionList.DCOUNT.description",abstract:"formula.functionList.DCOUNT.abstract",functionParameter:[{name:"formula.functionList.DCOUNT.functionParameter.number1.name",detail:"formula.functionList.DCOUNT.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.DCOUNT.functionParameter.number2.name",detail:"formula.functionList.DCOUNT.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATABASE.DCOUNTA,functionType:engineFormula.FunctionType.Database,description:"formula.functionList.DCOUNTA.description",abstract:"formula.functionList.DCOUNTA.abstract",functionParameter:[{name:"formula.functionList.DCOUNTA.functionParameter.number1.name",detail:"formula.functionList.DCOUNTA.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.DCOUNTA.functionParameter.number2.name",detail:"formula.functionList.DCOUNTA.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATABASE.DGET,functionType:engineFormula.FunctionType.Database,description:"formula.functionList.DGET.description",abstract:"formula.functionList.DGET.abstract",functionParameter:[{name:"formula.functionList.DGET.functionParameter.number1.name",detail:"formula.functionList.DGET.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.DGET.functionParameter.number2.name",detail:"formula.functionList.DGET.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATABASE.DMAX,functionType:engineFormula.FunctionType.Database,description:"formula.functionList.DMAX.description",abstract:"formula.functionList.DMAX.abstract",functionParameter:[{name:"formula.functionList.DMAX.functionParameter.number1.name",detail:"formula.functionList.DMAX.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.DMAX.functionParameter.number2.name",detail:"formula.functionList.DMAX.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATABASE.DMIN,functionType:engineFormula.FunctionType.Database,description:"formula.functionList.DMIN.description",abstract:"formula.functionList.DMIN.abstract",functionParameter:[{name:"formula.functionList.DMIN.functionParameter.number1.name",detail:"formula.functionList.DMIN.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.DMIN.functionParameter.number2.name",detail:"formula.functionList.DMIN.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATABASE.DPRODUCT,functionType:engineFormula.FunctionType.Database,description:"formula.functionList.DPRODUCT.description",abstract:"formula.functionList.DPRODUCT.abstract",functionParameter:[{name:"formula.functionList.DPRODUCT.functionParameter.number1.name",detail:"formula.functionList.DPRODUCT.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.DPRODUCT.functionParameter.number2.name",detail:"formula.functionList.DPRODUCT.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATABASE.DSTDEV,functionType:engineFormula.FunctionType.Database,description:"formula.functionList.DSTDEV.description",abstract:"formula.functionList.DSTDEV.abstract",functionParameter:[{name:"formula.functionList.DSTDEV.functionParameter.number1.name",detail:"formula.functionList.DSTDEV.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.DSTDEV.functionParameter.number2.name",detail:"formula.functionList.DSTDEV.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATABASE.DSTDEVP,functionType:engineFormula.FunctionType.Database,description:"formula.functionList.DSTDEVP.description",abstract:"formula.functionList.DSTDEVP.abstract",functionParameter:[{name:"formula.functionList.DSTDEVP.functionParameter.number1.name",detail:"formula.functionList.DSTDEVP.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.DSTDEVP.functionParameter.number2.name",detail:"formula.functionList.DSTDEVP.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATABASE.DSUM,functionType:engineFormula.FunctionType.Database,description:"formula.functionList.DSUM.description",abstract:"formula.functionList.DSUM.abstract",functionParameter:[{name:"formula.functionList.DSUM.functionParameter.number1.name",detail:"formula.functionList.DSUM.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.DSUM.functionParameter.number2.name",detail:"formula.functionList.DSUM.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATABASE.DVAR,functionType:engineFormula.FunctionType.Database,description:"formula.functionList.DVAR.description",abstract:"formula.functionList.DVAR.abstract",functionParameter:[{name:"formula.functionList.DVAR.functionParameter.number1.name",detail:"formula.functionList.DVAR.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.DVAR.functionParameter.number2.name",detail:"formula.functionList.DVAR.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATABASE.DVARP,functionType:engineFormula.FunctionType.Database,description:"formula.functionList.DVARP.description",abstract:"formula.functionList.DVARP.abstract",functionParameter:[{name:"formula.functionList.DVARP.functionParameter.number1.name",detail:"formula.functionList.DVARP.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.DVARP.functionParameter.number2.name",detail:"formula.functionList.DVARP.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]}],FUNCTION_LIST_DATE=[{functionName:engineFormula.FUNCTION_NAMES_DATE.DATE,functionType:engineFormula.FunctionType.Date,description:"formula.functionList.DATE.description",abstract:"formula.functionList.DATE.abstract",functionParameter:[{name:"formula.functionList.DATE.functionParameter.year.name",detail:"formula.functionList.DATE.functionParameter.year.detail",example:"2024",require:1,repeat:0},{name:"formula.functionList.DATE.functionParameter.month.name",detail:"formula.functionList.DATE.functionParameter.month.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.DATE.functionParameter.day.name",detail:"formula.functionList.DATE.functionParameter.day.detail",example:"1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATE.DATEDIF,functionType:engineFormula.FunctionType.Date,description:"formula.functionList.DATEDIF.description",abstract:"formula.functionList.DATEDIF.abstract",functionParameter:[{name:"formula.functionList.DATEDIF.functionParameter.startDate.name",detail:"formula.functionList.DATEDIF.functionParameter.startDate.detail",example:'"2001-6-1"',require:1,repeat:0},{name:"formula.functionList.DATEDIF.functionParameter.endDate.name",detail:"formula.functionList.DATEDIF.functionParameter.endDate.detail",example:'"2002-8-15"',require:1,repeat:0},{name:"formula.functionList.DATEDIF.functionParameter.method.name",detail:"formula.functionList.DATEDIF.functionParameter.method.detail",example:'"D"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATE.DATEVALUE,functionType:engineFormula.FunctionType.Date,description:"formula.functionList.DATEVALUE.description",abstract:"formula.functionList.DATEVALUE.abstract",functionParameter:[{name:"formula.functionList.DATEVALUE.functionParameter.dateText.name",detail:"formula.functionList.DATEVALUE.functionParameter.dateText.detail",example:'"2024-8-8"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATE.DAY,functionType:engineFormula.FunctionType.Date,description:"formula.functionList.DAY.description",abstract:"formula.functionList.DAY.abstract",functionParameter:[{name:"formula.functionList.DAY.functionParameter.serialNumber.name",detail:"formula.functionList.DAY.functionParameter.serialNumber.detail",example:'"1969-7-20"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATE.DAYS,functionType:engineFormula.FunctionType.Date,description:"formula.functionList.DAYS.description",abstract:"formula.functionList.DAYS.abstract",functionParameter:[{name:"formula.functionList.DAYS.functionParameter.endDate.name",detail:"formula.functionList.DAYS.functionParameter.endDate.detail",example:'"2021-12-31"',require:1,repeat:0},{name:"formula.functionList.DAYS.functionParameter.startDate.name",detail:"formula.functionList.DAYS.functionParameter.startDate.detail",example:'"2021-1-1"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATE.DAYS360,functionType:engineFormula.FunctionType.Date,description:"formula.functionList.DAYS360.description",abstract:"formula.functionList.DAYS360.abstract",functionParameter:[{name:"formula.functionList.DAYS360.functionParameter.startDate.name",detail:"formula.functionList.DAYS360.functionParameter.startDate.detail",example:'"2021-1-29"',require:1,repeat:0},{name:"formula.functionList.DAYS360.functionParameter.endDate.name",detail:"formula.functionList.DAYS360.functionParameter.endDate.detail",example:'"2021-3-31"',require:1,repeat:0},{name:"formula.functionList.DAYS360.functionParameter.method.name",detail:"formula.functionList.DAYS360.functionParameter.method.detail",example:"1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATE.EDATE,functionType:engineFormula.FunctionType.Date,description:"formula.functionList.EDATE.description",abstract:"formula.functionList.EDATE.abstract",functionParameter:[{name:"formula.functionList.EDATE.functionParameter.startDate.name",detail:"formula.functionList.EDATE.functionParameter.startDate.detail",example:"A1",require:1,repeat:0},{name:"formula.functionList.EDATE.functionParameter.months.name",detail:"formula.functionList.EDATE.functionParameter.months.detail",example:"1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATE.EOMONTH,functionType:engineFormula.FunctionType.Date,description:"formula.functionList.EOMONTH.description",abstract:"formula.functionList.EOMONTH.abstract",functionParameter:[{name:"formula.functionList.EOMONTH.functionParameter.startDate.name",detail:"formula.functionList.EOMONTH.functionParameter.startDate.detail",example:'"2011-1-1"',require:1,repeat:0},{name:"formula.functionList.EOMONTH.functionParameter.months.name",detail:"formula.functionList.EOMONTH.functionParameter.months.detail",example:"1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATE.HOUR,functionType:engineFormula.FunctionType.Date,description:"formula.functionList.HOUR.description",abstract:"formula.functionList.HOUR.abstract",functionParameter:[{name:"formula.functionList.HOUR.functionParameter.serialNumber.name",detail:"formula.functionList.HOUR.functionParameter.serialNumber.detail",example:'"2011-7-18 7:45"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATE.ISOWEEKNUM,functionType:engineFormula.FunctionType.Date,description:"formula.functionList.ISOWEEKNUM.description",abstract:"formula.functionList.ISOWEEKNUM.abstract",functionParameter:[{name:"formula.functionList.ISOWEEKNUM.functionParameter.date.name",detail:"formula.functionList.ISOWEEKNUM.functionParameter.date.detail",example:'"2012-3-9"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATE.MINUTE,functionType:engineFormula.FunctionType.Date,description:"formula.functionList.MINUTE.description",abstract:"formula.functionList.MINUTE.abstract",functionParameter:[{name:"formula.functionList.MINUTE.functionParameter.serialNumber.name",detail:"formula.functionList.MINUTE.functionParameter.serialNumber.detail",example:'"12:45"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATE.MONTH,functionType:engineFormula.FunctionType.Date,description:"formula.functionList.MONTH.description",abstract:"formula.functionList.MONTH.abstract",functionParameter:[{name:"formula.functionList.MONTH.functionParameter.serialNumber.name",detail:"formula.functionList.MONTH.functionParameter.serialNumber.detail",example:'"1969-7-20"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATE.NETWORKDAYS,functionType:engineFormula.FunctionType.Date,description:"formula.functionList.NETWORKDAYS.description",abstract:"formula.functionList.NETWORKDAYS.abstract",functionParameter:[{name:"formula.functionList.NETWORKDAYS.functionParameter.startDate.name",detail:"formula.functionList.NETWORKDAYS.functionParameter.startDate.detail",example:'"2012-10-1"',require:1,repeat:0},{name:"formula.functionList.NETWORKDAYS.functionParameter.endDate.name",detail:"formula.functionList.NETWORKDAYS.functionParameter.endDate.detail",example:'"2013-3-1"',require:1,repeat:0},{name:"formula.functionList.NETWORKDAYS.functionParameter.holidays.name",detail:"formula.functionList.NETWORKDAYS.functionParameter.holidays.detail",example:'"2012-11-22"',require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATE.NETWORKDAYS_INTL,functionType:engineFormula.FunctionType.Date,description:"formula.functionList.NETWORKDAYS_INTL.description",abstract:"formula.functionList.NETWORKDAYS_INTL.abstract",functionParameter:[{name:"formula.functionList.NETWORKDAYS_INTL.functionParameter.startDate.name",detail:"formula.functionList.NETWORKDAYS_INTL.functionParameter.startDate.detail",example:'"2012-10-1"',require:1,repeat:0},{name:"formula.functionList.NETWORKDAYS_INTL.functionParameter.endDate.name",detail:"formula.functionList.NETWORKDAYS_INTL.functionParameter.endDate.detail",example:'"2013-3-1"',require:1,repeat:0},{name:"formula.functionList.NETWORKDAYS_INTL.functionParameter.weekend.name",detail:"formula.functionList.NETWORKDAYS_INTL.functionParameter.weekend.detail",example:"6",require:0,repeat:0},{name:"formula.functionList.NETWORKDAYS_INTL.functionParameter.holidays.name",detail:"formula.functionList.NETWORKDAYS_INTL.functionParameter.holidays.detail",example:'"2012-11-22"',require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATE.NOW,functionType:engineFormula.FunctionType.Date,description:"formula.functionList.NOW.description",abstract:"formula.functionList.NOW.abstract",functionParameter:[]},{functionName:engineFormula.FUNCTION_NAMES_DATE.SECOND,functionType:engineFormula.FunctionType.Date,description:"formula.functionList.SECOND.description",abstract:"formula.functionList.SECOND.abstract",functionParameter:[{name:"formula.functionList.SECOND.functionParameter.serialNumber.name",detail:"formula.functionList.SECOND.functionParameter.serialNumber.detail",example:'"4:48:18"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATE.TIME,functionType:engineFormula.FunctionType.Date,description:"formula.functionList.TIME.description",abstract:"formula.functionList.TIME.abstract",functionParameter:[{name:"formula.functionList.TIME.functionParameter.hour.name",detail:"formula.functionList.TIME.functionParameter.hour.detail",example:"15",require:1,repeat:0},{name:"formula.functionList.TIME.functionParameter.minute.name",detail:"formula.functionList.TIME.functionParameter.minute.detail",example:"20",require:1,repeat:0},{name:"formula.functionList.TIME.functionParameter.second.name",detail:"formula.functionList.TIME.functionParameter.second.detail",example:"59",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATE.TIMEVALUE,functionType:engineFormula.FunctionType.Date,description:"formula.functionList.TIMEVALUE.description",abstract:"formula.functionList.TIMEVALUE.abstract",functionParameter:[{name:"formula.functionList.TIMEVALUE.functionParameter.timeText.name",detail:"formula.functionList.TIMEVALUE.functionParameter.timeText.detail",example:'"15:20:59"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATE.TODAY,functionType:engineFormula.FunctionType.Date,description:"formula.functionList.TODAY.description",abstract:"formula.functionList.TODAY.abstract",functionParameter:[]},{functionName:engineFormula.FUNCTION_NAMES_DATE.WEEKDAY,functionType:engineFormula.FunctionType.Date,description:"formula.functionList.WEEKDAY.description",abstract:"formula.functionList.WEEKDAY.abstract",functionParameter:[{name:"formula.functionList.WEEKDAY.functionParameter.serialNumber.name",detail:"formula.functionList.WEEKDAY.functionParameter.serialNumber.detail",example:'"2008-2-14"',require:1,repeat:0},{name:"formula.functionList.WEEKDAY.functionParameter.returnType.name",detail:"formula.functionList.WEEKDAY.functionParameter.returnType.detail",example:"2",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATE.WEEKNUM,functionType:engineFormula.FunctionType.Date,description:"formula.functionList.WEEKNUM.description",abstract:"formula.functionList.WEEKNUM.abstract",functionParameter:[{name:"formula.functionList.WEEKNUM.functionParameter.serialNumber.name",detail:"formula.functionList.WEEKNUM.functionParameter.serialNumber.detail",example:'"2012-3-9"',require:1,repeat:0},{name:"formula.functionList.WEEKNUM.functionParameter.returnType.name",detail:"formula.functionList.WEEKNUM.functionParameter.returnType.detail",example:"2",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATE.WORKDAY,functionType:engineFormula.FunctionType.Date,description:"formula.functionList.WORKDAY.description",abstract:"formula.functionList.WORKDAY.abstract",functionParameter:[{name:"formula.functionList.WORKDAY.functionParameter.startDate.name",detail:"formula.functionList.WORKDAY.functionParameter.startDate.detail",example:'"2008-10-1"',require:1,repeat:0},{name:"formula.functionList.WORKDAY.functionParameter.days.name",detail:"formula.functionList.WORKDAY.functionParameter.days.detail",example:"151",require:1,repeat:0},{name:"formula.functionList.WORKDAY.functionParameter.holidays.name",detail:"formula.functionList.WORKDAY.functionParameter.holidays.detail",example:'"2008-11-26"',require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATE.WORKDAY_INTL,functionType:engineFormula.FunctionType.Date,description:"formula.functionList.WORKDAY_INTL.description",abstract:"formula.functionList.WORKDAY_INTL.abstract",functionParameter:[{name:"formula.functionList.WORKDAY_INTL.functionParameter.startDate.name",detail:"formula.functionList.WORKDAY_INTL.functionParameter.startDate.detail",example:'"2008-10-1"',require:1,repeat:0},{name:"formula.functionList.WORKDAY_INTL.functionParameter.days.name",detail:"formula.functionList.WORKDAY_INTL.functionParameter.days.detail",example:"151",require:1,repeat:0},{name:"formula.functionList.WORKDAY_INTL.functionParameter.weekend.name",detail:"formula.functionList.WORKDAY_INTL.functionParameter.weekend.detail",example:"6",require:0,repeat:0},{name:"formula.functionList.WORKDAY_INTL.functionParameter.holidays.name",detail:"formula.functionList.WORKDAY_INTL.functionParameter.holidays.detail",example:'"2008-11-26"',require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATE.YEAR,functionType:engineFormula.FunctionType.Date,description:"formula.functionList.YEAR.description",abstract:"formula.functionList.YEAR.abstract",functionParameter:[{name:"formula.functionList.YEAR.functionParameter.serialNumber.name",detail:"formula.functionList.YEAR.functionParameter.serialNumber.detail",example:'"1969-7-20"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATE.YEARFRAC,functionType:engineFormula.FunctionType.Date,description:"formula.functionList.YEARFRAC.description",abstract:"formula.functionList.YEARFRAC.abstract",functionParameter:[{name:"formula.functionList.YEARFRAC.functionParameter.startDate.name",detail:"formula.functionList.YEARFRAC.functionParameter.startDate.detail",example:'"2012-1-1"',require:1,repeat:0},{name:"formula.functionList.YEARFRAC.functionParameter.endDate.name",detail:"formula.functionList.YEARFRAC.functionParameter.endDate.detail",example:'"2012-7-30"',require:1,repeat:0},{name:"formula.functionList.YEARFRAC.functionParameter.basis.name",detail:"formula.functionList.YEARFRAC.functionParameter.basis.detail",example:"1",require:0,repeat:0}]}],FUNCTION_LIST_ENGINEERING=[{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.BESSELI,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.BESSELI.description",abstract:"formula.functionList.BESSELI.abstract",functionParameter:[{name:"formula.functionList.BESSELI.functionParameter.x.name",detail:"formula.functionList.BESSELI.functionParameter.x.detail",example:"1.5",require:1,repeat:0},{name:"formula.functionList.BESSELI.functionParameter.n.name",detail:"formula.functionList.BESSELI.functionParameter.n.detail",example:"1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.BESSELJ,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.BESSELJ.description",abstract:"formula.functionList.BESSELJ.abstract",functionParameter:[{name:"formula.functionList.BESSELJ.functionParameter.x.name",detail:"formula.functionList.BESSELJ.functionParameter.x.detail",example:"1.5",require:1,repeat:0},{name:"formula.functionList.BESSELJ.functionParameter.n.name",detail:"formula.functionList.BESSELJ.functionParameter.n.detail",example:"1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.BESSELK,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.BESSELK.description",abstract:"formula.functionList.BESSELK.abstract",functionParameter:[{name:"formula.functionList.BESSELK.functionParameter.x.name",detail:"formula.functionList.BESSELK.functionParameter.x.detail",example:"1.5",require:1,repeat:0},{name:"formula.functionList.BESSELK.functionParameter.n.name",detail:"formula.functionList.BESSELK.functionParameter.n.detail",example:"1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.BESSELY,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.BESSELY.description",abstract:"formula.functionList.BESSELY.abstract",functionParameter:[{name:"formula.functionList.BESSELY.functionParameter.x.name",detail:"formula.functionList.BESSELY.functionParameter.x.detail",example:"1.5",require:1,repeat:0},{name:"formula.functionList.BESSELY.functionParameter.n.name",detail:"formula.functionList.BESSELY.functionParameter.n.detail",example:"1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.BIN2DEC,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.BIN2DEC.description",abstract:"formula.functionList.BIN2DEC.abstract",functionParameter:[{name:"formula.functionList.BIN2DEC.functionParameter.number.name",detail:"formula.functionList.BIN2DEC.functionParameter.number.detail",example:"1100100",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.BIN2HEX,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.BIN2HEX.description",abstract:"formula.functionList.BIN2HEX.abstract",functionParameter:[{name:"formula.functionList.BIN2HEX.functionParameter.number.name",detail:"formula.functionList.BIN2HEX.functionParameter.number.detail",example:"11111011",require:1,repeat:0},{name:"formula.functionList.BIN2HEX.functionParameter.places.name",detail:"formula.functionList.BIN2HEX.functionParameter.places.detail",example:"4",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.BIN2OCT,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.BIN2OCT.description",abstract:"formula.functionList.BIN2OCT.abstract",functionParameter:[{name:"formula.functionList.BIN2OCT.functionParameter.number.name",detail:"formula.functionList.BIN2OCT.functionParameter.number.detail",example:"1001",require:1,repeat:0},{name:"formula.functionList.BIN2OCT.functionParameter.places.name",detail:"formula.functionList.BIN2OCT.functionParameter.places.detail",example:"3",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.BITAND,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.BITAND.description",abstract:"formula.functionList.BITAND.abstract",functionParameter:[{name:"formula.functionList.BITAND.functionParameter.number1.name",detail:"formula.functionList.BITAND.functionParameter.number1.detail",example:"13",require:1,repeat:0},{name:"formula.functionList.BITAND.functionParameter.number2.name",detail:"formula.functionList.BITAND.functionParameter.number2.detail",example:"25",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.BITLSHIFT,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.BITLSHIFT.description",abstract:"formula.functionList.BITLSHIFT.abstract",functionParameter:[{name:"formula.functionList.BITLSHIFT.functionParameter.number.name",detail:"formula.functionList.BITLSHIFT.functionParameter.number.detail",example:"4",require:1,repeat:0},{name:"formula.functionList.BITLSHIFT.functionParameter.shiftAmount.name",detail:"formula.functionList.BITLSHIFT.functionParameter.shiftAmount.detail",example:"2",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.BITOR,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.BITOR.description",abstract:"formula.functionList.BITOR.abstract",functionParameter:[{name:"formula.functionList.BITOR.functionParameter.number1.name",detail:"formula.functionList.BITOR.functionParameter.number1.detail",example:"23",require:1,repeat:0},{name:"formula.functionList.BITOR.functionParameter.number2.name",detail:"formula.functionList.BITOR.functionParameter.number2.detail",example:"10",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.BITRSHIFT,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.BITRSHIFT.description",abstract:"formula.functionList.BITRSHIFT.abstract",functionParameter:[{name:"formula.functionList.BITRSHIFT.functionParameter.number.name",detail:"formula.functionList.BITRSHIFT.functionParameter.number.detail",example:"13",require:1,repeat:0},{name:"formula.functionList.BITRSHIFT.functionParameter.shiftAmount.name",detail:"formula.functionList.BITRSHIFT.functionParameter.shiftAmount.detail",example:"2",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.BITXOR,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.BITXOR.description",abstract:"formula.functionList.BITXOR.abstract",functionParameter:[{name:"formula.functionList.BITXOR.functionParameter.number1.name",detail:"formula.functionList.BITXOR.functionParameter.number1.detail",example:"5",require:1,repeat:0},{name:"formula.functionList.BITXOR.functionParameter.number2.name",detail:"formula.functionList.BITXOR.functionParameter.number2.detail",example:"3",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.COMPLEX,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.COMPLEX.description",abstract:"formula.functionList.COMPLEX.abstract",functionParameter:[{name:"formula.functionList.COMPLEX.functionParameter.realNum.name",detail:"formula.functionList.COMPLEX.functionParameter.realNum.detail",example:"3",require:1,repeat:0},{name:"formula.functionList.COMPLEX.functionParameter.iNum.name",detail:"formula.functionList.COMPLEX.functionParameter.iNum.detail",example:"4",require:1,repeat:0},{name:"formula.functionList.COMPLEX.functionParameter.suffix.name",detail:"formula.functionList.COMPLEX.functionParameter.suffix.detail",example:'"i"',require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.CONVERT,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.CONVERT.description",abstract:"formula.functionList.CONVERT.abstract",functionParameter:[{name:"formula.functionList.CONVERT.functionParameter.number.name",detail:"formula.functionList.CONVERT.functionParameter.number.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.CONVERT.functionParameter.fromUnit.name",detail:"formula.functionList.CONVERT.functionParameter.fromUnit.detail",example:'"lbm"',require:1,repeat:0},{name:"formula.functionList.CONVERT.functionParameter.toUnit.name",detail:"formula.functionList.CONVERT.functionParameter.toUnit.detail",example:'"kg"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.DEC2BIN,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.DEC2BIN.description",abstract:"formula.functionList.DEC2BIN.abstract",functionParameter:[{name:"formula.functionList.DEC2BIN.functionParameter.number.name",detail:"formula.functionList.DEC2BIN.functionParameter.number.detail",example:"9",require:1,repeat:0},{name:"formula.functionList.DEC2BIN.functionParameter.places.name",detail:"formula.functionList.DEC2BIN.functionParameter.places.detail",example:"4",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.DEC2HEX,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.DEC2HEX.description",abstract:"formula.functionList.DEC2HEX.abstract",functionParameter:[{name:"formula.functionList.DEC2HEX.functionParameter.number.name",detail:"formula.functionList.DEC2HEX.functionParameter.number.detail",example:"100",require:1,repeat:0},{name:"formula.functionList.DEC2HEX.functionParameter.places.name",detail:"formula.functionList.DEC2HEX.functionParameter.places.detail",example:"4",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.DEC2OCT,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.DEC2OCT.description",abstract:"formula.functionList.DEC2OCT.abstract",functionParameter:[{name:"formula.functionList.DEC2OCT.functionParameter.number.name",detail:"formula.functionList.DEC2OCT.functionParameter.number.detail",example:"58",require:1,repeat:0},{name:"formula.functionList.DEC2OCT.functionParameter.places.name",detail:"formula.functionList.DEC2OCT.functionParameter.places.detail",example:"3",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.DELTA,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.DELTA.description",abstract:"formula.functionList.DELTA.abstract",functionParameter:[{name:"formula.functionList.DELTA.functionParameter.number1.name",detail:"formula.functionList.DELTA.functionParameter.number1.detail",example:"5",require:1,repeat:0},{name:"formula.functionList.DELTA.functionParameter.number2.name",detail:"formula.functionList.DELTA.functionParameter.number2.detail",example:"4",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.ERF,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.ERF.description",abstract:"formula.functionList.ERF.abstract",functionParameter:[{name:"formula.functionList.ERF.functionParameter.lowerLimit.name",detail:"formula.functionList.ERF.functionParameter.lowerLimit.detail",example:"0.745",require:1,repeat:0},{name:"formula.functionList.ERF.functionParameter.upperLimit.name",detail:"formula.functionList.ERF.functionParameter.upperLimit.detail",example:"2",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.ERF_PRECISE,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.ERF_PRECISE.description",abstract:"formula.functionList.ERF_PRECISE.abstract",functionParameter:[{name:"formula.functionList.ERF_PRECISE.functionParameter.x.name",detail:"formula.functionList.ERF_PRECISE.functionParameter.x.detail",example:"1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.ERFC,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.ERFC.description",abstract:"formula.functionList.ERFC.abstract",functionParameter:[{name:"formula.functionList.ERFC.functionParameter.x.name",detail:"formula.functionList.ERFC.functionParameter.x.detail",example:"1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.ERFC_PRECISE,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.ERFC_PRECISE.description",abstract:"formula.functionList.ERFC_PRECISE.abstract",functionParameter:[{name:"formula.functionList.ERFC_PRECISE.functionParameter.x.name",detail:"formula.functionList.ERFC_PRECISE.functionParameter.x.detail",example:"1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.GESTEP,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.GESTEP.description",abstract:"formula.functionList.GESTEP.abstract",functionParameter:[{name:"formula.functionList.GESTEP.functionParameter.number.name",detail:"formula.functionList.GESTEP.functionParameter.number.detail",example:"5",require:1,repeat:0},{name:"formula.functionList.GESTEP.functionParameter.step.name",detail:"formula.functionList.GESTEP.functionParameter.step.detail",example:"4",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.HEX2BIN,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.HEX2BIN.description",abstract:"formula.functionList.HEX2BIN.abstract",functionParameter:[{name:"formula.functionList.HEX2BIN.functionParameter.number.name",detail:"formula.functionList.HEX2BIN.functionParameter.number.detail",example:'"F"',require:1,repeat:0},{name:"formula.functionList.HEX2BIN.functionParameter.places.name",detail:"formula.functionList.HEX2BIN.functionParameter.places.detail",example:"8",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.HEX2DEC,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.HEX2DEC.description",abstract:"formula.functionList.HEX2DEC.abstract",functionParameter:[{name:"formula.functionList.HEX2DEC.functionParameter.number.name",detail:"formula.functionList.HEX2DEC.functionParameter.number.detail",example:'"A5"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.HEX2OCT,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.HEX2OCT.description",abstract:"formula.functionList.HEX2OCT.abstract",functionParameter:[{name:"formula.functionList.HEX2OCT.functionParameter.number.name",detail:"formula.functionList.HEX2OCT.functionParameter.number.detail",example:'"F"',require:1,repeat:0},{name:"formula.functionList.HEX2OCT.functionParameter.places.name",detail:"formula.functionList.HEX2OCT.functionParameter.places.detail",example:"3",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.IMABS,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.IMABS.description",abstract:"formula.functionList.IMABS.abstract",functionParameter:[{name:"formula.functionList.IMABS.functionParameter.inumber.name",detail:"formula.functionList.IMABS.functionParameter.inumber.detail",example:'"5+12i"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.IMAGINARY,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.IMAGINARY.description",abstract:"formula.functionList.IMAGINARY.abstract",functionParameter:[{name:"formula.functionList.IMAGINARY.functionParameter.inumber.name",detail:"formula.functionList.IMAGINARY.functionParameter.inumber.detail",example:'"3+4i"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.IMARGUMENT,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.IMARGUMENT.description",abstract:"formula.functionList.IMARGUMENT.abstract",functionParameter:[{name:"formula.functionList.IMARGUMENT.functionParameter.inumber.name",detail:"formula.functionList.IMARGUMENT.functionParameter.inumber.detail",example:'"3+4i"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.IMCONJUGATE,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.IMCONJUGATE.description",abstract:"formula.functionList.IMCONJUGATE.abstract",functionParameter:[{name:"formula.functionList.IMCONJUGATE.functionParameter.inumber.name",detail:"formula.functionList.IMCONJUGATE.functionParameter.inumber.detail",example:'"3+4i"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.IMCOS,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.IMCOS.description",abstract:"formula.functionList.IMCOS.abstract",functionParameter:[{name:"formula.functionList.IMCOS.functionParameter.inumber.name",detail:"formula.functionList.IMCOS.functionParameter.inumber.detail",example:'"1+i"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.IMCOSH,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.IMCOSH.description",abstract:"formula.functionList.IMCOSH.abstract",functionParameter:[{name:"formula.functionList.IMCOSH.functionParameter.inumber.name",detail:"formula.functionList.IMCOSH.functionParameter.inumber.detail",example:'"4+3i"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.IMCOT,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.IMCOT.description",abstract:"formula.functionList.IMCOT.abstract",functionParameter:[{name:"formula.functionList.IMCOT.functionParameter.inumber.name",detail:"formula.functionList.IMCOT.functionParameter.inumber.detail",example:'"4+3i"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.IMCSC,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.IMCSC.description",abstract:"formula.functionList.IMCSC.abstract",functionParameter:[{name:"formula.functionList.IMCSC.functionParameter.inumber.name",detail:"formula.functionList.IMCSC.functionParameter.inumber.detail",example:'"4+3i"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.IMCSCH,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.IMCSCH.description",abstract:"formula.functionList.IMCSCH.abstract",functionParameter:[{name:"formula.functionList.IMCSCH.functionParameter.inumber.name",detail:"formula.functionList.IMCSCH.functionParameter.inumber.detail",example:'"4+3i"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.IMDIV,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.IMDIV.description",abstract:"formula.functionList.IMDIV.abstract",functionParameter:[{name:"formula.functionList.IMDIV.functionParameter.inumber1.name",detail:"formula.functionList.IMDIV.functionParameter.inumber1.detail",example:'"-238+240i"',require:1,repeat:0},{name:"formula.functionList.IMDIV.functionParameter.inumber2.name",detail:"formula.functionList.IMDIV.functionParameter.inumber2.detail",example:'"10+24i"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.IMEXP,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.IMEXP.description",abstract:"formula.functionList.IMEXP.abstract",functionParameter:[{name:"formula.functionList.IMEXP.functionParameter.inumber.name",detail:"formula.functionList.IMEXP.functionParameter.inumber.detail",example:'"1+i"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.IMLN,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.IMLN.description",abstract:"formula.functionList.IMLN.abstract",functionParameter:[{name:"formula.functionList.IMLN.functionParameter.inumber.name",detail:"formula.functionList.IMLN.functionParameter.inumber.detail",example:'"3+4i"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.IMLOG10,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.IMLOG10.description",abstract:"formula.functionList.IMLOG10.abstract",functionParameter:[{name:"formula.functionList.IMLOG10.functionParameter.inumber.name",detail:"formula.functionList.IMLOG10.functionParameter.inumber.detail",example:'"3+4i"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.IMLOG2,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.IMLOG2.description",abstract:"formula.functionList.IMLOG2.abstract",functionParameter:[{name:"formula.functionList.IMLOG2.functionParameter.inumber.name",detail:"formula.functionList.IMLOG2.functionParameter.inumber.detail",example:'"3+4i"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.IMPOWER,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.IMPOWER.description",abstract:"formula.functionList.IMPOWER.abstract",functionParameter:[{name:"formula.functionList.IMPOWER.functionParameter.inumber.name",detail:"formula.functionList.IMPOWER.functionParameter.inumber.detail",example:'"2+3i"',require:1,repeat:0},{name:"formula.functionList.IMPOWER.functionParameter.number.name",detail:"formula.functionList.IMPOWER.functionParameter.number.detail",example:"3",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.IMPRODUCT,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.IMPRODUCT.description",abstract:"formula.functionList.IMPRODUCT.abstract",functionParameter:[{name:"formula.functionList.IMPRODUCT.functionParameter.inumber1.name",detail:"formula.functionList.IMPRODUCT.functionParameter.inumber1.detail",example:'"3+4i"',require:1,repeat:0},{name:"formula.functionList.IMPRODUCT.functionParameter.inumber2.name",detail:"formula.functionList.IMPRODUCT.functionParameter.inumber2.detail",example:'"5-3i"',require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.IMREAL,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.IMREAL.description",abstract:"formula.functionList.IMREAL.abstract",functionParameter:[{name:"formula.functionList.IMREAL.functionParameter.inumber.name",detail:"formula.functionList.IMREAL.functionParameter.inumber.detail",example:'"6-9i"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.IMSEC,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.IMSEC.description",abstract:"formula.functionList.IMSEC.abstract",functionParameter:[{name:"formula.functionList.IMSEC.functionParameter.inumber.name",detail:"formula.functionList.IMSEC.functionParameter.inumber.detail",example:'"4+3i"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.IMSECH,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.IMSECH.description",abstract:"formula.functionList.IMSECH.abstract",functionParameter:[{name:"formula.functionList.IMSECH.functionParameter.inumber.name",detail:"formula.functionList.IMSECH.functionParameter.inumber.detail",example:'"4+3i"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.IMSIN,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.IMSIN.description",abstract:"formula.functionList.IMSIN.abstract",functionParameter:[{name:"formula.functionList.IMSIN.functionParameter.inumber.name",detail:"formula.functionList.IMSIN.functionParameter.inumber.detail",example:'"4+3i"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.IMSINH,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.IMSINH.description",abstract:"formula.functionList.IMSINH.abstract",functionParameter:[{name:"formula.functionList.IMSINH.functionParameter.inumber.name",detail:"formula.functionList.IMSINH.functionParameter.inumber.detail",example:'"4+3i"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.IMSQRT,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.IMSQRT.description",abstract:"formula.functionList.IMSQRT.abstract",functionParameter:[{name:"formula.functionList.IMSQRT.functionParameter.inumber.name",detail:"formula.functionList.IMSQRT.functionParameter.inumber.detail",example:'"1+i"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.IMSUB,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.IMSUB.description",abstract:"formula.functionList.IMSUB.abstract",functionParameter:[{name:"formula.functionList.IMSUB.functionParameter.inumber1.name",detail:"formula.functionList.IMSUB.functionParameter.inumber1.detail",example:'"13+4i"',require:1,repeat:0},{name:"formula.functionList.IMSUB.functionParameter.inumber2.name",detail:"formula.functionList.IMSUB.functionParameter.inumber2.detail",example:'"5+3i"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.IMSUM,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.IMSUM.description",abstract:"formula.functionList.IMSUM.abstract",functionParameter:[{name:"formula.functionList.IMSUM.functionParameter.inumber1.name",detail:"formula.functionList.IMSUM.functionParameter.inumber1.detail",example:'"3+4i"',require:1,repeat:0},{name:"formula.functionList.IMSUM.functionParameter.inumber2.name",detail:"formula.functionList.IMSUM.functionParameter.inumber2.detail",example:'"5-3i"',require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.IMTAN,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.IMTAN.description",abstract:"formula.functionList.IMTAN.abstract",functionParameter:[{name:"formula.functionList.IMTAN.functionParameter.inumber.name",detail:"formula.functionList.IMTAN.functionParameter.inumber.detail",example:'"4+3i"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.OCT2BIN,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.OCT2BIN.description",abstract:"formula.functionList.OCT2BIN.abstract",functionParameter:[{name:"formula.functionList.OCT2BIN.functionParameter.number.name",detail:"formula.functionList.OCT2BIN.functionParameter.number.detail",example:"3",require:1,repeat:0},{name:"formula.functionList.OCT2BIN.functionParameter.places.name",detail:"formula.functionList.OCT2BIN.functionParameter.places.detail",example:"3",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.OCT2DEC,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.OCT2DEC.description",abstract:"formula.functionList.OCT2DEC.abstract",functionParameter:[{name:"formula.functionList.OCT2DEC.functionParameter.number.name",detail:"formula.functionList.OCT2DEC.functionParameter.number.detail",example:"54",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.OCT2HEX,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.OCT2HEX.description",abstract:"formula.functionList.OCT2HEX.abstract",functionParameter:[{name:"formula.functionList.OCT2HEX.functionParameter.number.name",detail:"formula.functionList.OCT2HEX.functionParameter.number.detail",example:"100",require:1,repeat:0},{name:"formula.functionList.OCT2HEX.functionParameter.places.name",detail:"formula.functionList.OCT2HEX.functionParameter.places.detail",example:"4",require:0,repeat:0}]}],FUNCTION_LIST_FINANCIAL=[{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.ACCRINT,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.ACCRINT.description",abstract:"formula.functionList.ACCRINT.abstract",functionParameter:[{name:"formula.functionList.ACCRINT.functionParameter.issue.name",detail:"formula.functionList.ACCRINT.functionParameter.issue.detail",example:"39508",require:1,repeat:0},{name:"formula.functionList.ACCRINT.functionParameter.firstInterest.name",detail:"formula.functionList.ACCRINT.functionParameter.firstInterest.detail",example:"39691",require:1,repeat:0},{name:"formula.functionList.ACCRINT.functionParameter.settlement.name",detail:"formula.functionList.ACCRINT.functionParameter.settlement.detail",example:"39569",require:1,repeat:0},{name:"formula.functionList.ACCRINT.functionParameter.rate.name",detail:"formula.functionList.ACCRINT.functionParameter.rate.detail",example:"0.1",require:1,repeat:0},{name:"formula.functionList.ACCRINT.functionParameter.par.name",detail:"formula.functionList.ACCRINT.functionParameter.par.detail",example:"1000",require:1,repeat:0},{name:"formula.functionList.ACCRINT.functionParameter.frequency.name",detail:"formula.functionList.ACCRINT.functionParameter.frequency.detail",example:"2",require:1,repeat:0},{name:"formula.functionList.ACCRINT.functionParameter.basis.name",detail:"formula.functionList.ACCRINT.functionParameter.basis.detail",example:"0",require:0,repeat:0},{name:"formula.functionList.ACCRINT.functionParameter.calcMethod.name",detail:"formula.functionList.ACCRINT.functionParameter.calcMethod.detail",example:"true",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.ACCRINTM,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.ACCRINTM.description",abstract:"formula.functionList.ACCRINTM.abstract",functionParameter:[{name:"formula.functionList.ACCRINTM.functionParameter.issue.name",detail:"formula.functionList.ACCRINTM.functionParameter.issue.detail",example:'"2008-4-1"',require:1,repeat:0},{name:"formula.functionList.ACCRINTM.functionParameter.settlement.name",detail:"formula.functionList.ACCRINTM.functionParameter.settlement.detail",example:'"2008-6-15"',require:1,repeat:0},{name:"formula.functionList.ACCRINTM.functionParameter.rate.name",detail:"formula.functionList.ACCRINTM.functionParameter.rate.detail",example:"0.1",require:1,repeat:0},{name:"formula.functionList.ACCRINTM.functionParameter.par.name",detail:"formula.functionList.ACCRINTM.functionParameter.par.detail",example:"1000",require:1,repeat:0},{name:"formula.functionList.ACCRINTM.functionParameter.basis.name",detail:"formula.functionList.ACCRINTM.functionParameter.basis.detail",example:"3",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.AMORDEGRC,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.AMORDEGRC.description",abstract:"formula.functionList.AMORDEGRC.abstract",functionParameter:[{name:"formula.functionList.AMORDEGRC.functionParameter.number1.name",detail:"formula.functionList.AMORDEGRC.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.AMORDEGRC.functionParameter.number2.name",detail:"formula.functionList.AMORDEGRC.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.AMORLINC,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.AMORLINC.description",abstract:"formula.functionList.AMORLINC.abstract",functionParameter:[{name:"formula.functionList.AMORLINC.functionParameter.cost.name",detail:"formula.functionList.AMORLINC.functionParameter.cost.detail",example:"2400",require:1,repeat:0},{name:"formula.functionList.AMORLINC.functionParameter.datePurchased.name",detail:"formula.functionList.AMORLINC.functionParameter.datePurchased.detail",example:"39679",require:1,repeat:0},{name:"formula.functionList.AMORLINC.functionParameter.firstPeriod.name",detail:"formula.functionList.AMORLINC.functionParameter.firstPeriod.detail",example:"39813",require:1,repeat:0},{name:"formula.functionList.AMORLINC.functionParameter.salvage.name",detail:"formula.functionList.AMORLINC.functionParameter.salvage.detail",example:"300",require:1,repeat:0},{name:"formula.functionList.AMORLINC.functionParameter.period.name",detail:"formula.functionList.AMORLINC.functionParameter.period.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.AMORLINC.functionParameter.rate.name",detail:"formula.functionList.AMORLINC.functionParameter.rate.detail",example:"0.15",require:1,repeat:0},{name:"formula.functionList.AMORLINC.functionParameter.basis.name",detail:"formula.functionList.AMORLINC.functionParameter.basis.detail",example:"0",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.COUPDAYBS,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.COUPDAYBS.description",abstract:"formula.functionList.COUPDAYBS.abstract",functionParameter:[{name:"formula.functionList.COUPDAYBS.functionParameter.settlement.name",detail:"formula.functionList.COUPDAYBS.functionParameter.settlement.detail",example:'"2011-1-25"',require:1,repeat:0},{name:"formula.functionList.COUPDAYBS.functionParameter.maturity.name",detail:"formula.functionList.COUPDAYBS.functionParameter.maturity.detail",example:'"2011-11-15"',require:1,repeat:0},{name:"formula.functionList.COUPDAYBS.functionParameter.frequency.name",detail:"formula.functionList.COUPDAYBS.functionParameter.frequency.detail",example:"2",require:1,repeat:0},{name:"formula.functionList.COUPDAYBS.functionParameter.basis.name",detail:"formula.functionList.COUPDAYBS.functionParameter.basis.detail",example:"1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.COUPDAYS,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.COUPDAYS.description",abstract:"formula.functionList.COUPDAYS.abstract",functionParameter:[{name:"formula.functionList.COUPDAYS.functionParameter.settlement.name",detail:"formula.functionList.COUPDAYS.functionParameter.settlement.detail",example:'"2011-1-25"',require:1,repeat:0},{name:"formula.functionList.COUPDAYS.functionParameter.maturity.name",detail:"formula.functionList.COUPDAYS.functionParameter.maturity.detail",example:'"2011-11-15"',require:1,repeat:0},{name:"formula.functionList.COUPDAYS.functionParameter.frequency.name",detail:"formula.functionList.COUPDAYS.functionParameter.frequency.detail",example:"2",require:1,repeat:0},{name:"formula.functionList.COUPDAYS.functionParameter.basis.name",detail:"formula.functionList.COUPDAYS.functionParameter.basis.detail",example:"1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.COUPDAYSNC,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.COUPDAYSNC.description",abstract:"formula.functionList.COUPDAYSNC.abstract",functionParameter:[{name:"formula.functionList.COUPDAYSNC.functionParameter.settlement.name",detail:"formula.functionList.COUPDAYSNC.functionParameter.settlement.detail",example:'"2011-1-25"',require:1,repeat:0},{name:"formula.functionList.COUPDAYSNC.functionParameter.maturity.name",detail:"formula.functionList.COUPDAYSNC.functionParameter.maturity.detail",example:'"2011-11-15"',require:1,repeat:0},{name:"formula.functionList.COUPDAYSNC.functionParameter.frequency.name",detail:"formula.functionList.COUPDAYSNC.functionParameter.frequency.detail",example:"2",require:1,repeat:0},{name:"formula.functionList.COUPDAYSNC.functionParameter.basis.name",detail:"formula.functionList.COUPDAYSNC.functionParameter.basis.detail",example:"1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.COUPNCD,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.COUPNCD.description",abstract:"formula.functionList.COUPNCD.abstract",functionParameter:[{name:"formula.functionList.COUPNCD.functionParameter.settlement.name",detail:"formula.functionList.COUPNCD.functionParameter.settlement.detail",example:'"2011-1-25"',require:1,repeat:0},{name:"formula.functionList.COUPNCD.functionParameter.maturity.name",detail:"formula.functionList.COUPNCD.functionParameter.maturity.detail",example:'"2011-11-15"',require:1,repeat:0},{name:"formula.functionList.COUPNCD.functionParameter.frequency.name",detail:"formula.functionList.COUPNCD.functionParameter.frequency.detail",example:"2",require:1,repeat:0},{name:"formula.functionList.COUPNCD.functionParameter.basis.name",detail:"formula.functionList.COUPNCD.functionParameter.basis.detail",example:"1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.COUPNUM,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.COUPNUM.description",abstract:"formula.functionList.COUPNUM.abstract",functionParameter:[{name:"formula.functionList.COUPNUM.functionParameter.settlement.name",detail:"formula.functionList.COUPNUM.functionParameter.settlement.detail",example:'"2011-1-25"',require:1,repeat:0},{name:"formula.functionList.COUPNUM.functionParameter.maturity.name",detail:"formula.functionList.COUPNUM.functionParameter.maturity.detail",example:'"2011-11-15"',require:1,repeat:0},{name:"formula.functionList.COUPNUM.functionParameter.frequency.name",detail:"formula.functionList.COUPNUM.functionParameter.frequency.detail",example:"2",require:1,repeat:0},{name:"formula.functionList.COUPNUM.functionParameter.basis.name",detail:"formula.functionList.COUPNUM.functionParameter.basis.detail",example:"1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.COUPPCD,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.COUPPCD.description",abstract:"formula.functionList.COUPPCD.abstract",functionParameter:[{name:"formula.functionList.COUPPCD.functionParameter.settlement.name",detail:"formula.functionList.COUPPCD.functionParameter.settlement.detail",example:'"2011-1-25"',require:1,repeat:0},{name:"formula.functionList.COUPPCD.functionParameter.maturity.name",detail:"formula.functionList.COUPPCD.functionParameter.maturity.detail",example:'"2011-11-15"',require:1,repeat:0},{name:"formula.functionList.COUPPCD.functionParameter.frequency.name",detail:"formula.functionList.COUPPCD.functionParameter.frequency.detail",example:"2",require:1,repeat:0},{name:"formula.functionList.COUPPCD.functionParameter.basis.name",detail:"formula.functionList.COUPPCD.functionParameter.basis.detail",example:"1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.CUMIPMT,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.CUMIPMT.description",abstract:"formula.functionList.CUMIPMT.abstract",functionParameter:[{name:"formula.functionList.CUMIPMT.functionParameter.rate.name",detail:"formula.functionList.CUMIPMT.functionParameter.rate.detail",example:"0.09/12",require:1,repeat:0},{name:"formula.functionList.CUMIPMT.functionParameter.nper.name",detail:"formula.functionList.CUMIPMT.functionParameter.nper.detail",example:"30*12",require:1,repeat:0},{name:"formula.functionList.CUMIPMT.functionParameter.pv.name",detail:"formula.functionList.CUMIPMT.functionParameter.pv.detail",example:"125000",require:1,repeat:0},{name:"formula.functionList.CUMIPMT.functionParameter.startPeriod.name",detail:"formula.functionList.CUMIPMT.functionParameter.startPeriod.detail",example:"13",require:1,repeat:0},{name:"formula.functionList.CUMIPMT.functionParameter.endPeriod.name",detail:"formula.functionList.CUMIPMT.functionParameter.endPeriod.detail",example:"24",require:1,repeat:0},{name:"formula.functionList.CUMIPMT.functionParameter.type.name",detail:"formula.functionList.CUMIPMT.functionParameter.type.detail",example:"0",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.CUMPRINC,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.CUMPRINC.description",abstract:"formula.functionList.CUMPRINC.abstract",functionParameter:[{name:"formula.functionList.CUMPRINC.functionParameter.rate.name",detail:"formula.functionList.CUMPRINC.functionParameter.rate.detail",example:"0.09/12",require:1,repeat:0},{name:"formula.functionList.CUMPRINC.functionParameter.nper.name",detail:"formula.functionList.CUMPRINC.functionParameter.nper.detail",example:"30*12",require:1,repeat:0},{name:"formula.functionList.CUMPRINC.functionParameter.pv.name",detail:"formula.functionList.CUMPRINC.functionParameter.pv.detail",example:"125000",require:1,repeat:0},{name:"formula.functionList.CUMPRINC.functionParameter.startPeriod.name",detail:"formula.functionList.CUMPRINC.functionParameter.startPeriod.detail",example:"13",require:1,repeat:0},{name:"formula.functionList.CUMPRINC.functionParameter.endPeriod.name",detail:"formula.functionList.CUMPRINC.functionParameter.endPeriod.detail",example:"24",require:1,repeat:0},{name:"formula.functionList.CUMPRINC.functionParameter.type.name",detail:"formula.functionList.CUMPRINC.functionParameter.type.detail",example:"0",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.DB,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.DB.description",abstract:"formula.functionList.DB.abstract",functionParameter:[{name:"formula.functionList.DB.functionParameter.cost.name",detail:"formula.functionList.DB.functionParameter.cost.detail",example:"10000000",require:1,repeat:0},{name:"formula.functionList.DB.functionParameter.salvage.name",detail:"formula.functionList.DB.functionParameter.salvage.detail",example:"1000000",require:1,repeat:0},{name:"formula.functionList.DB.functionParameter.life.name",detail:"formula.functionList.DB.functionParameter.life.detail",example:"6",require:1,repeat:0},{name:"formula.functionList.DB.functionParameter.period.name",detail:"formula.functionList.DB.functionParameter.period.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.DB.functionParameter.month.name",detail:"formula.functionList.DB.functionParameter.month.detail",example:"7",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.DDB,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.DDB.description",abstract:"formula.functionList.DDB.abstract",functionParameter:[{name:"formula.functionList.DDB.functionParameter.cost.name",detail:"formula.functionList.DDB.functionParameter.cost.detail",example:"24000",require:1,repeat:0},{name:"formula.functionList.DDB.functionParameter.salvage.name",detail:"formula.functionList.DDB.functionParameter.salvage.detail",example:"3000",require:1,repeat:0},{name:"formula.functionList.DDB.functionParameter.life.name",detail:"formula.functionList.DDB.functionParameter.life.detail",example:"10",require:1,repeat:0},{name:"formula.functionList.DDB.functionParameter.period.name",detail:"formula.functionList.DDB.functionParameter.period.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.DDB.functionParameter.factor.name",detail:"formula.functionList.DDB.functionParameter.factor.detail",example:"2",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.DISC,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.DISC.description",abstract:"formula.functionList.DISC.abstract",functionParameter:[{name:"formula.functionList.DISC.functionParameter.settlement.name",detail:"formula.functionList.DISC.functionParameter.settlement.detail",example:'"2018-7-1"',require:1,repeat:0},{name:"formula.functionList.DISC.functionParameter.maturity.name",detail:"formula.functionList.DISC.functionParameter.maturity.detail",example:'"2048-1-1"',require:1,repeat:0},{name:"formula.functionList.DISC.functionParameter.pr.name",detail:"formula.functionList.DISC.functionParameter.pr.detail",example:"97.975",require:1,repeat:0},{name:"formula.functionList.DISC.functionParameter.redemption.name",detail:"formula.functionList.DISC.functionParameter.redemption.detail",example:"100",require:1,repeat:0},{name:"formula.functionList.DISC.functionParameter.basis.name",detail:"formula.functionList.DISC.functionParameter.basis.detail",example:"1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.DOLLARDE,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.DOLLARDE.description",abstract:"formula.functionList.DOLLARDE.abstract",functionParameter:[{name:"formula.functionList.DOLLARDE.functionParameter.fractionalDollar.name",detail:"formula.functionList.DOLLARDE.functionParameter.fractionalDollar.detail",example:"1.02",require:1,repeat:0},{name:"formula.functionList.DOLLARDE.functionParameter.fraction.name",detail:"formula.functionList.DOLLARDE.functionParameter.fraction.detail",example:"16",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.DOLLARFR,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.DOLLARFR.description",abstract:"formula.functionList.DOLLARFR.abstract",functionParameter:[{name:"formula.functionList.DOLLARFR.functionParameter.decimalDollar.name",detail:"formula.functionList.DOLLARFR.functionParameter.decimalDollar.detail",example:"1.125",require:1,repeat:0},{name:"formula.functionList.DOLLARFR.functionParameter.fraction.name",detail:"formula.functionList.DOLLARFR.functionParameter.fraction.detail",example:"16",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.DURATION,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.DURATION.description",abstract:"formula.functionList.DURATION.abstract",functionParameter:[{name:"formula.functionList.DURATION.functionParameter.settlement.name",detail:"formula.functionList.DURATION.functionParameter.settlement.detail",example:'"2018-7-1"',require:1,repeat:0},{name:"formula.functionList.DURATION.functionParameter.maturity.name",detail:"formula.functionList.DURATION.functionParameter.maturity.detail",example:'"2048-1-1"',require:1,repeat:0},{name:"formula.functionList.DURATION.functionParameter.coupon.name",detail:"formula.functionList.DURATION.functionParameter.coupon.detail",example:"0.08",require:1,repeat:0},{name:"formula.functionList.DURATION.functionParameter.yld.name",detail:"formula.functionList.DURATION.functionParameter.yld.detail",example:"0.09",require:1,repeat:0},{name:"formula.functionList.DURATION.functionParameter.frequency.name",detail:"formula.functionList.DURATION.functionParameter.frequency.detail",example:"2",require:1,repeat:0},{name:"formula.functionList.DURATION.functionParameter.basis.name",detail:"formula.functionList.DURATION.functionParameter.basis.detail",example:"1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.EFFECT,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.EFFECT.description",abstract:"formula.functionList.EFFECT.abstract",functionParameter:[{name:"formula.functionList.EFFECT.functionParameter.nominalRate.name",detail:"formula.functionList.EFFECT.functionParameter.nominalRate.detail",example:"0.0525",require:1,repeat:0},{name:"formula.functionList.EFFECT.functionParameter.npery.name",detail:"formula.functionList.EFFECT.functionParameter.npery.detail",example:"4",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.FV,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.FV.description",abstract:"formula.functionList.FV.abstract",functionParameter:[{name:"formula.functionList.FV.functionParameter.rate.name",detail:"formula.functionList.FV.functionParameter.rate.detail",example:"0.06/12",require:1,repeat:0},{name:"formula.functionList.FV.functionParameter.nper.name",detail:"formula.functionList.FV.functionParameter.nper.detail",example:"10",require:1,repeat:0},{name:"formula.functionList.FV.functionParameter.pmt.name",detail:"formula.functionList.FV.functionParameter.pmt.detail",example:"-200",require:1,repeat:0},{name:"formula.functionList.FV.functionParameter.pv.name",detail:"formula.functionList.FV.functionParameter.pv.detail",example:"-500",require:0,repeat:0},{name:"formula.functionList.FV.functionParameter.type.name",detail:"formula.functionList.FV.functionParameter.type.detail",example:"1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.FVSCHEDULE,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.FVSCHEDULE.description",abstract:"formula.functionList.FVSCHEDULE.abstract",functionParameter:[{name:"formula.functionList.FVSCHEDULE.functionParameter.principal.name",detail:"formula.functionList.FVSCHEDULE.functionParameter.principal.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.FVSCHEDULE.functionParameter.schedule.name",detail:"formula.functionList.FVSCHEDULE.functionParameter.schedule.detail",example:"{0.09,0.11,0.1}",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.INTRATE,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.INTRATE.description",abstract:"formula.functionList.INTRATE.abstract",functionParameter:[{name:"formula.functionList.INTRATE.functionParameter.settlement.name",detail:"formula.functionList.INTRATE.functionParameter.settlement.detail",example:'"2008-2-15"',require:1,repeat:0},{name:"formula.functionList.INTRATE.functionParameter.maturity.name",detail:"formula.functionList.INTRATE.functionParameter.maturity.detail",example:'"2008-5-15"',require:1,repeat:0},{name:"formula.functionList.INTRATE.functionParameter.investment.name",detail:"formula.functionList.INTRATE.functionParameter.investment.detail",example:"10000000",require:1,repeat:0},{name:"formula.functionList.INTRATE.functionParameter.redemption.name",detail:"formula.functionList.INTRATE.functionParameter.redemption.detail",example:"10144200",require:1,repeat:0},{name:"formula.functionList.INTRATE.functionParameter.basis.name",detail:"formula.functionList.INTRATE.functionParameter.basis.detail",example:"2",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.IPMT,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.IPMT.description",abstract:"formula.functionList.IPMT.abstract",functionParameter:[{name:"formula.functionList.IPMT.functionParameter.rate.name",detail:"formula.functionList.IPMT.functionParameter.rate.detail",example:"0.1/12",require:1,repeat:0},{name:"formula.functionList.IPMT.functionParameter.per.name",detail:"formula.functionList.IPMT.functionParameter.per.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.IPMT.functionParameter.nper.name",detail:"formula.functionList.IPMT.functionParameter.nper.detail",example:"3*12",require:1,repeat:0},{name:"formula.functionList.IPMT.functionParameter.pv.name",detail:"formula.functionList.IPMT.functionParameter.pv.detail",example:"80000",require:1,repeat:0},{name:"formula.functionList.IPMT.functionParameter.fv.name",detail:"formula.functionList.IPMT.functionParameter.fv.detail",example:"0",require:0,repeat:0},{name:"formula.functionList.IPMT.functionParameter.type.name",detail:"formula.functionList.IPMT.functionParameter.type.detail",example:"0",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.IRR,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.IRR.description",abstract:"formula.functionList.IRR.abstract",functionParameter:[{name:"formula.functionList.IRR.functionParameter.values.name",detail:"formula.functionList.IRR.functionParameter.values.detail",example:"{-700000,120000,150000,180000,210000,260000}",require:1,repeat:0},{name:"formula.functionList.IRR.functionParameter.guess.name",detail:"formula.functionList.IRR.functionParameter.guess.detail",example:"0.1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.ISPMT,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.ISPMT.description",abstract:"formula.functionList.ISPMT.abstract",functionParameter:[{name:"formula.functionList.ISPMT.functionParameter.rate.name",detail:"formula.functionList.ISPMT.functionParameter.rate.detail",example:"0.1",require:1,repeat:0},{name:"formula.functionList.ISPMT.functionParameter.per.name",detail:"formula.functionList.ISPMT.functionParameter.per.detail",example:"2",require:1,repeat:0},{name:"formula.functionList.ISPMT.functionParameter.nper.name",detail:"formula.functionList.ISPMT.functionParameter.nper.detail",example:"5",require:1,repeat:0},{name:"formula.functionList.ISPMT.functionParameter.pv.name",detail:"formula.functionList.ISPMT.functionParameter.pv.detail",example:"1000",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.MDURATION,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.MDURATION.description",abstract:"formula.functionList.MDURATION.abstract",functionParameter:[{name:"formula.functionList.MDURATION.functionParameter.settlement.name",detail:"formula.functionList.MDURATION.functionParameter.settlement.detail",example:'"2018-7-1"',require:1,repeat:0},{name:"formula.functionList.MDURATION.functionParameter.maturity.name",detail:"formula.functionList.MDURATION.functionParameter.maturity.detail",example:'"2048-1-1"',require:1,repeat:0},{name:"formula.functionList.MDURATION.functionParameter.coupon.name",detail:"formula.functionList.MDURATION.functionParameter.coupon.detail",example:"0.08",require:1,repeat:0},{name:"formula.functionList.MDURATION.functionParameter.yld.name",detail:"formula.functionList.MDURATION.functionParameter.yld.detail",example:"0.09",require:1,repeat:0},{name:"formula.functionList.MDURATION.functionParameter.frequency.name",detail:"formula.functionList.MDURATION.functionParameter.frequency.detail",example:"2",require:1,repeat:0},{name:"formula.functionList.MDURATION.functionParameter.basis.name",detail:"formula.functionList.MDURATION.functionParameter.basis.detail",example:"1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.MIRR,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.MIRR.description",abstract:"formula.functionList.MIRR.abstract",functionParameter:[{name:"formula.functionList.MIRR.functionParameter.values.name",detail:"formula.functionList.MIRR.functionParameter.values.detail",example:"{-120000,39000,30000,21000,37000,46000}",require:1,repeat:0},{name:"formula.functionList.MIRR.functionParameter.financeRate.name",detail:"formula.functionList.MIRR.functionParameter.financeRate.detail",example:"0.1",require:1,repeat:0},{name:"formula.functionList.MIRR.functionParameter.reinvestRate.name",detail:"formula.functionList.MIRR.functionParameter.reinvestRate.detail",example:"0.12",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.NOMINAL,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.NOMINAL.description",abstract:"formula.functionList.NOMINAL.abstract",functionParameter:[{name:"formula.functionList.NOMINAL.functionParameter.effectRate.name",detail:"formula.functionList.NOMINAL.functionParameter.effectRate.detail",example:"0.053543",require:1,repeat:0},{name:"formula.functionList.NOMINAL.functionParameter.npery.name",detail:"formula.functionList.NOMINAL.functionParameter.npery.detail",example:"4",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.NPER,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.NPER.description",abstract:"formula.functionList.NPER.abstract",functionParameter:[{name:"formula.functionList.NPER.functionParameter.rate.name",detail:"formula.functionList.NPER.functionParameter.rate.detail",example:"0.12/12",require:1,repeat:0},{name:"formula.functionList.NPER.functionParameter.pmt.name",detail:"formula.functionList.NPER.functionParameter.pmt.detail",example:"-100",require:1,repeat:0},{name:"formula.functionList.NPER.functionParameter.pv.name",detail:"formula.functionList.NPER.functionParameter.pv.detail",example:"-1000",require:1,repeat:0},{name:"formula.functionList.NPER.functionParameter.fv.name",detail:"formula.functionList.NPER.functionParameter.fv.detail",example:"10000",require:0,repeat:0},{name:"formula.functionList.NPER.functionParameter.type.name",detail:"formula.functionList.NPER.functionParameter.type.detail",example:"1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.NPV,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.NPV.description",abstract:"formula.functionList.NPV.abstract",functionParameter:[{name:"formula.functionList.NPV.functionParameter.rate.name",detail:"formula.functionList.NPV.functionParameter.rate.detail",example:"0.1",require:1,repeat:0},{name:"formula.functionList.NPV.functionParameter.value1.name",detail:"formula.functionList.NPV.functionParameter.value1.detail",example:"{-10000,3000,4200,6800}",require:1,repeat:0},{name:"formula.functionList.NPV.functionParameter.value2.name",detail:"formula.functionList.NPV.functionParameter.value2.detail",example:"-9000",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.ODDFPRICE,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.ODDFPRICE.description",abstract:"formula.functionList.ODDFPRICE.abstract",functionParameter:[{name:"formula.functionList.ODDFPRICE.functionParameter.settlement.name",detail:"formula.functionList.ODDFPRICE.functionParameter.settlement.detail",example:'"2008-11-11"',require:1,repeat:0},{name:"formula.functionList.ODDFPRICE.functionParameter.maturity.name",detail:"formula.functionList.ODDFPRICE.functionParameter.maturity.detail",example:'"2021-3-1"',require:1,repeat:0},{name:"formula.functionList.ODDFPRICE.functionParameter.issue.name",detail:"formula.functionList.ODDFPRICE.functionParameter.issue.detail",example:'"2008-10-15"',require:1,repeat:0},{name:"formula.functionList.ODDFPRICE.functionParameter.firstCoupon.name",detail:"formula.functionList.ODDFPRICE.functionParameter.firstCoupon.detail",example:'"2009-3-1"',require:1,repeat:0},{name:"formula.functionList.ODDFPRICE.functionParameter.rate.name",detail:"formula.functionList.ODDFPRICE.functionParameter.rate.detail",example:"0.0785",require:1,repeat:0},{name:"formula.functionList.ODDFPRICE.functionParameter.yld.name",detail:"formula.functionList.ODDFPRICE.functionParameter.yld.detail",example:"0.0625",require:1,repeat:0},{name:"formula.functionList.ODDFPRICE.functionParameter.redemption.name",detail:"formula.functionList.ODDFPRICE.functionParameter.redemption.detail",example:"100",require:1,repeat:0},{name:"formula.functionList.ODDFPRICE.functionParameter.frequency.name",detail:"formula.functionList.ODDFPRICE.functionParameter.frequency.detail",example:"2",require:1,repeat:0},{name:"formula.functionList.ODDFPRICE.functionParameter.basis.name",detail:"formula.functionList.ODDFPRICE.functionParameter.basis.detail",example:"1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.ODDFYIELD,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.ODDFYIELD.description",abstract:"formula.functionList.ODDFYIELD.abstract",functionParameter:[{name:"formula.functionList.ODDFYIELD.functionParameter.settlement.name",detail:"formula.functionList.ODDFYIELD.functionParameter.settlement.detail",example:'"2008-11-11"',require:1,repeat:0},{name:"formula.functionList.ODDFYIELD.functionParameter.maturity.name",detail:"formula.functionList.ODDFYIELD.functionParameter.maturity.detail",example:'"2021-3-1"',require:1,repeat:0},{name:"formula.functionList.ODDFYIELD.functionParameter.issue.name",detail:"formula.functionList.ODDFYIELD.functionParameter.issue.detail",example:'"2008-10-15"',require:1,repeat:0},{name:"formula.functionList.ODDFYIELD.functionParameter.firstCoupon.name",detail:"formula.functionList.ODDFYIELD.functionParameter.firstCoupon.detail",example:'"2009-3-1"',require:1,repeat:0},{name:"formula.functionList.ODDFYIELD.functionParameter.rate.name",detail:"formula.functionList.ODDFYIELD.functionParameter.rate.detail",example:"0.0575",require:1,repeat:0},{name:"formula.functionList.ODDFYIELD.functionParameter.pr.name",detail:"formula.functionList.ODDFYIELD.functionParameter.pr.detail",example:"84.5",require:1,repeat:0},{name:"formula.functionList.ODDFYIELD.functionParameter.redemption.name",detail:"formula.functionList.ODDFYIELD.functionParameter.redemption.detail",example:"100",require:1,repeat:0},{name:"formula.functionList.ODDFYIELD.functionParameter.frequency.name",detail:"formula.functionList.ODDFYIELD.functionParameter.frequency.detail",example:"2",require:1,repeat:0},{name:"formula.functionList.ODDFYIELD.functionParameter.basis.name",detail:"formula.functionList.ODDFYIELD.functionParameter.basis.detail",example:"0",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.ODDLPRICE,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.ODDLPRICE.description",abstract:"formula.functionList.ODDLPRICE.abstract",functionParameter:[{name:"formula.functionList.ODDLPRICE.functionParameter.settlement.name",detail:"formula.functionList.ODDLPRICE.functionParameter.settlement.detail",example:'"2008-11-11"',require:1,repeat:0},{name:"formula.functionList.ODDLPRICE.functionParameter.maturity.name",detail:"formula.functionList.ODDLPRICE.functionParameter.maturity.detail",example:'"2021-3-1"',require:1,repeat:0},{name:"formula.functionList.ODDLPRICE.functionParameter.lastInterest.name",detail:"formula.functionList.ODDLPRICE.functionParameter.lastInterest.detail",example:'"2009-3-1"',require:1,repeat:0},{name:"formula.functionList.ODDLPRICE.functionParameter.rate.name",detail:"formula.functionList.ODDLPRICE.functionParameter.rate.detail",example:"0.0785",require:1,repeat:0},{name:"formula.functionList.ODDLPRICE.functionParameter.yld.name",detail:"formula.functionList.ODDLPRICE.functionParameter.yld.detail",example:"0.0625",require:1,repeat:0},{name:"formula.functionList.ODDLPRICE.functionParameter.redemption.name",detail:"formula.functionList.ODDLPRICE.functionParameter.redemption.detail",example:"100",require:1,repeat:0},{name:"formula.functionList.ODDLPRICE.functionParameter.frequency.name",detail:"formula.functionList.ODDLPRICE.functionParameter.frequency.detail",example:"2",require:1,repeat:0},{name:"formula.functionList.ODDLPRICE.functionParameter.basis.name",detail:"formula.functionList.ODDLPRICE.functionParameter.basis.detail",example:"1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.ODDLYIELD,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.ODDLYIELD.description",abstract:"formula.functionList.ODDLYIELD.abstract",functionParameter:[{name:"formula.functionList.ODDLYIELD.functionParameter.settlement.name",detail:"formula.functionList.ODDLYIELD.functionParameter.settlement.detail",example:'"2008-11-11"',require:1,repeat:0},{name:"formula.functionList.ODDLYIELD.functionParameter.maturity.name",detail:"formula.functionList.ODDLYIELD.functionParameter.maturity.detail",example:'"2021-3-1"',require:1,repeat:0},{name:"formula.functionList.ODDLYIELD.functionParameter.lastInterest.name",detail:"formula.functionList.ODDLYIELD.functionParameter.lastInterest.detail",example:'"2008-10-15"',require:1,repeat:0},{name:"formula.functionList.ODDLYIELD.functionParameter.rate.name",detail:"formula.functionList.ODDLYIELD.functionParameter.rate.detail",example:"0.0575",require:1,repeat:0},{name:"formula.functionList.ODDLYIELD.functionParameter.pr.name",detail:"formula.functionList.ODDLYIELD.functionParameter.pr.detail",example:"84.5",require:1,repeat:0},{name:"formula.functionList.ODDLYIELD.functionParameter.redemption.name",detail:"formula.functionList.ODDLYIELD.functionParameter.redemption.detail",example:"100",require:1,repeat:0},{name:"formula.functionList.ODDLYIELD.functionParameter.frequency.name",detail:"formula.functionList.ODDLYIELD.functionParameter.frequency.detail",example:"2",require:1,repeat:0},{name:"formula.functionList.ODDLYIELD.functionParameter.basis.name",detail:"formula.functionList.ODDLYIELD.functionParameter.basis.detail",example:"0",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.PDURATION,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.PDURATION.description",abstract:"formula.functionList.PDURATION.abstract",functionParameter:[{name:"formula.functionList.PDURATION.functionParameter.rate.name",detail:"formula.functionList.PDURATION.functionParameter.rate.detail",example:"0.025",require:1,repeat:0},{name:"formula.functionList.PDURATION.functionParameter.pv.name",detail:"formula.functionList.PDURATION.functionParameter.pv.detail",example:"2000",require:1,repeat:0},{name:"formula.functionList.PDURATION.functionParameter.fv.name",detail:"formula.functionList.PDURATION.functionParameter.fv.detail",example:"2200",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.PMT,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.PMT.description",abstract:"formula.functionList.PMT.abstract",functionParameter:[{name:"formula.functionList.PMT.functionParameter.rate.name",detail:"formula.functionList.PMT.functionParameter.rate.detail",example:"0.08/12",require:1,repeat:0},{name:"formula.functionList.PMT.functionParameter.nper.name",detail:"formula.functionList.PMT.functionParameter.nper.detail",example:"10",require:1,repeat:0},{name:"formula.functionList.PMT.functionParameter.pv.name",detail:"formula.functionList.PMT.functionParameter.pv.detail",example:"10000",require:1,repeat:0},{name:"formula.functionList.PMT.functionParameter.fv.name",detail:"formula.functionList.PMT.functionParameter.fv.detail",example:"0",require:0,repeat:0},{name:"formula.functionList.PMT.functionParameter.type.name",detail:"formula.functionList.PMT.functionParameter.type.detail",example:"0",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.PPMT,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.PPMT.description",abstract:"formula.functionList.PPMT.abstract",functionParameter:[{name:"formula.functionList.PPMT.functionParameter.rate.name",detail:"formula.functionList.PPMT.functionParameter.rate.detail",example:"0.1/12",require:1,repeat:0},{name:"formula.functionList.PPMT.functionParameter.per.name",detail:"formula.functionList.PPMT.functionParameter.per.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.PPMT.functionParameter.nper.name",detail:"formula.functionList.PPMT.functionParameter.nper.detail",example:"3*12",require:1,repeat:0},{name:"formula.functionList.PPMT.functionParameter.pv.name",detail:"formula.functionList.PPMT.functionParameter.pv.detail",example:"80000",require:1,repeat:0},{name:"formula.functionList.PPMT.functionParameter.fv.name",detail:"formula.functionList.PPMT.functionParameter.fv.detail",example:"0",require:0,repeat:0},{name:"formula.functionList.PPMT.functionParameter.type.name",detail:"formula.functionList.PPMT.functionParameter.type.detail",example:"0",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.PRICE,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.PRICE.description",abstract:"formula.functionList.PRICE.abstract",functionParameter:[{name:"formula.functionList.PRICE.functionParameter.settlement.name",detail:"formula.functionList.PRICE.functionParameter.settlement.detail",example:'"2008-11-11"',require:1,repeat:0},{name:"formula.functionList.PRICE.functionParameter.maturity.name",detail:"formula.functionList.PRICE.functionParameter.maturity.detail",example:'"2021-3-1"',require:1,repeat:0},{name:"formula.functionList.PRICE.functionParameter.rate.name",detail:"formula.functionList.PRICE.functionParameter.rate.detail",example:"0.0785",require:1,repeat:0},{name:"formula.functionList.PRICE.functionParameter.yld.name",detail:"formula.functionList.PRICE.functionParameter.yld.detail",example:"0.0625",require:1,repeat:0},{name:"formula.functionList.PRICE.functionParameter.redemption.name",detail:"formula.functionList.PRICE.functionParameter.redemption.detail",example:"100",require:1,repeat:0},{name:"formula.functionList.PRICE.functionParameter.frequency.name",detail:"formula.functionList.PRICE.functionParameter.frequency.detail",example:"2",require:1,repeat:0},{name:"formula.functionList.PRICE.functionParameter.basis.name",detail:"formula.functionList.PRICE.functionParameter.basis.detail",example:"1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.PRICEDISC,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.PRICEDISC.description",abstract:"formula.functionList.PRICEDISC.abstract",functionParameter:[{name:"formula.functionList.PRICEDISC.functionParameter.settlement.name",detail:"formula.functionList.PRICEDISC.functionParameter.settlement.detail",example:'"2008-11-11"',require:1,repeat:0},{name:"formula.functionList.PRICEDISC.functionParameter.maturity.name",detail:"formula.functionList.PRICEDISC.functionParameter.maturity.detail",example:'"2021-3-1"',require:1,repeat:0},{name:"formula.functionList.PRICEDISC.functionParameter.discount.name",detail:"formula.functionList.PRICEDISC.functionParameter.discount.detail",example:"0.0625",require:1,repeat:0},{name:"formula.functionList.PRICEDISC.functionParameter.redemption.name",detail:"formula.functionList.PRICEDISC.functionParameter.redemption.detail",example:"100",require:1,repeat:0},{name:"formula.functionList.PRICEDISC.functionParameter.basis.name",detail:"formula.functionList.PRICEDISC.functionParameter.basis.detail",example:"1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.PRICEMAT,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.PRICEMAT.description",abstract:"formula.functionList.PRICEMAT.abstract",functionParameter:[{name:"formula.functionList.PRICEMAT.functionParameter.settlement.name",detail:"formula.functionList.PRICEMAT.functionParameter.settlement.detail",example:'"2008-11-11"',require:1,repeat:0},{name:"formula.functionList.PRICEMAT.functionParameter.maturity.name",detail:"formula.functionList.PRICEMAT.functionParameter.maturity.detail",example:'"2021-3-1"',require:1,repeat:0},{name:"formula.functionList.PRICEMAT.functionParameter.issue.name",detail:"formula.functionList.PRICEMAT.functionParameter.issue.detail",example:'"2008-10-15"',require:1,repeat:0},{name:"formula.functionList.PRICEMAT.functionParameter.rate.name",detail:"formula.functionList.PRICEMAT.functionParameter.rate.detail",example:"0.0785",require:1,repeat:0},{name:"formula.functionList.PRICEMAT.functionParameter.yld.name",detail:"formula.functionList.PRICEMAT.functionParameter.yld.detail",example:"0.0625",require:1,repeat:0},{name:"formula.functionList.PRICEMAT.functionParameter.basis.name",detail:"formula.functionList.PRICEMAT.functionParameter.basis.detail",example:"1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.PV,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.PV.description",abstract:"formula.functionList.PV.abstract",functionParameter:[{name:"formula.functionList.PV.functionParameter.rate.name",detail:"formula.functionList.PV.functionParameter.rate.detail",example:"0.02",require:1,repeat:0},{name:"formula.functionList.PV.functionParameter.nper.name",detail:"formula.functionList.PV.functionParameter.nper.detail",example:"12",require:1,repeat:0},{name:"formula.functionList.PV.functionParameter.pmt.name",detail:"formula.functionList.PV.functionParameter.pmt.detail",example:"100",require:1,repeat:0},{name:"formula.functionList.PV.functionParameter.fv.name",detail:"formula.functionList.PV.functionParameter.fv.detail",example:"0",require:0,repeat:0},{name:"formula.functionList.PV.functionParameter.type.name",detail:"formula.functionList.PV.functionParameter.type.detail",example:"0",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.RATE,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.RATE.description",abstract:"formula.functionList.RATE.abstract",functionParameter:[{name:"formula.functionList.RATE.functionParameter.nper.name",detail:"formula.functionList.RATE.functionParameter.nper.detail",example:"4*12",require:1,repeat:0},{name:"formula.functionList.RATE.functionParameter.pmt.name",detail:"formula.functionList.RATE.functionParameter.pmt.detail",example:"-200",require:1,repeat:0},{name:"formula.functionList.RATE.functionParameter.pv.name",detail:"formula.functionList.RATE.functionParameter.pv.detail",example:"8000",require:1,repeat:0},{name:"formula.functionList.RATE.functionParameter.fv.name",detail:"formula.functionList.RATE.functionParameter.fv.detail",example:"0",require:0,repeat:0},{name:"formula.functionList.RATE.functionParameter.type.name",detail:"formula.functionList.RATE.functionParameter.type.detail",example:"0",require:0,repeat:0},{name:"formula.functionList.RATE.functionParameter.guess.name",detail:"formula.functionList.RATE.functionParameter.guess.detail",example:"0.1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.RECEIVED,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.RECEIVED.description",abstract:"formula.functionList.RECEIVED.abstract",functionParameter:[{name:"formula.functionList.RECEIVED.functionParameter.settlement.name",detail:"formula.functionList.RECEIVED.functionParameter.settlement.detail",example:'"2008-2-15"',require:1,repeat:0},{name:"formula.functionList.RECEIVED.functionParameter.maturity.name",detail:"formula.functionList.RECEIVED.functionParameter.maturity.detail",example:'"2008-3-15"',require:1,repeat:0},{name:"formula.functionList.RECEIVED.functionParameter.investment.name",detail:"formula.functionList.RECEIVED.functionParameter.investment.detail",example:"10000000",require:1,repeat:0},{name:"formula.functionList.RECEIVED.functionParameter.discount.name",detail:"formula.functionList.RECEIVED.functionParameter.discount.detail",example:"0.0575",require:1,repeat:0},{name:"formula.functionList.RECEIVED.functionParameter.basis.name",detail:"formula.functionList.RECEIVED.functionParameter.basis.detail",example:"2",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.RRI,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.RRI.description",abstract:"formula.functionList.RRI.abstract",functionParameter:[{name:"formula.functionList.RRI.functionParameter.nper.name",detail:"formula.functionList.RRI.functionParameter.nper.detail",example:"96",require:1,repeat:0},{name:"formula.functionList.RRI.functionParameter.pv.name",detail:"formula.functionList.RRI.functionParameter.pv.detail",example:"10000",require:1,repeat:0},{name:"formula.functionList.RRI.functionParameter.fv.name",detail:"formula.functionList.RRI.functionParameter.fv.detail",example:"11000",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.SLN,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.SLN.description",abstract:"formula.functionList.SLN.abstract",functionParameter:[{name:"formula.functionList.SLN.functionParameter.cost.name",detail:"formula.functionList.SLN.functionParameter.cost.detail",example:"300000",require:1,repeat:0},{name:"formula.functionList.SLN.functionParameter.salvage.name",detail:"formula.functionList.SLN.functionParameter.salvage.detail",example:"75000",require:1,repeat:0},{name:"formula.functionList.SLN.functionParameter.life.name",detail:"formula.functionList.SLN.functionParameter.life.detail",example:"10",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.SYD,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.SYD.description",abstract:"formula.functionList.SYD.abstract",functionParameter:[{name:"formula.functionList.SYD.functionParameter.cost.name",detail:"formula.functionList.SYD.functionParameter.cost.detail",example:"300000",require:1,repeat:0},{name:"formula.functionList.SYD.functionParameter.salvage.name",detail:"formula.functionList.SYD.functionParameter.salvage.detail",example:"75000",require:1,repeat:0},{name:"formula.functionList.SYD.functionParameter.life.name",detail:"formula.functionList.SYD.functionParameter.life.detail",example:"10",require:1,repeat:0},{name:"formula.functionList.SYD.functionParameter.per.name",detail:"formula.functionList.SYD.functionParameter.per.detail",example:"10",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.TBILLEQ,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.TBILLEQ.description",abstract:"formula.functionList.TBILLEQ.abstract",functionParameter:[{name:"formula.functionList.TBILLEQ.functionParameter.settlement.name",detail:"formula.functionList.TBILLEQ.functionParameter.settlement.detail",example:'"2008-3-31"',require:1,repeat:0},{name:"formula.functionList.TBILLEQ.functionParameter.maturity.name",detail:"formula.functionList.TBILLEQ.functionParameter.maturity.detail",example:'"2008-6-1"',require:1,repeat:0},{name:"formula.functionList.TBILLEQ.functionParameter.discount.name",detail:"formula.functionList.TBILLEQ.functionParameter.discount.detail",example:"0.0914",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.TBILLPRICE,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.TBILLPRICE.description",abstract:"formula.functionList.TBILLPRICE.abstract",functionParameter:[{name:"formula.functionList.TBILLPRICE.functionParameter.settlement.name",detail:"formula.functionList.TBILLPRICE.functionParameter.settlement.detail",example:'"2008-3-31"',require:1,repeat:0},{name:"formula.functionList.TBILLPRICE.functionParameter.maturity.name",detail:"formula.functionList.TBILLPRICE.functionParameter.maturity.detail",example:'"2008-6-1"',require:1,repeat:0},{name:"formula.functionList.TBILLPRICE.functionParameter.discount.name",detail:"formula.functionList.TBILLPRICE.functionParameter.discount.detail",example:"0.0914",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.TBILLYIELD,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.TBILLYIELD.description",abstract:"formula.functionList.TBILLYIELD.abstract",functionParameter:[{name:"formula.functionList.TBILLYIELD.functionParameter.settlement.name",detail:"formula.functionList.TBILLYIELD.functionParameter.settlement.detail",example:'"2008-3-31"',require:1,repeat:0},{name:"formula.functionList.TBILLYIELD.functionParameter.maturity.name",detail:"formula.functionList.TBILLYIELD.functionParameter.maturity.detail",example:'"2008-6-1"',require:1,repeat:0},{name:"formula.functionList.TBILLYIELD.functionParameter.pr.name",detail:"formula.functionList.TBILLYIELD.functionParameter.pr.detail",example:"98.45",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.VDB,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.VDB.description",abstract:"formula.functionList.VDB.abstract",functionParameter:[{name:"formula.functionList.VDB.functionParameter.cost.name",detail:"formula.functionList.VDB.functionParameter.cost.detail",example:"2400",require:1,repeat:0},{name:"formula.functionList.VDB.functionParameter.salvage.name",detail:"formula.functionList.VDB.functionParameter.salvage.detail",example:"300",require:1,repeat:0},{name:"formula.functionList.VDB.functionParameter.life.name",detail:"formula.functionList.VDB.functionParameter.life.detail",example:"10",require:1,repeat:0},{name:"formula.functionList.VDB.functionParameter.startPeriod.name",detail:"formula.functionList.VDB.functionParameter.startPeriod.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.VDB.functionParameter.endPeriod.name",detail:"formula.functionList.VDB.functionParameter.endPeriod.detail",example:"2",require:1,repeat:0},{name:"formula.functionList.VDB.functionParameter.factor.name",detail:"formula.functionList.VDB.functionParameter.factor.detail",example:"2",require:0,repeat:0},{name:"formula.functionList.VDB.functionParameter.noSwitch.name",detail:"formula.functionList.VDB.functionParameter.noSwitch.detail",example:"false",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.XIRR,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.XIRR.description",abstract:"formula.functionList.XIRR.abstract",functionParameter:[{name:"formula.functionList.XIRR.functionParameter.values.name",detail:"formula.functionList.XIRR.functionParameter.values.detail",example:"{-10000,2750,4250,3250,2750}",require:1,repeat:0},{name:"formula.functionList.XIRR.functionParameter.dates.name",detail:"formula.functionList.XIRR.functionParameter.dates.detail",example:"{39448,39508,39751,39859,39904}",require:1,repeat:0},{name:"formula.functionList.XIRR.functionParameter.guess.name",detail:"formula.functionList.XIRR.functionParameter.guess.detail",example:"0.1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.XNPV,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.XNPV.description",abstract:"formula.functionList.XNPV.abstract",functionParameter:[{name:"formula.functionList.XNPV.functionParameter.rate.name",detail:"formula.functionList.XNPV.functionParameter.rate.detail",example:"0.1",require:1,repeat:0},{name:"formula.functionList.XNPV.functionParameter.values.name",detail:"formula.functionList.XNPV.functionParameter.values.detail",example:"{-10000,2750,4250,3250,2750}",require:1,repeat:0},{name:"formula.functionList.XNPV.functionParameter.dates.name",detail:"formula.functionList.XNPV.functionParameter.dates.detail",example:"{39448,39508,39751,39859,39904}",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.YIELD,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.YIELD.description",abstract:"formula.functionList.YIELD.abstract",functionParameter:[{name:"formula.functionList.YIELD.functionParameter.settlement.name",detail:"formula.functionList.YIELD.functionParameter.settlement.detail",example:'"2008-11-11"',require:1,repeat:0},{name:"formula.functionList.YIELD.functionParameter.maturity.name",detail:"formula.functionList.YIELD.functionParameter.maturity.detail",example:'"2021-3-1"',require:1,repeat:0},{name:"formula.functionList.YIELD.functionParameter.rate.name",detail:"formula.functionList.YIELD.functionParameter.rate.detail",example:"0.0785",require:1,repeat:0},{name:"formula.functionList.YIELD.functionParameter.pr.name",detail:"formula.functionList.YIELD.functionParameter.pr.detail",example:"98.45",require:1,repeat:0},{name:"formula.functionList.YIELD.functionParameter.redemption.name",detail:"formula.functionList.YIELD.functionParameter.redemption.detail",example:"100",require:1,repeat:0},{name:"formula.functionList.YIELD.functionParameter.frequency.name",detail:"formula.functionList.YIELD.functionParameter.frequency.detail",example:"2",require:1,repeat:0},{name:"formula.functionList.YIELD.functionParameter.basis.name",detail:"formula.functionList.YIELD.functionParameter.basis.detail",example:"1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.YIELDDISC,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.YIELDDISC.description",abstract:"formula.functionList.YIELDDISC.abstract",functionParameter:[{name:"formula.functionList.YIELDDISC.functionParameter.settlement.name",detail:"formula.functionList.YIELDDISC.functionParameter.settlement.detail",example:'"2008-11-11"',require:1,repeat:0},{name:"formula.functionList.YIELDDISC.functionParameter.maturity.name",detail:"formula.functionList.YIELDDISC.functionParameter.maturity.detail",example:'"2021-3-1"',require:1,repeat:0},{name:"formula.functionList.YIELDDISC.functionParameter.pr.name",detail:"formula.functionList.YIELDDISC.functionParameter.pr.detail",example:"98.45",require:1,repeat:0},{name:"formula.functionList.YIELDDISC.functionParameter.redemption.name",detail:"formula.functionList.YIELDDISC.functionParameter.redemption.detail",example:"100",require:1,repeat:0},{name:"formula.functionList.YIELDDISC.functionParameter.basis.name",detail:"formula.functionList.YIELDDISC.functionParameter.basis.detail",example:"1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.YIELDMAT,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.YIELDMAT.description",abstract:"formula.functionList.YIELDMAT.abstract",functionParameter:[{name:"formula.functionList.YIELDMAT.functionParameter.settlement.name",detail:"formula.functionList.YIELDMAT.functionParameter.settlement.detail",example:'"2008-11-11"',require:1,repeat:0},{name:"formula.functionList.YIELDMAT.functionParameter.maturity.name",detail:"formula.functionList.YIELDMAT.functionParameter.maturity.detail",example:'"2021-3-1"',require:1,repeat:0},{name:"formula.functionList.YIELDMAT.functionParameter.issue.name",detail:"formula.functionList.YIELDMAT.functionParameter.issue.detail",example:'"2008-10-15"',require:1,repeat:0},{name:"formula.functionList.YIELDMAT.functionParameter.rate.name",detail:"formula.functionList.YIELDMAT.functionParameter.rate.detail",example:"0.0785",require:1,repeat:0},{name:"formula.functionList.YIELDMAT.functionParameter.pr.name",detail:"formula.functionList.YIELDMAT.functionParameter.pr.detail",example:"98.45",require:1,repeat:0},{name:"formula.functionList.YIELDMAT.functionParameter.basis.name",detail:"formula.functionList.YIELDMAT.functionParameter.basis.detail",example:"1",require:0,repeat:0}]}],FUNCTION_LIST_INFORMATION=[{functionName:engineFormula.FUNCTION_NAMES_INFORMATION.CELL,functionType:engineFormula.FunctionType.Information,description:"formula.functionList.CELL.description",abstract:"formula.functionList.CELL.abstract",functionParameter:[{name:"formula.functionList.CELL.functionParameter.infoType.name",detail:"formula.functionList.CELL.functionParameter.infoType.detail",example:'"type"',require:1,repeat:0},{name:"formula.functionList.CELL.functionParameter.reference.name",detail:"formula.functionList.CELL.functionParameter.reference.detail",example:"A1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_INFORMATION.ERROR_TYPE,functionType:engineFormula.FunctionType.Information,description:"formula.functionList.ERROR_TYPE.description",abstract:"formula.functionList.ERROR_TYPE.abstract",functionParameter:[{name:"formula.functionList.ERROR_TYPE.functionParameter.errorVal.name",detail:"formula.functionList.ERROR_TYPE.functionParameter.errorVal.detail",example:'"#NULL!"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_INFORMATION.INFO,functionType:engineFormula.FunctionType.Information,description:"formula.functionList.INFO.description",abstract:"formula.functionList.INFO.abstract",functionParameter:[{name:"formula.functionList.INFO.functionParameter.number1.name",detail:"formula.functionList.INFO.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.INFO.functionParameter.number2.name",detail:"formula.functionList.INFO.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_INFORMATION.ISBLANK,functionType:engineFormula.FunctionType.Information,description:"formula.functionList.ISBLANK.description",abstract:"formula.functionList.ISBLANK.abstract",functionParameter:[{name:"formula.functionList.ISBLANK.functionParameter.value.name",detail:"formula.functionList.ISBLANK.functionParameter.value.detail",example:"A1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_INFORMATION.ISERR,functionType:engineFormula.FunctionType.Information,description:"formula.functionList.ISERR.description",abstract:"formula.functionList.ISERR.abstract",functionParameter:[{name:"formula.functionList.ISERR.functionParameter.value.name",detail:"formula.functionList.ISERR.functionParameter.value.detail",example:"A1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_INFORMATION.ISERROR,functionType:engineFormula.FunctionType.Information,description:"formula.functionList.ISERROR.description",abstract:"formula.functionList.ISERROR.abstract",functionParameter:[{name:"formula.functionList.ISERROR.functionParameter.value.name",detail:"formula.functionList.ISERROR.functionParameter.value.detail",example:"A1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_INFORMATION.ISEVEN,functionType:engineFormula.FunctionType.Information,description:"formula.functionList.ISEVEN.description",abstract:"formula.functionList.ISEVEN.abstract",functionParameter:[{name:"formula.functionList.ISEVEN.functionParameter.value.name",detail:"formula.functionList.ISEVEN.functionParameter.value.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_INFORMATION.ISFORMULA,functionType:engineFormula.FunctionType.Information,description:"formula.functionList.ISFORMULA.description",abstract:"formula.functionList.ISFORMULA.abstract",functionParameter:[{name:"formula.functionList.ISFORMULA.functionParameter.reference.name",detail:"formula.functionList.ISFORMULA.functionParameter.reference.detail",example:"A1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_INFORMATION.ISLOGICAL,functionType:engineFormula.FunctionType.Information,description:"formula.functionList.ISLOGICAL.description",abstract:"formula.functionList.ISLOGICAL.abstract",functionParameter:[{name:"formula.functionList.ISLOGICAL.functionParameter.value.name",detail:"formula.functionList.ISLOGICAL.functionParameter.value.detail",example:"A1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_INFORMATION.ISNA,functionType:engineFormula.FunctionType.Information,description:"formula.functionList.ISNA.description",abstract:"formula.functionList.ISNA.abstract",functionParameter:[{name:"formula.functionList.ISNA.functionParameter.value.name",detail:"formula.functionList.ISNA.functionParameter.value.detail",example:"A1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_INFORMATION.ISNONTEXT,functionType:engineFormula.FunctionType.Information,description:"formula.functionList.ISNONTEXT.description",abstract:"formula.functionList.ISNONTEXT.abstract",functionParameter:[{name:"formula.functionList.ISNONTEXT.functionParameter.value.name",detail:"formula.functionList.ISNONTEXT.functionParameter.value.detail",example:"A1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_INFORMATION.ISNUMBER,functionType:engineFormula.FunctionType.Information,description:"formula.functionList.ISNUMBER.description",abstract:"formula.functionList.ISNUMBER.abstract",functionParameter:[{name:"formula.functionList.ISNUMBER.functionParameter.value.name",detail:"formula.functionList.ISNUMBER.functionParameter.value.detail",example:"A1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_INFORMATION.ISODD,functionType:engineFormula.FunctionType.Information,description:"formula.functionList.ISODD.description",abstract:"formula.functionList.ISODD.abstract",functionParameter:[{name:"formula.functionList.ISODD.functionParameter.value.name",detail:"formula.functionList.ISODD.functionParameter.value.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_INFORMATION.ISOMITTED,functionType:engineFormula.FunctionType.Information,description:"formula.functionList.ISOMITTED.description",abstract:"formula.functionList.ISOMITTED.abstract",functionParameter:[{name:"formula.functionList.ISOMITTED.functionParameter.number1.name",detail:"formula.functionList.ISOMITTED.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.ISOMITTED.functionParameter.number2.name",detail:"formula.functionList.ISOMITTED.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_INFORMATION.ISREF,functionType:engineFormula.FunctionType.Information,description:"formula.functionList.ISREF.description",abstract:"formula.functionList.ISREF.abstract",functionParameter:[{name:"formula.functionList.ISREF.functionParameter.value.name",detail:"formula.functionList.ISREF.functionParameter.value.detail",example:"A1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_INFORMATION.ISTEXT,functionType:engineFormula.FunctionType.Information,description:"formula.functionList.ISTEXT.description",abstract:"formula.functionList.ISTEXT.abstract",functionParameter:[{name:"formula.functionList.ISTEXT.functionParameter.value.name",detail:"formula.functionList.ISTEXT.functionParameter.value.detail",example:"A1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_INFORMATION.N,functionType:engineFormula.FunctionType.Information,description:"formula.functionList.N.description",abstract:"formula.functionList.N.abstract",functionParameter:[{name:"formula.functionList.N.functionParameter.value.name",detail:"formula.functionList.N.functionParameter.value.detail",example:"7",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_INFORMATION.NA,functionType:engineFormula.FunctionType.Information,description:"formula.functionList.NA.description",abstract:"formula.functionList.NA.abstract",functionParameter:[]},{functionName:engineFormula.FUNCTION_NAMES_INFORMATION.SHEET,functionType:engineFormula.FunctionType.Information,description:"formula.functionList.SHEET.description",abstract:"formula.functionList.SHEET.abstract",functionParameter:[{name:"formula.functionList.SHEET.functionParameter.number1.name",detail:"formula.functionList.SHEET.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.SHEET.functionParameter.number2.name",detail:"formula.functionList.SHEET.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_INFORMATION.SHEETS,functionType:engineFormula.FunctionType.Information,description:"formula.functionList.SHEETS.description",abstract:"formula.functionList.SHEETS.abstract",functionParameter:[{name:"formula.functionList.SHEETS.functionParameter.number1.name",detail:"formula.functionList.SHEETS.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.SHEETS.functionParameter.number2.name",detail:"formula.functionList.SHEETS.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_INFORMATION.TYPE,functionType:engineFormula.FunctionType.Information,description:"formula.functionList.TYPE.description",abstract:"formula.functionList.TYPE.abstract",functionParameter:[{name:"formula.functionList.TYPE.functionParameter.value.name",detail:"formula.functionList.TYPE.functionParameter.value.detail",example:"A2",require:1,repeat:0}]}],FUNCTION_LIST_LOGICAL=[{functionName:engineFormula.FUNCTION_NAMES_LOGICAL.AND,functionType:engineFormula.FunctionType.Logical,description:"formula.functionList.AND.description",abstract:"formula.functionList.AND.abstract",functionParameter:[{name:"formula.functionList.AND.functionParameter.logical1.name",detail:"formula.functionList.AND.functionParameter.logical1.detail",example:"A1=1",require:1,repeat:0},{name:"formula.functionList.AND.functionParameter.logical2.name",detail:"formula.functionList.AND.functionParameter.logical2.detail",example:"A2=2",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_LOGICAL.BYCOL,functionType:engineFormula.FunctionType.Logical,description:"formula.functionList.BYCOL.description",abstract:"formula.functionList.BYCOL.abstract",functionParameter:[{name:"formula.functionList.BYCOL.functionParameter.array.name",detail:"formula.functionList.BYCOL.functionParameter.array.detail",example:"A1:C2",require:1,repeat:0},{name:"formula.functionList.BYCOL.functionParameter.lambda.name",detail:"formula.functionList.BYCOL.functionParameter.lambda.detail",example:"LAMBDA(array, MAX(array))",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOGICAL.BYROW,functionType:engineFormula.FunctionType.Logical,description:"formula.functionList.BYROW.description",abstract:"formula.functionList.BYROW.abstract",functionParameter:[{name:"formula.functionList.BYROW.functionParameter.array.name",detail:"formula.functionList.BYROW.functionParameter.array.detail",example:"A1:C2",require:1,repeat:0},{name:"formula.functionList.BYROW.functionParameter.lambda.name",detail:"formula.functionList.BYROW.functionParameter.lambda.detail",example:"LAMBDA(array, MAX(array))",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOGICAL.FALSE,functionType:engineFormula.FunctionType.Logical,description:"formula.functionList.FALSE.description",abstract:"formula.functionList.FALSE.abstract",functionParameter:[]},{functionName:engineFormula.FUNCTION_NAMES_LOGICAL.IF,functionType:engineFormula.FunctionType.Logical,description:"formula.functionList.IF.description",abstract:"formula.functionList.IF.abstract",functionParameter:[{name:"formula.functionList.IF.functionParameter.logicalTest.name",detail:"formula.functionList.IF.functionParameter.logicalTest.detail",example:'A2 = "foo"',require:1,repeat:0},{name:"formula.functionList.IF.functionParameter.valueIfTrue.name",detail:"formula.functionList.IF.functionParameter.valueIfTrue.detail",example:'"A2 is foo"',require:1,repeat:0},{name:"formula.functionList.IF.functionParameter.valueIfFalse.name",detail:"formula.functionList.IF.functionParameter.valueIfFalse.detail",example:'"A2 is not foo"',require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOGICAL.IFERROR,functionType:engineFormula.FunctionType.Logical,description:"formula.functionList.IFERROR.description",abstract:"formula.functionList.IFERROR.abstract",functionParameter:[{name:"formula.functionList.IFERROR.functionParameter.value.name",detail:"formula.functionList.IFERROR.functionParameter.value.detail",example:"A2/B2",require:1,repeat:0},{name:"formula.functionList.IFERROR.functionParameter.valueIfError.name",detail:"formula.functionList.IFERROR.functionParameter.valueIfError.detail",example:"Error in calculation",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOGICAL.IFNA,functionType:engineFormula.FunctionType.Logical,description:"formula.functionList.IFNA.description",abstract:"formula.functionList.IFNA.abstract",functionParameter:[{name:"formula.functionList.IFNA.functionParameter.value.name",detail:"formula.functionList.IFNA.functionParameter.value.detail",example:"VLOOKUP(C3,C6:D11,2,FALSE)",require:1,repeat:0},{name:"formula.functionList.IFNA.functionParameter.valueIfNa.name",detail:"formula.functionList.IFNA.functionParameter.valueIfNa.detail",example:'"Not Found"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOGICAL.IFS,functionType:engineFormula.FunctionType.Logical,description:"formula.functionList.IFS.description",abstract:"formula.functionList.IFS.abstract",functionParameter:[{name:"formula.functionList.IFS.functionParameter.logicalTest1.name",detail:"formula.functionList.IFS.functionParameter.logicalTest1.detail",example:'A2 = "foo"',require:1,repeat:0},{name:"formula.functionList.IFS.functionParameter.valueIfTrue1.name",detail:"formula.functionList.IFS.functionParameter.valueIfTrue1.detail",example:'"A2 is foo"',require:1,repeat:0},{name:"formula.functionList.IFS.functionParameter.logicalTest2.name",detail:"formula.functionList.IFS.functionParameter.logicalTest2.detail",example:"F2=1",require:0,repeat:1},{name:"formula.functionList.IFS.functionParameter.valueIfTrue2.name",detail:"formula.functionList.IFS.functionParameter.valueIfTrue2.detail",example:"D2",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_LOGICAL.LAMBDA,functionType:engineFormula.FunctionType.Logical,description:"formula.functionList.LAMBDA.description",abstract:"formula.functionList.LAMBDA.abstract",functionParameter:[{name:"formula.functionList.LAMBDA.functionParameter.parameter.name",detail:"formula.functionList.LAMBDA.functionParameter.parameter.detail",example:"[x, y, …,]",require:0,repeat:1},{name:"formula.functionList.LAMBDA.functionParameter.calculation.name",detail:"formula.functionList.LAMBDA.functionParameter.calculation.detail",example:"x+y",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOGICAL.LET,functionType:engineFormula.FunctionType.Logical,description:"formula.functionList.LET.description",abstract:"formula.functionList.LET.abstract",functionParameter:[{name:"formula.functionList.LET.functionParameter.name1.name",detail:"formula.functionList.LET.functionParameter.name1.detail",example:"x",require:1,repeat:0},{name:"formula.functionList.LET.functionParameter.nameValue1.name",detail:"formula.functionList.LET.functionParameter.nameValue1.detail",example:"5",require:1,repeat:0},{name:"formula.functionList.LET.functionParameter.calculationOrName2.name",detail:"formula.functionList.LET.functionParameter.calculationOrName2.detail",example:"y",require:1,repeat:0},{name:"formula.functionList.LET.functionParameter.nameValue2.name",detail:"formula.functionList.LET.functionParameter.nameValue2.detail",example:"6",require:0,repeat:1},{name:"formula.functionList.LET.functionParameter.calculationOrName3.name",detail:"formula.functionList.LET.functionParameter.calculationOrName3.detail",example:"SUM(x,y)",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_LOGICAL.MAKEARRAY,aliasFunctionName:"formula.functionList.MAKEARRAY.aliasFunctionName",functionType:engineFormula.FunctionType.Logical,description:"formula.functionList.MAKEARRAY.description",abstract:"formula.functionList.MAKEARRAY.abstract",functionParameter:[{name:"formula.functionList.MAKEARRAY.functionParameter.number1.name",detail:"formula.functionList.MAKEARRAY.functionParameter.number1.detail",example:"8",require:1,repeat:0},{name:"formula.functionList.MAKEARRAY.functionParameter.number2.name",detail:"formula.functionList.MAKEARRAY.functionParameter.number2.detail",example:"7",require:1,repeat:0},{name:"formula.functionList.MAKEARRAY.functionParameter.value3.name",detail:"formula.functionList.MAKEARRAY.functionParameter.value3.detail",example:"LAMBDA(r,c, r*c)",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOGICAL.MAP,functionType:engineFormula.FunctionType.Logical,description:"formula.functionList.MAP.description",abstract:"formula.functionList.MAP.abstract",functionParameter:[{name:"formula.functionList.MAP.functionParameter.array1.name",detail:"formula.functionList.MAP.functionParameter.array1.detail",example:"D2:D11",require:1,repeat:0},{name:"formula.functionList.MAP.functionParameter.array2.name",detail:"formula.functionList.MAP.functionParameter.array2.detail",example:"E2:E11",require:0,repeat:1},{name:"formula.functionList.MAP.functionParameter.lambda.name",detail:"formula.functionList.MAP.functionParameter.lambda.detail",example:'LAMBDA(s,c,AND(s="Large",c="Red"))',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOGICAL.NOT,functionType:engineFormula.FunctionType.Logical,description:"formula.functionList.NOT.description",abstract:"formula.functionList.NOT.abstract",functionParameter:[{name:"formula.functionList.NOT.functionParameter.logical.name",detail:"formula.functionList.NOT.functionParameter.logical.detail",example:"A2>100",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOGICAL.OR,functionType:engineFormula.FunctionType.Logical,description:"formula.functionList.OR.description",abstract:"formula.functionList.OR.abstract",functionParameter:[{name:"formula.functionList.OR.functionParameter.logical1.name",detail:"formula.functionList.OR.functionParameter.logical1.detail",example:"A1=1",require:1,repeat:0},{name:"formula.functionList.OR.functionParameter.logical2.name",detail:"formula.functionList.OR.functionParameter.logical2.detail",example:"A2=2",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_LOGICAL.REDUCE,functionType:engineFormula.FunctionType.Logical,description:"formula.functionList.REDUCE.description",abstract:"formula.functionList.REDUCE.abstract",functionParameter:[{name:"formula.functionList.REDUCE.functionParameter.initialValue.name",detail:"formula.functionList.REDUCE.functionParameter.initialValue.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.REDUCE.functionParameter.array.name",detail:"formula.functionList.REDUCE.functionParameter.array.detail",example:"A1:C2",require:1,repeat:0},{name:"formula.functionList.REDUCE.functionParameter.lambda.name",detail:"formula.functionList.REDUCE.functionParameter.lambda.detail",example:"LAMBDA(a,b,a+b^2)",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOGICAL.SCAN,functionType:engineFormula.FunctionType.Logical,description:"formula.functionList.SCAN.description",abstract:"formula.functionList.SCAN.abstract",functionParameter:[{name:"formula.functionList.SCAN.functionParameter.initialValue.name",detail:"formula.functionList.SCAN.functionParameter.initialValue.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.SCAN.functionParameter.array.name",detail:"formula.functionList.SCAN.functionParameter.array.detail",example:"A1:C2",require:1,repeat:0},{name:"formula.functionList.SCAN.functionParameter.lambda.name",detail:"formula.functionList.SCAN.functionParameter.lambda.detail",example:"LAMBDA(a,b,a+b^2)",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOGICAL.SWITCH,functionType:engineFormula.FunctionType.Logical,description:"formula.functionList.SWITCH.description",abstract:"formula.functionList.SWITCH.abstract",functionParameter:[{name:"formula.functionList.SWITCH.functionParameter.expression.name",detail:"formula.functionList.SWITCH.functionParameter.expression.detail",example:"WEEKDAY(A2)",require:1,repeat:0},{name:"formula.functionList.SWITCH.functionParameter.value1.name",detail:"formula.functionList.SWITCH.functionParameter.value1.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.SWITCH.functionParameter.result1.name",detail:"formula.functionList.SWITCH.functionParameter.result1.detail",example:'"Sunday"',require:1,repeat:0},{name:"formula.functionList.SWITCH.functionParameter.defaultOrValue2.name",detail:"formula.functionList.SWITCH.functionParameter.defaultOrValue2.detail",example:"2",require:0,repeat:1},{name:"formula.functionList.SWITCH.functionParameter.result2.name",detail:"formula.functionList.SWITCH.functionParameter.result2.detail",example:'"Monday"',require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_LOGICAL.TRUE,functionType:engineFormula.FunctionType.Logical,description:"formula.functionList.TRUE.description",abstract:"formula.functionList.TRUE.abstract",functionParameter:[]},{functionName:engineFormula.FUNCTION_NAMES_LOGICAL.XOR,functionType:engineFormula.FunctionType.Logical,description:"formula.functionList.XOR.description",abstract:"formula.functionList.XOR.abstract",functionParameter:[{name:"formula.functionList.XOR.functionParameter.logical1.name",detail:"formula.functionList.XOR.functionParameter.logical1.detail",example:"3>0",require:1,repeat:0},{name:"formula.functionList.XOR.functionParameter.logical2.name",detail:"formula.functionList.XOR.functionParameter.logical2.detail",example:"2<9",require:0,repeat:1}]}],FUNCTION_LIST_LOOKUP=[{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.ADDRESS,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.ADDRESS.description",abstract:"formula.functionList.ADDRESS.abstract",functionParameter:[{name:"formula.functionList.ADDRESS.functionParameter.row_num.name",detail:"formula.functionList.ADDRESS.functionParameter.row_num.detail",example:"2",require:1,repeat:0},{name:"formula.functionList.ADDRESS.functionParameter.column_num.name",detail:"formula.functionList.ADDRESS.functionParameter.column_num.detail",example:"2",require:1,repeat:0},{name:"formula.functionList.ADDRESS.functionParameter.abs_num.name",detail:"formula.functionList.ADDRESS.functionParameter.abs_num.detail",example:"1",require:0,repeat:0},{name:"formula.functionList.ADDRESS.functionParameter.a1.name",detail:"formula.functionList.ADDRESS.functionParameter.a1.detail",example:"TRUE",require:0,repeat:0},{name:"formula.functionList.ADDRESS.functionParameter.sheet_text.name",detail:"formula.functionList.ADDRESS.functionParameter.sheet_text.detail",example:'"Sheet2"',require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.AREAS,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.AREAS.description",abstract:"formula.functionList.AREAS.abstract",functionParameter:[{name:"formula.functionList.AREAS.functionParameter.reference.name",detail:"formula.functionList.AREAS.functionParameter.reference.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.CHOOSE,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.CHOOSE.description",abstract:"formula.functionList.CHOOSE.abstract",functionParameter:[{name:"formula.functionList.CHOOSE.functionParameter.indexNum.name",detail:"formula.functionList.CHOOSE.functionParameter.indexNum.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.CHOOSE.functionParameter.value1.name",detail:"formula.functionList.CHOOSE.functionParameter.value1.detail",example:'"Hello"',require:1,repeat:0},{name:"formula.functionList.CHOOSE.functionParameter.value2.name",detail:"formula.functionList.CHOOSE.functionParameter.value2.detail",example:'"Univer"',require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.CHOOSECOLS,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.CHOOSECOLS.description",abstract:"formula.functionList.CHOOSECOLS.abstract",functionParameter:[{name:"formula.functionList.CHOOSECOLS.functionParameter.array.name",detail:"formula.functionList.CHOOSECOLS.functionParameter.array.detail",example:"{1,2,3;2,3,4}",require:1,repeat:0},{name:"formula.functionList.CHOOSECOLS.functionParameter.colNum1.name",detail:"formula.functionList.CHOOSECOLS.functionParameter.colNum1.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.CHOOSECOLS.functionParameter.colNum2.name",detail:"formula.functionList.CHOOSECOLS.functionParameter.colNum2.detail",example:"2",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.CHOOSEROWS,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.CHOOSEROWS.description",abstract:"formula.functionList.CHOOSEROWS.abstract",functionParameter:[{name:"formula.functionList.CHOOSEROWS.functionParameter.array.name",detail:"formula.functionList.CHOOSEROWS.functionParameter.array.detail",example:"{1,2,3;2,3,4}",require:1,repeat:0},{name:"formula.functionList.CHOOSEROWS.functionParameter.rowNum1.name",detail:"formula.functionList.CHOOSEROWS.functionParameter.rowNum1.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.CHOOSEROWS.functionParameter.rowNum2.name",detail:"formula.functionList.CHOOSEROWS.functionParameter.rowNum2.detail",example:"2",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.COLUMN,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.COLUMN.description",abstract:"formula.functionList.COLUMN.abstract",functionParameter:[{name:"formula.functionList.COLUMN.functionParameter.reference.name",detail:"formula.functionList.COLUMN.functionParameter.reference.detail",example:"A1:A20",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.COLUMNS,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.COLUMNS.description",abstract:"formula.functionList.COLUMNS.abstract",functionParameter:[{name:"formula.functionList.COLUMNS.functionParameter.array.name",detail:"formula.functionList.COLUMNS.functionParameter.array.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.DROP,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.DROP.description",abstract:"formula.functionList.DROP.abstract",functionParameter:[{name:"formula.functionList.DROP.functionParameter.array.name",detail:"formula.functionList.DROP.functionParameter.array.detail",example:"A2:C4",require:1,repeat:0},{name:"formula.functionList.DROP.functionParameter.rows.name",detail:"formula.functionList.DROP.functionParameter.rows.detail",example:"2",require:1,repeat:0},{name:"formula.functionList.DROP.functionParameter.columns.name",detail:"formula.functionList.DROP.functionParameter.columns.detail",example:"2",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.EXPAND,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.EXPAND.description",abstract:"formula.functionList.EXPAND.abstract",functionParameter:[{name:"formula.functionList.EXPAND.functionParameter.array.name",detail:"formula.functionList.EXPAND.functionParameter.array.detail",example:"A2",require:1,repeat:0},{name:"formula.functionList.EXPAND.functionParameter.rows.name",detail:"formula.functionList.EXPAND.functionParameter.rows.detail",example:"3",require:1,repeat:0},{name:"formula.functionList.EXPAND.functionParameter.columns.name",detail:"formula.functionList.EXPAND.functionParameter.columns.detail",example:"3",require:0,repeat:0},{name:"formula.functionList.EXPAND.functionParameter.padWith.name",detail:"formula.functionList.EXPAND.functionParameter.padWith.detail",example:'"-"',require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.FILTER,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.FILTER.description",abstract:"formula.functionList.FILTER.abstract",functionParameter:[{name:"formula.functionList.FILTER.functionParameter.array.name",detail:"formula.functionList.FILTER.functionParameter.array.detail",example:"A5:D20",require:1,repeat:0},{name:"formula.functionList.FILTER.functionParameter.include.name",detail:"formula.functionList.FILTER.functionParameter.include.detail",example:'(C5:C20="Apple")*(A5:A20="East")',require:1,repeat:0},{name:"formula.functionList.FILTER.functionParameter.ifEmpty.name",detail:"formula.functionList.FILTER.functionParameter.ifEmpty.detail",example:'""',require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.FORMULATEXT,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.FORMULATEXT.description",abstract:"formula.functionList.FORMULATEXT.abstract",functionParameter:[{name:"formula.functionList.FORMULATEXT.functionParameter.number1.name",detail:"formula.functionList.FORMULATEXT.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.FORMULATEXT.functionParameter.number2.name",detail:"formula.functionList.FORMULATEXT.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.GETPIVOTDATA,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.GETPIVOTDATA.description",abstract:"formula.functionList.GETPIVOTDATA.abstract",functionParameter:[{name:"formula.functionList.GETPIVOTDATA.functionParameter.number1.name",detail:"formula.functionList.GETPIVOTDATA.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.GETPIVOTDATA.functionParameter.number2.name",detail:"formula.functionList.GETPIVOTDATA.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.HLOOKUP,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.HLOOKUP.description",abstract:"formula.functionList.HLOOKUP.abstract",functionParameter:[{name:"formula.functionList.HLOOKUP.functionParameter.lookupValue.name",detail:"formula.functionList.HLOOKUP.functionParameter.lookupValue.detail",example:"A1",require:1,repeat:0},{name:"formula.functionList.HLOOKUP.functionParameter.tableArray.name",detail:"formula.functionList.HLOOKUP.functionParameter.tableArray.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.HLOOKUP.functionParameter.rowIndexNum.name",detail:"formula.functionList.HLOOKUP.functionParameter.rowIndexNum.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.HLOOKUP.functionParameter.rangeLookup.name",detail:"formula.functionList.HLOOKUP.functionParameter.rangeLookup.detail",example:"false",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.HSTACK,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.HSTACK.description",abstract:"formula.functionList.HSTACK.abstract",functionParameter:[{name:"formula.functionList.HSTACK.functionParameter.array1.name",detail:"formula.functionList.HSTACK.functionParameter.array1.detail",example:"A2:C3",require:1,repeat:0},{name:"formula.functionList.HSTACK.functionParameter.array2.name",detail:"formula.functionList.HSTACK.functionParameter.array2.detail",example:"E2:G3",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.HYPERLINK,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.HYPERLINK.description",abstract:"formula.functionList.HYPERLINK.abstract",functionParameter:[{name:"formula.functionList.HYPERLINK.functionParameter.number1.name",detail:"formula.functionList.HYPERLINK.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.HYPERLINK.functionParameter.number2.name",detail:"formula.functionList.HYPERLINK.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.IMAGE,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.IMAGE.description",abstract:"formula.functionList.IMAGE.abstract",functionParameter:[{name:"formula.functionList.IMAGE.functionParameter.number1.name",detail:"formula.functionList.IMAGE.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.IMAGE.functionParameter.number2.name",detail:"formula.functionList.IMAGE.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.INDEX,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.INDEX.description",abstract:"formula.functionList.INDEX.abstract",functionParameter:[{name:"formula.functionList.INDEX.functionParameter.reference.name",detail:"formula.functionList.INDEX.functionParameter.reference.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.INDEX.functionParameter.rowNum.name",detail:"formula.functionList.INDEX.functionParameter.rowNum.detail",example:"1",require:0,repeat:0},{name:"formula.functionList.INDEX.functionParameter.columnNum.name",detail:"formula.functionList.INDEX.functionParameter.columnNum.detail",example:"1",require:0,repeat:0},{name:"formula.functionList.INDEX.functionParameter.areaNum.name",detail:"formula.functionList.INDEX.functionParameter.areaNum.detail",example:"2",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.INDIRECT,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.INDIRECT.description",abstract:"formula.functionList.INDIRECT.abstract",functionParameter:[{name:"formula.functionList.INDIRECT.functionParameter.refText.name",detail:"formula.functionList.INDIRECT.functionParameter.refText.detail",example:'"A1"',require:1,repeat:0},{name:"formula.functionList.INDIRECT.functionParameter.a1.name",detail:"formula.functionList.INDIRECT.functionParameter.a1.detail",example:"TRUE",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.LOOKUP,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.LOOKUP.description",abstract:"formula.functionList.LOOKUP.abstract",functionParameter:[{name:"formula.functionList.LOOKUP.functionParameter.lookupValue.name",detail:"formula.functionList.LOOKUP.functionParameter.lookupValue.detail",example:"A1",require:1,repeat:0},{name:"formula.functionList.LOOKUP.functionParameter.lookupVectorOrArray.name",detail:"formula.functionList.LOOKUP.functionParameter.lookupVectorOrArray.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.LOOKUP.functionParameter.resultVector.name",detail:"formula.functionList.LOOKUP.functionParameter.resultVector.detail",example:"A1:A20",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.MATCH,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.MATCH.description",abstract:"formula.functionList.MATCH.abstract",functionParameter:[{name:"formula.functionList.MATCH.functionParameter.lookupValue.name",detail:"formula.functionList.MATCH.functionParameter.lookupValue.detail",example:"10",require:1,repeat:0},{name:"formula.functionList.MATCH.functionParameter.lookupArray.name",detail:"formula.functionList.MATCH.functionParameter.lookupArray.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.MATCH.functionParameter.matchType.name",detail:"formula.functionList.MATCH.functionParameter.matchType.detail",example:"1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.OFFSET,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.OFFSET.description",abstract:"formula.functionList.OFFSET.abstract",functionParameter:[{name:"formula.functionList.OFFSET.functionParameter.reference.name",detail:"formula.functionList.OFFSET.functionParameter.reference.detail",example:"A1",require:1,repeat:0},{name:"formula.functionList.OFFSET.functionParameter.rows.name",detail:"formula.functionList.OFFSET.functionParameter.rows.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.OFFSET.functionParameter.cols.name",detail:"formula.functionList.OFFSET.functionParameter.cols.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.OFFSET.functionParameter.height.name",detail:"formula.functionList.OFFSET.functionParameter.height.detail",example:"1",require:0,repeat:0},{name:"formula.functionList.OFFSET.functionParameter.width.name",detail:"formula.functionList.OFFSET.functionParameter.width.detail",example:"1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.ROW,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.ROW.description",abstract:"formula.functionList.ROW.abstract",functionParameter:[{name:"formula.functionList.ROW.functionParameter.reference.name",detail:"formula.functionList.ROW.functionParameter.reference.detail",example:"A1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.ROWS,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.ROWS.description",abstract:"formula.functionList.ROWS.abstract",functionParameter:[{name:"formula.functionList.ROWS.functionParameter.array.name",detail:"formula.functionList.ROWS.functionParameter.array.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.RTD,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.RTD.description",abstract:"formula.functionList.RTD.abstract",functionParameter:[{name:"formula.functionList.RTD.functionParameter.number1.name",detail:"formula.functionList.RTD.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.RTD.functionParameter.number2.name",detail:"formula.functionList.RTD.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.SORT,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.SORT.description",abstract:"formula.functionList.SORT.abstract",functionParameter:[{name:"formula.functionList.SORT.functionParameter.array.name",detail:"formula.functionList.SORT.functionParameter.array.detail",example:"A2:A17",require:1,repeat:0},{name:"formula.functionList.SORT.functionParameter.sortIndex.name",detail:"formula.functionList.SORT.functionParameter.sortIndex.detail",example:"1",require:0,repeat:0},{name:"formula.functionList.SORT.functionParameter.sortOrder.name",detail:"formula.functionList.SORT.functionParameter.sortOrder.detail",example:"1",require:0,repeat:0},{name:"formula.functionList.SORT.functionParameter.byCol.name",detail:"formula.functionList.SORT.functionParameter.byCol.detail",example:"false",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.SORTBY,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.SORTBY.description",abstract:"formula.functionList.SORTBY.abstract",functionParameter:[{name:"formula.functionList.SORTBY.functionParameter.array.name",detail:"formula.functionList.SORTBY.functionParameter.array.detail",example:"D2:D9",require:1,repeat:0},{name:"formula.functionList.SORTBY.functionParameter.byArray1.name",detail:"formula.functionList.SORTBY.functionParameter.byArray1.detail",example:"E2:E9",require:1,repeat:0},{name:"formula.functionList.SORTBY.functionParameter.sortOrder1.name",detail:"formula.functionList.SORTBY.functionParameter.sortOrder1.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.SORTBY.functionParameter.byArray2.name",detail:"formula.functionList.SORTBY.functionParameter.byArray2.detail",example:"E2:E9",require:0,repeat:1},{name:"formula.functionList.SORTBY.functionParameter.sortOrder2.name",detail:"formula.functionList.SORTBY.functionParameter.sortOrder2.detail",example:"1",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.TAKE,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.TAKE.description",abstract:"formula.functionList.TAKE.abstract",functionParameter:[{name:"formula.functionList.TAKE.functionParameter.array.name",detail:"formula.functionList.TAKE.functionParameter.array.detail",example:"A2:C4",require:1,repeat:0},{name:"formula.functionList.TAKE.functionParameter.rows.name",detail:"formula.functionList.TAKE.functionParameter.rows.detail",example:"2",require:1,repeat:0},{name:"formula.functionList.TAKE.functionParameter.columns.name",detail:"formula.functionList.TAKE.functionParameter.columns.detail",example:"2",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.TOCOL,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.TOCOL.description",abstract:"formula.functionList.TOCOL.abstract",functionParameter:[{name:"formula.functionList.TOCOL.functionParameter.array.name",detail:"formula.functionList.TOCOL.functionParameter.array.detail",example:"A2:D4",require:1,repeat:0},{name:"formula.functionList.TOCOL.functionParameter.ignore.name",detail:"formula.functionList.TOCOL.functionParameter.ignore.detail",example:"1",require:0,repeat:0},{name:"formula.functionList.TOCOL.functionParameter.scanByColumn.name",detail:"formula.functionList.TOCOL.functionParameter.scanByColumn.detail",example:"TRUE",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.TOROW,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.TOROW.description",abstract:"formula.functionList.TOROW.abstract",functionParameter:[{name:"formula.functionList.TOROW.functionParameter.array.name",detail:"formula.functionList.TOROW.functionParameter.array.detail",example:"A2:D4",require:1,repeat:0},{name:"formula.functionList.TOROW.functionParameter.ignore.name",detail:"formula.functionList.TOROW.functionParameter.ignore.detail",example:"1",require:0,repeat:0},{name:"formula.functionList.TOROW.functionParameter.scanByColumn.name",detail:"formula.functionList.TOROW.functionParameter.scanByColumn.detail",example:"TRUE",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.TRANSPOSE,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.TRANSPOSE.description",abstract:"formula.functionList.TRANSPOSE.abstract",functionParameter:[{name:"formula.functionList.TRANSPOSE.functionParameter.array.name",detail:"formula.functionList.TRANSPOSE.functionParameter.array.detail",example:"A2:F9",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.UNIQUE,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.UNIQUE.description",abstract:"formula.functionList.UNIQUE.abstract",functionParameter:[{name:"formula.functionList.UNIQUE.functionParameter.array.name",detail:"formula.functionList.UNIQUE.functionParameter.array.detail",example:"A2:A12",require:1,repeat:0},{name:"formula.functionList.UNIQUE.functionParameter.byCol.name",detail:"formula.functionList.UNIQUE.functionParameter.byCol.detail",example:"false",require:0,repeat:0},{name:"formula.functionList.UNIQUE.functionParameter.exactlyOnce.name",detail:"formula.functionList.UNIQUE.functionParameter.exactlyOnce.detail",example:"false",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.VLOOKUP,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.VLOOKUP.description",abstract:"formula.functionList.VLOOKUP.abstract",functionParameter:[{name:"formula.functionList.VLOOKUP.functionParameter.lookupValue.name",detail:"formula.functionList.VLOOKUP.functionParameter.lookupValue.detail",example:"B2",require:1,repeat:0},{name:"formula.functionList.VLOOKUP.functionParameter.tableArray.name",detail:"formula.functionList.VLOOKUP.functionParameter.tableArray.detail",example:"C2:E7",require:1,repeat:0},{name:"formula.functionList.VLOOKUP.functionParameter.colIndexNum.name",detail:"formula.functionList.VLOOKUP.functionParameter.colIndexNum.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.VLOOKUP.functionParameter.rangeLookup.name",detail:"formula.functionList.VLOOKUP.functionParameter.rangeLookup.detail",example:"TRUE",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.VSTACK,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.VSTACK.description",abstract:"formula.functionList.VSTACK.abstract",functionParameter:[{name:"formula.functionList.VSTACK.functionParameter.array1.name",detail:"formula.functionList.VSTACK.functionParameter.array1.detail",example:"A2:C3",require:1,repeat:0},{name:"formula.functionList.VSTACK.functionParameter.array2.name",detail:"formula.functionList.VSTACK.functionParameter.array2.detail",example:"E2:G3",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.WRAPCOLS,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.WRAPCOLS.description",abstract:"formula.functionList.WRAPCOLS.abstract",functionParameter:[{name:"formula.functionList.WRAPCOLS.functionParameter.vector.name",detail:"formula.functionList.WRAPCOLS.functionParameter.vector.detail",example:"A2:G2",require:1,repeat:0},{name:"formula.functionList.WRAPCOLS.functionParameter.wrapCount.name",detail:"formula.functionList.WRAPCOLS.functionParameter.wrapCount.detail",example:"3",require:1,repeat:0},{name:"formula.functionList.WRAPCOLS.functionParameter.padWith.name",detail:"formula.functionList.WRAPCOLS.functionParameter.padWith.detail",example:'"x"',require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.WRAPROWS,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.WRAPROWS.description",abstract:"formula.functionList.WRAPROWS.abstract",functionParameter:[{name:"formula.functionList.WRAPROWS.functionParameter.vector.name",detail:"formula.functionList.WRAPROWS.functionParameter.vector.detail",example:"A2:G2",require:1,repeat:0},{name:"formula.functionList.WRAPROWS.functionParameter.wrapCount.name",detail:"formula.functionList.WRAPROWS.functionParameter.wrapCount.detail",example:"3",require:1,repeat:0},{name:"formula.functionList.WRAPROWS.functionParameter.padWith.name",detail:"formula.functionList.WRAPROWS.functionParameter.padWith.detail",example:'"x"',require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.XLOOKUP,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.XLOOKUP.description",abstract:"formula.functionList.XLOOKUP.abstract",functionParameter:[{name:"formula.functionList.XLOOKUP.functionParameter.lookupValue.name",detail:"formula.functionList.XLOOKUP.functionParameter.lookupValue.detail",example:"A1",require:1,repeat:0},{name:"formula.functionList.XLOOKUP.functionParameter.lookupArray.name",detail:"formula.functionList.XLOOKUP.functionParameter.lookupArray.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.XLOOKUP.functionParameter.returnArray.name",detail:"formula.functionList.XLOOKUP.functionParameter.returnArray.detail",example:"B1:B20",require:1,repeat:0},{name:"formula.functionList.XLOOKUP.functionParameter.ifNotFound.name",detail:"formula.functionList.XLOOKUP.functionParameter.ifNotFound.detail",example:"default",require:0,repeat:0},{name:"formula.functionList.XLOOKUP.functionParameter.matchMode.name",detail:"formula.functionList.XLOOKUP.functionParameter.matchMode.detail",example:"0",require:0,repeat:0},{name:"formula.functionList.XLOOKUP.functionParameter.searchMode.name",detail:"formula.functionList.XLOOKUP.functionParameter.searchMode.detail",example:"1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.XMATCH,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.XMATCH.description",abstract:"formula.functionList.XMATCH.abstract",functionParameter:[{name:"formula.functionList.XMATCH.functionParameter.lookupValue.name",detail:"formula.functionList.XMATCH.functionParameter.lookupValue.detail",example:"B1",require:1,repeat:0},{name:"formula.functionList.XMATCH.functionParameter.lookupArray.name",detail:"formula.functionList.XMATCH.functionParameter.lookupArray.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.XMATCH.functionParameter.matchMode.name",detail:"formula.functionList.XMATCH.functionParameter.matchMode.detail",example:"0",require:0,repeat:0},{name:"formula.functionList.XMATCH.functionParameter.searchMode.name",detail:"formula.functionList.XMATCH.functionParameter.searchMode.detail",example:"1",require:0,repeat:0}]}],FUNCTION_LIST_MATH=[{functionName:engineFormula.FUNCTION_NAMES_MATH.ABS,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.ABS.description",abstract:"formula.functionList.ABS.abstract",functionParameter:[{name:"formula.functionList.ABS.functionParameter.number.name",detail:"formula.functionList.ABS.functionParameter.number.detail",example:"-2",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.ACOS,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.ACOS.description",abstract:"formula.functionList.ACOS.abstract",functionParameter:[{name:"formula.functionList.ACOS.functionParameter.number.name",detail:"formula.functionList.ACOS.functionParameter.number.detail",example:"0",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.ACOSH,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.ACOSH.description",abstract:"formula.functionList.ACOSH.abstract",functionParameter:[{name:"formula.functionList.ACOSH.functionParameter.number.name",detail:"formula.functionList.ACOSH.functionParameter.number.detail",example:"2",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.ACOT,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.ACOT.description",abstract:"formula.functionList.ACOT.abstract",functionParameter:[{name:"formula.functionList.ACOT.functionParameter.number.name",detail:"formula.functionList.ACOT.functionParameter.number.detail",example:"0",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.ACOTH,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.ACOTH.description",abstract:"formula.functionList.ACOTH.abstract",functionParameter:[{name:"formula.functionList.ACOTH.functionParameter.number.name",detail:"formula.functionList.ACOTH.functionParameter.number.detail",example:"6",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.AGGREGATE,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.AGGREGATE.description",abstract:"formula.functionList.AGGREGATE.abstract",functionParameter:[{name:"formula.functionList.AGGREGATE.functionParameter.number1.name",detail:"formula.functionList.AGGREGATE.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.AGGREGATE.functionParameter.number2.name",detail:"formula.functionList.AGGREGATE.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.ARABIC,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.ARABIC.description",abstract:"formula.functionList.ARABIC.abstract",functionParameter:[{name:"formula.functionList.ARABIC.functionParameter.number1.name",detail:"formula.functionList.ARABIC.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.ARABIC.functionParameter.number2.name",detail:"formula.functionList.ARABIC.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.ASIN,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.ASIN.description",abstract:"formula.functionList.ASIN.abstract",functionParameter:[{name:"formula.functionList.ASIN.functionParameter.number.name",detail:"formula.functionList.ASIN.functionParameter.number.detail",example:"0",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.ASINH,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.ASINH.description",abstract:"formula.functionList.ASINH.abstract",functionParameter:[{name:"formula.functionList.ASINH.functionParameter.number.name",detail:"formula.functionList.ASINH.functionParameter.number.detail",example:"10",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.ATAN,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.ATAN.description",abstract:"formula.functionList.ATAN.abstract",functionParameter:[{name:"formula.functionList.ATAN.functionParameter.number.name",detail:"formula.functionList.ATAN.functionParameter.number.detail",example:"1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.ATAN2,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.ATAN2.description",abstract:"formula.functionList.ATAN2.abstract",functionParameter:[{name:"formula.functionList.ATAN2.functionParameter.xNum.name",detail:"formula.functionList.ATAN2.functionParameter.xNum.detail",example:"4",require:1,repeat:0},{name:"formula.functionList.ATAN2.functionParameter.yNum.name",detail:"formula.functionList.ATAN2.functionParameter.yNum.detail",example:"3",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.ATANH,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.ATANH.description",abstract:"formula.functionList.ATANH.abstract",functionParameter:[{name:"formula.functionList.ATANH.functionParameter.number.name",detail:"formula.functionList.ATANH.functionParameter.number.detail",example:"0.1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.BASE,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.BASE.description",abstract:"formula.functionList.BASE.abstract",functionParameter:[{name:"formula.functionList.BASE.functionParameter.number.name",detail:"formula.functionList.BASE.functionParameter.number.detail",example:"15",require:1,repeat:0},{name:"formula.functionList.BASE.functionParameter.radix.name",detail:"formula.functionList.BASE.functionParameter.radix.detail",example:"2",require:1,repeat:0},{name:"formula.functionList.BASE.functionParameter.minLength.name",detail:"formula.functionList.BASE.functionParameter.minLength.detail",example:"10",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.CEILING,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.CEILING.description",abstract:"formula.functionList.CEILING.abstract",functionParameter:[{name:"formula.functionList.CEILING.functionParameter.number.name",detail:"formula.functionList.CEILING.functionParameter.number.detail",example:"2.5",require:1,repeat:0},{name:"formula.functionList.CEILING.functionParameter.significance.name",detail:"formula.functionList.CEILING.functionParameter.significance.detail",example:"1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.CEILING_MATH,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.CEILING_MATH.description",abstract:"formula.functionList.CEILING_MATH.abstract",functionParameter:[{name:"formula.functionList.CEILING_MATH.functionParameter.number.name",detail:"formula.functionList.CEILING_MATH.functionParameter.number.detail",example:"-5.5",require:1,repeat:0},{name:"formula.functionList.CEILING_MATH.functionParameter.significance.name",detail:"formula.functionList.CEILING_MATH.functionParameter.significance.detail",example:"2",require:0,repeat:0},{name:"formula.functionList.CEILING_MATH.functionParameter.mode.name",detail:"formula.functionList.CEILING_MATH.functionParameter.mode.detail",example:"-1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.CEILING_PRECISE,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.CEILING_PRECISE.description",abstract:"formula.functionList.CEILING_PRECISE.abstract",functionParameter:[{name:"formula.functionList.CEILING_PRECISE.functionParameter.number.name",detail:"formula.functionList.CEILING_PRECISE.functionParameter.number.detail",example:"4.3",require:1,repeat:0},{name:"formula.functionList.CEILING_PRECISE.functionParameter.significance.name",detail:"formula.functionList.CEILING_PRECISE.functionParameter.significance.detail",example:"2",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.COMBIN,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.COMBIN.description",abstract:"formula.functionList.COMBIN.abstract",functionParameter:[{name:"formula.functionList.COMBIN.functionParameter.number.name",detail:"formula.functionList.COMBIN.functionParameter.number.detail",example:"8",require:1,repeat:0},{name:"formula.functionList.COMBIN.functionParameter.numberChosen.name",detail:"formula.functionList.COMBIN.functionParameter.numberChosen.detail",example:"2",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.COMBINA,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.COMBINA.description",abstract:"formula.functionList.COMBINA.abstract",functionParameter:[{name:"formula.functionList.COMBINA.functionParameter.number.name",detail:"formula.functionList.COMBINA.functionParameter.number.detail",example:"8",require:1,repeat:0},{name:"formula.functionList.COMBINA.functionParameter.numberChosen.name",detail:"formula.functionList.COMBINA.functionParameter.numberChosen.detail",example:"2",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.COS,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.COS.description",abstract:"formula.functionList.COS.abstract",functionParameter:[{name:"formula.functionList.COS.functionParameter.number.name",detail:"formula.functionList.COS.functionParameter.number.detail",example:"1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.COSH,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.COSH.description",abstract:"formula.functionList.COSH.abstract",functionParameter:[{name:"formula.functionList.COSH.functionParameter.number.name",detail:"formula.functionList.COSH.functionParameter.number.detail",example:"4",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.COT,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.COT.description",abstract:"formula.functionList.COT.abstract",functionParameter:[{name:"formula.functionList.COT.functionParameter.number.name",detail:"formula.functionList.COT.functionParameter.number.detail",example:"30",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.COTH,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.COTH.description",abstract:"formula.functionList.COTH.abstract",functionParameter:[{name:"formula.functionList.COTH.functionParameter.number.name",detail:"formula.functionList.COTH.functionParameter.number.detail",example:"2",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.CSC,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.CSC.description",abstract:"formula.functionList.CSC.abstract",functionParameter:[{name:"formula.functionList.CSC.functionParameter.number.name",detail:"formula.functionList.CSC.functionParameter.number.detail",example:"15",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.CSCH,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.CSCH.description",abstract:"formula.functionList.CSCH.abstract",functionParameter:[{name:"formula.functionList.CSCH.functionParameter.number.name",detail:"formula.functionList.CSCH.functionParameter.number.detail",example:"1.5",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.DECIMAL,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.DECIMAL.description",abstract:"formula.functionList.DECIMAL.abstract",functionParameter:[{name:"formula.functionList.DECIMAL.functionParameter.text.name",detail:"formula.functionList.DECIMAL.functionParameter.text.detail",example:'"FF"',require:1,repeat:0},{name:"formula.functionList.DECIMAL.functionParameter.radix.name",detail:"formula.functionList.DECIMAL.functionParameter.radix.detail",example:"16",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.DEGREES,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.DEGREES.description",abstract:"formula.functionList.DEGREES.abstract",functionParameter:[{name:"formula.functionList.DEGREES.functionParameter.angle.name",detail:"formula.functionList.DEGREES.functionParameter.angle.detail",example:"PI()",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.EVEN,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.EVEN.description",abstract:"formula.functionList.EVEN.abstract",functionParameter:[{name:"formula.functionList.EVEN.functionParameter.number.name",detail:"formula.functionList.EVEN.functionParameter.number.detail",example:"1.5",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.EXP,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.EXP.description",abstract:"formula.functionList.EXP.abstract",functionParameter:[{name:"formula.functionList.EXP.functionParameter.number.name",detail:"formula.functionList.EXP.functionParameter.number.detail",example:"2",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.FACT,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.FACT.description",abstract:"formula.functionList.FACT.abstract",functionParameter:[{name:"formula.functionList.FACT.functionParameter.number.name",detail:"formula.functionList.FACT.functionParameter.number.detail",example:"5",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.FACTDOUBLE,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.FACTDOUBLE.description",abstract:"formula.functionList.FACTDOUBLE.abstract",functionParameter:[{name:"formula.functionList.FACTDOUBLE.functionParameter.number.name",detail:"formula.functionList.FACTDOUBLE.functionParameter.number.detail",example:"6",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.FLOOR,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.FLOOR.description",abstract:"formula.functionList.FLOOR.abstract",functionParameter:[{name:"formula.functionList.FLOOR.functionParameter.number.name",detail:"formula.functionList.FLOOR.functionParameter.number.detail",example:"3.7",require:1,repeat:0},{name:"formula.functionList.FLOOR.functionParameter.significance.name",detail:"formula.functionList.FLOOR.functionParameter.significance.detail",example:"2",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.FLOOR_MATH,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.FLOOR_MATH.description",abstract:"formula.functionList.FLOOR_MATH.abstract",functionParameter:[{name:"formula.functionList.FLOOR_MATH.functionParameter.number.name",detail:"formula.functionList.FLOOR_MATH.functionParameter.number.detail",example:"-5.5",require:1,repeat:0},{name:"formula.functionList.FLOOR_MATH.functionParameter.significance.name",detail:"formula.functionList.FLOOR_MATH.functionParameter.significance.detail",example:"2",require:0,repeat:0},{name:"formula.functionList.FLOOR_MATH.functionParameter.mode.name",detail:"formula.functionList.FLOOR_MATH.functionParameter.mode.detail",example:"-1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.FLOOR_PRECISE,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.FLOOR_PRECISE.description",abstract:"formula.functionList.FLOOR_PRECISE.abstract",functionParameter:[{name:"formula.functionList.FLOOR_PRECISE.functionParameter.number.name",detail:"formula.functionList.FLOOR_PRECISE.functionParameter.number.detail",example:"-3.2",require:1,repeat:0},{name:"formula.functionList.FLOOR_PRECISE.functionParameter.significance.name",detail:"formula.functionList.FLOOR_PRECISE.functionParameter.significance.detail",example:"-1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.GCD,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.GCD.description",abstract:"formula.functionList.GCD.abstract",functionParameter:[{name:"formula.functionList.GCD.functionParameter.number1.name",detail:"formula.functionList.GCD.functionParameter.number1.detail",example:"5",require:1,repeat:0},{name:"formula.functionList.GCD.functionParameter.number2.name",detail:"formula.functionList.GCD.functionParameter.number2.detail",example:"2",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.INT,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.INT.description",abstract:"formula.functionList.INT.abstract",functionParameter:[{name:"formula.functionList.INT.functionParameter.number.name",detail:"formula.functionList.INT.functionParameter.number.detail",example:"8.9",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.ISO_CEILING,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.ISO_CEILING.description",abstract:"formula.functionList.ISO_CEILING.abstract",functionParameter:[{name:"formula.functionList.ISO_CEILING.functionParameter.number1.name",detail:"formula.functionList.ISO_CEILING.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.ISO_CEILING.functionParameter.number2.name",detail:"formula.functionList.ISO_CEILING.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.LCM,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.LCM.description",abstract:"formula.functionList.LCM.abstract",functionParameter:[{name:"formula.functionList.LCM.functionParameter.number1.name",detail:"formula.functionList.LCM.functionParameter.number1.detail",example:"5",require:1,repeat:0},{name:"formula.functionList.LCM.functionParameter.number2.name",detail:"formula.functionList.LCM.functionParameter.number2.detail",example:"2",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.LET,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.LET.description",abstract:"formula.functionList.LET.abstract",functionParameter:[{name:"formula.functionList.LET.functionParameter.number1.name",detail:"formula.functionList.LET.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.LET.functionParameter.number2.name",detail:"formula.functionList.LET.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.LN,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.LN.description",abstract:"formula.functionList.LN.abstract",functionParameter:[{name:"formula.functionList.LN.functionParameter.number.name",detail:"formula.functionList.LN.functionParameter.number.detail",example:"EXP(3)",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.LOG,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.LOG.description",abstract:"formula.functionList.LOG.abstract",functionParameter:[{name:"formula.functionList.LOG.functionParameter.number.name",detail:"formula.functionList.LOG.functionParameter.number.detail",example:"8",require:1,repeat:0},{name:"formula.functionList.LOG.functionParameter.base.name",detail:"formula.functionList.LOG.functionParameter.base.detail",example:"2",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.LOG10,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.LOG10.description",abstract:"formula.functionList.LOG10.abstract",functionParameter:[{name:"formula.functionList.LOG10.functionParameter.number.name",detail:"formula.functionList.LOG10.functionParameter.number.detail",example:"100000",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.MDETERM,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.MDETERM.description",abstract:"formula.functionList.MDETERM.abstract",functionParameter:[{name:"formula.functionList.MDETERM.functionParameter.array.name",detail:"formula.functionList.MDETERM.functionParameter.array.detail",example:"{3,6,1;1,1,0;3,10,2}",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.MINVERSE,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.MINVERSE.description",abstract:"formula.functionList.MINVERSE.abstract",functionParameter:[{name:"formula.functionList.MINVERSE.functionParameter.array.name",detail:"formula.functionList.MINVERSE.functionParameter.array.detail",example:"{3,6,1;1,1,0;3,10,2}",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.MMULT,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.MMULT.description",abstract:"formula.functionList.MMULT.abstract",functionParameter:[{name:"formula.functionList.MMULT.functionParameter.array1.name",detail:"formula.functionList.MMULT.functionParameter.array1.detail",example:"A2:B3",require:1,repeat:0},{name:"formula.functionList.MMULT.functionParameter.array2.name",detail:"formula.functionList.MMULT.functionParameter.array2.detail",example:"A5:B6",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.MOD,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.MOD.description",abstract:"formula.functionList.MOD.abstract",functionParameter:[{name:"formula.functionList.MOD.functionParameter.number.name",detail:"formula.functionList.MOD.functionParameter.number.detail",example:"3",require:1,repeat:0},{name:"formula.functionList.MOD.functionParameter.divisor.name",detail:"formula.functionList.MOD.functionParameter.divisor.detail",example:"2",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.MROUND,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.MROUND.description",abstract:"formula.functionList.MROUND.abstract",functionParameter:[{name:"formula.functionList.MROUND.functionParameter.number.name",detail:"formula.functionList.MROUND.functionParameter.number.detail",example:"10",require:1,repeat:0},{name:"formula.functionList.MROUND.functionParameter.multiple.name",detail:"formula.functionList.MROUND.functionParameter.multiple.detail",example:"3",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.MULTINOMIAL,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.MULTINOMIAL.description",abstract:"formula.functionList.MULTINOMIAL.abstract",functionParameter:[{name:"formula.functionList.MULTINOMIAL.functionParameter.number1.name",detail:"formula.functionList.MULTINOMIAL.functionParameter.number1.detail",example:"5",require:1,repeat:0},{name:"formula.functionList.MULTINOMIAL.functionParameter.number2.name",detail:"formula.functionList.MULTINOMIAL.functionParameter.number2.detail",example:"2",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.MUNIT,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.MUNIT.description",abstract:"formula.functionList.MUNIT.abstract",functionParameter:[{name:"formula.functionList.MUNIT.functionParameter.dimension.name",detail:"formula.functionList.MUNIT.functionParameter.dimension.detail",example:"3",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.ODD,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.ODD.description",abstract:"formula.functionList.ODD.abstract",functionParameter:[{name:"formula.functionList.ODD.functionParameter.number.name",detail:"formula.functionList.ODD.functionParameter.number.detail",example:"1.5",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.PI,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.PI.description",abstract:"formula.functionList.PI.abstract",functionParameter:[]},{functionName:engineFormula.FUNCTION_NAMES_MATH.POWER,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.POWER.description",abstract:"formula.functionList.POWER.abstract",functionParameter:[{name:"formula.functionList.POWER.functionParameter.number.name",detail:"formula.functionList.POWER.functionParameter.number.detail",example:"5",require:1,repeat:0},{name:"formula.functionList.POWER.functionParameter.power.name",detail:"formula.functionList.POWER.functionParameter.power.detail",example:"2",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.PRODUCT,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.PRODUCT.description",abstract:"formula.functionList.PRODUCT.abstract",functionParameter:[{name:"formula.functionList.PRODUCT.functionParameter.number1.name",detail:"formula.functionList.PRODUCT.functionParameter.number1.detail",example:"A1",require:1,repeat:0},{name:"formula.functionList.PRODUCT.functionParameter.number2.name",detail:"formula.functionList.PRODUCT.functionParameter.number2.detail",example:"A2",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.QUOTIENT,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.QUOTIENT.description",abstract:"formula.functionList.QUOTIENT.abstract",functionParameter:[{name:"formula.functionList.QUOTIENT.functionParameter.numerator.name",detail:"formula.functionList.QUOTIENT.functionParameter.numerator.detail",example:"5",require:1,repeat:0},{name:"formula.functionList.QUOTIENT.functionParameter.denominator.name",detail:"formula.functionList.QUOTIENT.functionParameter.denominator.detail",example:"2",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.RADIANS,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.RADIANS.description",abstract:"formula.functionList.RADIANS.abstract",functionParameter:[{name:"formula.functionList.RADIANS.functionParameter.angle.name",detail:"formula.functionList.RADIANS.functionParameter.angle.detail",example:"270",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.RAND,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.RAND.description",abstract:"formula.functionList.RAND.abstract",functionParameter:[]},{functionName:engineFormula.FUNCTION_NAMES_MATH.RANDARRAY,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.RANDARRAY.description",abstract:"formula.functionList.RANDARRAY.abstract",functionParameter:[{name:"formula.functionList.RANDARRAY.functionParameter.rows.name",detail:"formula.functionList.RANDARRAY.functionParameter.rows.detail",example:"5",require:0,repeat:0},{name:"formula.functionList.RANDARRAY.functionParameter.columns.name",detail:"formula.functionList.RANDARRAY.functionParameter.columns.detail",example:"3",require:0,repeat:0},{name:"formula.functionList.RANDARRAY.functionParameter.min.name",detail:"formula.functionList.RANDARRAY.functionParameter.min.detail",example:"1",require:0,repeat:0},{name:"formula.functionList.RANDARRAY.functionParameter.max.name",detail:"formula.functionList.RANDARRAY.functionParameter.max.detail",example:"100",require:0,repeat:0},{name:"formula.functionList.RANDARRAY.functionParameter.wholeNumber.name",detail:"formula.functionList.RANDARRAY.functionParameter.wholeNumber.detail",example:"TRUE",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.RANDBETWEEN,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.RANDBETWEEN.description",abstract:"formula.functionList.RANDBETWEEN.abstract",functionParameter:[{name:"formula.functionList.RANDBETWEEN.functionParameter.bottom.name",detail:"formula.functionList.RANDBETWEEN.functionParameter.bottom.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.RANDBETWEEN.functionParameter.top.name",detail:"formula.functionList.RANDBETWEEN.functionParameter.top.detail",example:"100",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.ROMAN,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.ROMAN.description",abstract:"formula.functionList.ROMAN.abstract",functionParameter:[{name:"formula.functionList.ROMAN.functionParameter.number1.name",detail:"formula.functionList.ROMAN.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.ROMAN.functionParameter.number2.name",detail:"formula.functionList.ROMAN.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.ROUND,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.ROUND.description",abstract:"formula.functionList.ROUND.abstract",functionParameter:[{name:"formula.functionList.ROUND.functionParameter.number.name",detail:"formula.functionList.ROUND.functionParameter.number.detail",example:"2.15",require:1,repeat:0},{name:"formula.functionList.ROUND.functionParameter.numDigits.name",detail:"formula.functionList.ROUND.functionParameter.numDigits.detail",example:"1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.ROUNDDOWN,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.ROUNDDOWN.description",abstract:"formula.functionList.ROUNDDOWN.abstract",functionParameter:[{name:"formula.functionList.ROUNDDOWN.functionParameter.number.name",detail:"formula.functionList.ROUNDDOWN.functionParameter.number.detail",example:"3.2",require:1,repeat:0},{name:"formula.functionList.ROUNDDOWN.functionParameter.numDigits.name",detail:"formula.functionList.ROUNDDOWN.functionParameter.numDigits.detail",example:"0",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.ROUNDUP,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.ROUNDUP.description",abstract:"formula.functionList.ROUNDUP.abstract",functionParameter:[{name:"formula.functionList.ROUNDUP.functionParameter.number.name",detail:"formula.functionList.ROUNDUP.functionParameter.number.detail",example:"3.2",require:1,repeat:0},{name:"formula.functionList.ROUNDUP.functionParameter.numDigits.name",detail:"formula.functionList.ROUNDUP.functionParameter.numDigits.detail",example:"0",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.SEC,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.SEC.description",abstract:"formula.functionList.SEC.abstract",functionParameter:[{name:"formula.functionList.SEC.functionParameter.number.name",detail:"formula.functionList.SEC.functionParameter.number.detail",example:"30",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.SECH,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.SECH.description",abstract:"formula.functionList.SECH.abstract",functionParameter:[{name:"formula.functionList.SECH.functionParameter.number.name",detail:"formula.functionList.SECH.functionParameter.number.detail",example:"30",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.SERIESSUM,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.SERIESSUM.description",abstract:"formula.functionList.SERIESSUM.abstract",functionParameter:[{name:"formula.functionList.SERIESSUM.functionParameter.x.name",detail:"formula.functionList.SERIESSUM.functionParameter.x.detail",example:"0.785398163",require:1,repeat:0},{name:"formula.functionList.SERIESSUM.functionParameter.n.name",detail:"formula.functionList.SERIESSUM.functionParameter.n.detail",example:"0",require:1,repeat:0},{name:"formula.functionList.SERIESSUM.functionParameter.m.name",detail:"formula.functionList.SERIESSUM.functionParameter.m.detail",example:"2",require:1,repeat:0},{name:"formula.functionList.SERIESSUM.functionParameter.coefficients.name",detail:"formula.functionList.SERIESSUM.functionParameter.coefficients.detail",example:"{1,-0.5,0.041666667,-0.001388889}",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.SEQUENCE,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.SEQUENCE.description",abstract:"formula.functionList.SEQUENCE.abstract",functionParameter:[{name:"formula.functionList.SEQUENCE.functionParameter.rows.name",detail:"formula.functionList.SEQUENCE.functionParameter.rows.detail",example:"4",require:1,repeat:0},{name:"formula.functionList.SEQUENCE.functionParameter.columns.name",detail:"formula.functionList.SEQUENCE.functionParameter.columns.detail",example:"5",require:0,repeat:0},{name:"formula.functionList.SEQUENCE.functionParameter.start.name",detail:"formula.functionList.SEQUENCE.functionParameter.start.detail",example:"1",require:0,repeat:0},{name:"formula.functionList.SEQUENCE.functionParameter.step.name",detail:"formula.functionList.SEQUENCE.functionParameter.step.detail",example:"1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.SIGN,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.SIGN.description",abstract:"formula.functionList.SIGN.abstract",functionParameter:[{name:"formula.functionList.SIGN.functionParameter.number.name",detail:"formula.functionList.SIGN.functionParameter.number.detail",example:"10",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.SIN,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.SIN.description",abstract:"formula.functionList.SIN.abstract",functionParameter:[{name:"formula.functionList.SIN.functionParameter.number.name",detail:"formula.functionList.SIN.functionParameter.number.detail",example:"30*PI()/180",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.SINH,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.SINH.description",abstract:"formula.functionList.SINH.abstract",functionParameter:[{name:"formula.functionList.SINH.functionParameter.number.name",detail:"formula.functionList.SINH.functionParameter.number.detail",example:"0.0342*1.03",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.SQRT,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.SQRT.description",abstract:"formula.functionList.SQRT.abstract",functionParameter:[{name:"formula.functionList.SQRT.functionParameter.number.name",detail:"formula.functionList.SQRT.functionParameter.number.detail",example:"16",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.SQRTPI,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.SQRTPI.description",abstract:"formula.functionList.SQRTPI.abstract",functionParameter:[{name:"formula.functionList.SQRTPI.functionParameter.number.name",detail:"formula.functionList.SQRTPI.functionParameter.number.detail",example:"1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.SUBTOTAL,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.SUBTOTAL.description",abstract:"formula.functionList.SUBTOTAL.abstract",functionParameter:[{name:"formula.functionList.SUBTOTAL.functionParameter.functionNum.name",detail:"formula.functionList.SUBTOTAL.functionParameter.functionNum.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.SUBTOTAL.functionParameter.ref1.name",detail:"formula.functionList.SUBTOTAL.functionParameter.ref1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.SUBTOTAL.functionParameter.ref2.name",detail:"formula.functionList.SUBTOTAL.functionParameter.ref2.detail",example:"B1:B20",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.SUM,aliasFunctionName:"formula.functionList.SUM.aliasFunctionName",functionType:engineFormula.FunctionType.Math,description:"formula.functionList.SUM.description",abstract:"formula.functionList.SUM.abstract",functionParameter:[{name:"formula.functionList.SUM.functionParameter.number1.name",detail:"formula.functionList.SUM.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.SUM.functionParameter.number2.name",detail:"formula.functionList.SUM.functionParameter.number2.detail",example:"B2:B10",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.SUMIF,aliasFunctionName:"formula.functionList.SUMIF.aliasFunctionName",functionType:engineFormula.FunctionType.Math,description:"formula.functionList.SUMIF.description",abstract:"formula.functionList.SUMIF.abstract",functionParameter:[{name:"formula.functionList.SUMIF.functionParameter.range.name",detail:"formula.functionList.SUMIF.functionParameter.range.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.SUMIF.functionParameter.criteria.name",detail:"formula.functionList.SUMIF.functionParameter.criteria.detail",example:'">5"',require:1,repeat:0},{name:"formula.functionList.SUMIF.functionParameter.sumRange.name",detail:"formula.functionList.SUMIF.functionParameter.sumRange.detail",example:"B1:B20",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.SUMIFS,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.SUMIFS.description",abstract:"formula.functionList.SUMIFS.abstract",functionParameter:[{name:"formula.functionList.SUMIFS.functionParameter.sumRange.name",detail:"formula.functionList.SUMIFS.functionParameter.sumRange.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.SUMIFS.functionParameter.criteriaRange1.name",detail:"formula.functionList.SUMIFS.functionParameter.criteriaRange1.detail",example:"B1:B20",require:1,repeat:0},{name:"formula.functionList.SUMIFS.functionParameter.criteria1.name",detail:"formula.functionList.SUMIFS.functionParameter.criteria1.detail",example:'">10"',require:1,repeat:0},{name:"formula.functionList.SUMIFS.functionParameter.criteriaRange2.name",detail:"formula.functionList.SUMIFS.functionParameter.criteriaRange2.detail",example:"C1:C20",require:0,repeat:1},{name:"formula.functionList.SUMIFS.functionParameter.criteria2.name",detail:"formula.functionList.SUMIFS.functionParameter.criteria2.detail",example:'"<20"',require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.SUMPRODUCT,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.SUMPRODUCT.description",abstract:"formula.functionList.SUMPRODUCT.abstract",functionParameter:[{name:"formula.functionList.SUMPRODUCT.functionParameter.array1.name",detail:"formula.functionList.SUMPRODUCT.functionParameter.array1.detail",example:"C2:C5",require:1,repeat:0},{name:"formula.functionList.SUMPRODUCT.functionParameter.array2.name",detail:"formula.functionList.SUMPRODUCT.functionParameter.array2.detail",example:"D2:D5",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.SUMSQ,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.SUMSQ.description",abstract:"formula.functionList.SUMSQ.abstract",functionParameter:[{name:"formula.functionList.SUMSQ.functionParameter.number1.name",detail:"formula.functionList.SUMSQ.functionParameter.number1.detail",example:"3",require:1,repeat:0},{name:"formula.functionList.SUMSQ.functionParameter.number2.name",detail:"formula.functionList.SUMSQ.functionParameter.number2.detail",example:"4",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.SUMX2MY2,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.SUMX2MY2.description",abstract:"formula.functionList.SUMX2MY2.abstract",functionParameter:[{name:"formula.functionList.SUMX2MY2.functionParameter.arrayX.name",detail:"formula.functionList.SUMX2MY2.functionParameter.arrayX.detail",example:"A2:A8",require:1,repeat:0},{name:"formula.functionList.SUMX2MY2.functionParameter.arrayY.name",detail:"formula.functionList.SUMX2MY2.functionParameter.arrayY.detail",example:"B2:B8",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.SUMX2PY2,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.SUMX2PY2.description",abstract:"formula.functionList.SUMX2PY2.abstract",functionParameter:[{name:"formula.functionList.SUMX2PY2.functionParameter.arrayX.name",detail:"formula.functionList.SUMX2PY2.functionParameter.arrayX.detail",example:"A2:A8",require:1,repeat:0},{name:"formula.functionList.SUMX2PY2.functionParameter.arrayY.name",detail:"formula.functionList.SUMX2PY2.functionParameter.arrayY.detail",example:"B2:B8",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.SUMXMY2,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.SUMXMY2.description",abstract:"formula.functionList.SUMXMY2.abstract",functionParameter:[{name:"formula.functionList.SUMXMY2.functionParameter.arrayX.name",detail:"formula.functionList.SUMXMY2.functionParameter.arrayX.detail",example:"A2:A8",require:1,repeat:0},{name:"formula.functionList.SUMXMY2.functionParameter.arrayY.name",detail:"formula.functionList.SUMXMY2.functionParameter.arrayY.detail",example:"B2:B8",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.TAN,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.TAN.description",abstract:"formula.functionList.TAN.abstract",functionParameter:[{name:"formula.functionList.TAN.functionParameter.number.name",detail:"formula.functionList.TAN.functionParameter.number.detail",example:"1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.TANH,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.TANH.description",abstract:"formula.functionList.TANH.abstract",functionParameter:[{name:"formula.functionList.TANH.functionParameter.number.name",detail:"formula.functionList.TANH.functionParameter.number.detail",example:"1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.TRUNC,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.TRUNC.description",abstract:"formula.functionList.TRUNC.abstract",functionParameter:[{name:"formula.functionList.TRUNC.functionParameter.number.name",detail:"formula.functionList.TRUNC.functionParameter.number.detail",example:"0.45",require:1,repeat:0},{name:"formula.functionList.TRUNC.functionParameter.numDigits.name",detail:"formula.functionList.TRUNC.functionParameter.numDigits.detail",example:"1",require:0,repeat:0}]}],FUNCTION_LIST_STATISTICAL=[{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.AVEDEV,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.AVEDEV.description",abstract:"formula.functionList.AVEDEV.abstract",functionParameter:[{name:"formula.functionList.AVEDEV.functionParameter.number1.name",detail:"formula.functionList.AVEDEV.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.AVEDEV.functionParameter.number2.name",detail:"formula.functionList.AVEDEV.functionParameter.number2.detail",example:"B1:B20",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.AVERAGE,aliasFunctionName:"formula.functionList.AVERAGE.aliasFunctionName",functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.AVERAGE.description",abstract:"formula.functionList.AVERAGE.abstract",functionParameter:[{name:"formula.functionList.AVERAGE.functionParameter.number1.name",detail:"formula.functionList.AVERAGE.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.AVERAGE.functionParameter.number2.name",detail:"formula.functionList.AVERAGE.functionParameter.number2.detail",example:"B1:B20",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.AVERAGEA,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.AVERAGEA.description",abstract:"formula.functionList.AVERAGEA.abstract",functionParameter:[{name:"formula.functionList.AVERAGEA.functionParameter.value1.name",detail:"formula.functionList.AVERAGEA.functionParameter.value1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.AVERAGEA.functionParameter.value2.name",detail:"formula.functionList.AVERAGEA.functionParameter.value2.detail",example:"B1:B20",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.AVERAGEIF,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.AVERAGEIF.description",abstract:"formula.functionList.AVERAGEIF.abstract",functionParameter:[{name:"formula.functionList.AVERAGEIF.functionParameter.range.name",detail:"formula.functionList.AVERAGEIF.functionParameter.range.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.AVERAGEIF.functionParameter.criteria.name",detail:"formula.functionList.AVERAGEIF.functionParameter.criteria.detail",example:'">5"',require:1,repeat:0},{name:"formula.functionList.AVERAGEIF.functionParameter.averageRange.name",detail:"formula.functionList.AVERAGEIF.functionParameter.averageRange.detail",example:"B1:B20",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.AVERAGEIFS,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.AVERAGEIFS.description",abstract:"formula.functionList.AVERAGEIFS.abstract",functionParameter:[{name:"formula.functionList.AVERAGEIFS.functionParameter.averageRange.name",detail:"formula.functionList.AVERAGEIFS.functionParameter.averageRange.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.AVERAGEIFS.functionParameter.criteriaRange1.name",detail:"formula.functionList.AVERAGEIFS.functionParameter.criteriaRange1.detail",example:"B1:B20",require:1,repeat:0},{name:"formula.functionList.AVERAGEIFS.functionParameter.criteria1.name",detail:"formula.functionList.AVERAGEIFS.functionParameter.criteria1.detail",example:'">10"',require:1,repeat:0},{name:"formula.functionList.AVERAGEIFS.functionParameter.criteriaRange2.name",detail:"formula.functionList.AVERAGEIFS.functionParameter.criteriaRange2.detail",example:"C1:C20",require:0,repeat:1},{name:"formula.functionList.AVERAGEIFS.functionParameter.criteria2.name",detail:"formula.functionList.AVERAGEIFS.functionParameter.criteria2.detail",example:'"<20"',require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.BETA_DIST,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.BETA_DIST.description",abstract:"formula.functionList.BETA_DIST.abstract",functionParameter:[{name:"formula.functionList.BETA_DIST.functionParameter.number1.name",detail:"formula.functionList.BETA_DIST.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.BETA_DIST.functionParameter.number2.name",detail:"formula.functionList.BETA_DIST.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.BETA_INV,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.BETA_INV.description",abstract:"formula.functionList.BETA_INV.abstract",functionParameter:[{name:"formula.functionList.BETA_INV.functionParameter.number1.name",detail:"formula.functionList.BETA_INV.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.BETA_INV.functionParameter.number2.name",detail:"formula.functionList.BETA_INV.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.BINOM_DIST,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.BINOM_DIST.description",abstract:"formula.functionList.BINOM_DIST.abstract",functionParameter:[{name:"formula.functionList.BINOM_DIST.functionParameter.number1.name",detail:"formula.functionList.BINOM_DIST.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.BINOM_DIST.functionParameter.number2.name",detail:"formula.functionList.BINOM_DIST.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.BINOM_DIST_RANGE,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.BINOM_DIST_RANGE.description",abstract:"formula.functionList.BINOM_DIST_RANGE.abstract",functionParameter:[{name:"formula.functionList.BINOM_DIST_RANGE.functionParameter.number1.name",detail:"formula.functionList.BINOM_DIST_RANGE.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.BINOM_DIST_RANGE.functionParameter.number2.name",detail:"formula.functionList.BINOM_DIST_RANGE.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.BINOM_INV,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.BINOM_INV.description",abstract:"formula.functionList.BINOM_INV.abstract",functionParameter:[{name:"formula.functionList.BINOM_INV.functionParameter.number1.name",detail:"formula.functionList.BINOM_INV.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.BINOM_INV.functionParameter.number2.name",detail:"formula.functionList.BINOM_INV.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.CHISQ_DIST,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.CHISQ_DIST.description",abstract:"formula.functionList.CHISQ_DIST.abstract",functionParameter:[{name:"formula.functionList.CHISQ_DIST.functionParameter.number1.name",detail:"formula.functionList.CHISQ_DIST.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.CHISQ_DIST.functionParameter.number2.name",detail:"formula.functionList.CHISQ_DIST.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.CHISQ_DIST_RT,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.CHISQ_DIST_RT.description",abstract:"formula.functionList.CHISQ_DIST_RT.abstract",functionParameter:[{name:"formula.functionList.CHISQ_DIST_RT.functionParameter.number1.name",detail:"formula.functionList.CHISQ_DIST_RT.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.CHISQ_DIST_RT.functionParameter.number2.name",detail:"formula.functionList.CHISQ_DIST_RT.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.CHISQ_INV,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.CHISQ_INV.description",abstract:"formula.functionList.CHISQ_INV.abstract",functionParameter:[{name:"formula.functionList.CHISQ_INV.functionParameter.number1.name",detail:"formula.functionList.CHISQ_INV.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.CHISQ_INV.functionParameter.number2.name",detail:"formula.functionList.CHISQ_INV.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.CHISQ_INV_RT,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.CHISQ_INV_RT.description",abstract:"formula.functionList.CHISQ_INV_RT.abstract",functionParameter:[{name:"formula.functionList.CHISQ_INV_RT.functionParameter.number1.name",detail:"formula.functionList.CHISQ_INV_RT.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.CHISQ_INV_RT.functionParameter.number2.name",detail:"formula.functionList.CHISQ_INV_RT.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.CHISQ_TEST,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.CHISQ_TEST.description",abstract:"formula.functionList.CHISQ_TEST.abstract",functionParameter:[{name:"formula.functionList.CHISQ_TEST.functionParameter.number1.name",detail:"formula.functionList.CHISQ_TEST.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.CHISQ_TEST.functionParameter.number2.name",detail:"formula.functionList.CHISQ_TEST.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.CONFIDENCE_NORM,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.CONFIDENCE_NORM.description",abstract:"formula.functionList.CONFIDENCE_NORM.abstract",functionParameter:[{name:"formula.functionList.CONFIDENCE_NORM.functionParameter.number1.name",detail:"formula.functionList.CONFIDENCE_NORM.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.CONFIDENCE_NORM.functionParameter.number2.name",detail:"formula.functionList.CONFIDENCE_NORM.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.CONFIDENCE_T,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.CONFIDENCE_T.description",abstract:"formula.functionList.CONFIDENCE_T.abstract",functionParameter:[{name:"formula.functionList.CONFIDENCE_T.functionParameter.number1.name",detail:"formula.functionList.CONFIDENCE_T.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.CONFIDENCE_T.functionParameter.number2.name",detail:"formula.functionList.CONFIDENCE_T.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.CORREL,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.CORREL.description",abstract:"formula.functionList.CORREL.abstract",functionParameter:[{name:"formula.functionList.CORREL.functionParameter.number1.name",detail:"formula.functionList.CORREL.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.CORREL.functionParameter.number2.name",detail:"formula.functionList.CORREL.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.COUNT,aliasFunctionName:"formula.functionList.COUNT.aliasFunctionName",functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.COUNT.description",abstract:"formula.functionList.COUNT.abstract",functionParameter:[{name:"formula.functionList.COUNT.functionParameter.value1.name",detail:"formula.functionList.COUNT.functionParameter.value1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.COUNT.functionParameter.value2.name",detail:"formula.functionList.COUNT.functionParameter.value2.detail",example:"B2:B10",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.COUNTA,aliasFunctionName:"formula.functionList.COUNTA.aliasFunctionName",functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.COUNTA.description",abstract:"formula.functionList.COUNTA.abstract",functionParameter:[{name:"formula.functionList.COUNTA.functionParameter.number1.name",detail:"formula.functionList.COUNTA.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.COUNTA.functionParameter.number2.name",detail:"formula.functionList.COUNTA.functionParameter.number2.detail",example:"B2:B10",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.COUNTBLANK,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.COUNTBLANK.description",abstract:"formula.functionList.COUNTBLANK.abstract",functionParameter:[{name:"formula.functionList.COUNTBLANK.functionParameter.range.name",detail:"formula.functionList.COUNTBLANK.functionParameter.range.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.COUNTIF,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.COUNTIF.description",abstract:"formula.functionList.COUNTIF.abstract",functionParameter:[{name:"formula.functionList.COUNTIF.functionParameter.range.name",detail:"formula.functionList.COUNTIF.functionParameter.range.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.COUNTIF.functionParameter.criteria.name",detail:"formula.functionList.COUNTIF.functionParameter.criteria.detail",example:'">5"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.COUNTIFS,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.COUNTIFS.description",abstract:"formula.functionList.COUNTIFS.abstract",functionParameter:[{name:"formula.functionList.COUNTIFS.functionParameter.criteriaRange1.name",detail:"formula.functionList.COUNTIFS.functionParameter.criteriaRange1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.COUNTIFS.functionParameter.criteria1.name",detail:"formula.functionList.COUNTIFS.functionParameter.criteria1.detail",example:'">10"',require:1,repeat:0},{name:"formula.functionList.COUNTIFS.functionParameter.criteriaRange2.name",detail:"formula.functionList.COUNTIFS.functionParameter.criteriaRange2.detail",example:"B1:B20",require:0,repeat:1},{name:"formula.functionList.COUNTIFS.functionParameter.criteria2.name",detail:"formula.functionList.COUNTIFS.functionParameter.criteria2.detail",example:'"<20"',require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.COVARIANCE_P,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.COVARIANCE_P.description",abstract:"formula.functionList.COVARIANCE_P.abstract",functionParameter:[{name:"formula.functionList.COVARIANCE_P.functionParameter.number1.name",detail:"formula.functionList.COVARIANCE_P.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.COVARIANCE_P.functionParameter.number2.name",detail:"formula.functionList.COVARIANCE_P.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.COVARIANCE_S,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.COVARIANCE_S.description",abstract:"formula.functionList.COVARIANCE_S.abstract",functionParameter:[{name:"formula.functionList.COVARIANCE_S.functionParameter.number1.name",detail:"formula.functionList.COVARIANCE_S.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.COVARIANCE_S.functionParameter.number2.name",detail:"formula.functionList.COVARIANCE_S.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.DEVSQ,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.DEVSQ.description",abstract:"formula.functionList.DEVSQ.abstract",functionParameter:[{name:"formula.functionList.DEVSQ.functionParameter.number1.name",detail:"formula.functionList.DEVSQ.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.DEVSQ.functionParameter.number2.name",detail:"formula.functionList.DEVSQ.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.EXPON_DIST,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.EXPON_DIST.description",abstract:"formula.functionList.EXPON_DIST.abstract",functionParameter:[{name:"formula.functionList.EXPON_DIST.functionParameter.number1.name",detail:"formula.functionList.EXPON_DIST.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.EXPON_DIST.functionParameter.number2.name",detail:"formula.functionList.EXPON_DIST.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.F_DIST,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.F_DIST.description",abstract:"formula.functionList.F_DIST.abstract",functionParameter:[{name:"formula.functionList.F_DIST.functionParameter.number1.name",detail:"formula.functionList.F_DIST.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.F_DIST.functionParameter.number2.name",detail:"formula.functionList.F_DIST.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.F_DIST_RT,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.F_DIST_RT.description",abstract:"formula.functionList.F_DIST_RT.abstract",functionParameter:[{name:"formula.functionList.F_DIST_RT.functionParameter.number1.name",detail:"formula.functionList.F_DIST_RT.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.F_DIST_RT.functionParameter.number2.name",detail:"formula.functionList.F_DIST_RT.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.F_INV,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.F_INV.description",abstract:"formula.functionList.F_INV.abstract",functionParameter:[{name:"formula.functionList.F_INV.functionParameter.number1.name",detail:"formula.functionList.F_INV.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.F_INV.functionParameter.number2.name",detail:"formula.functionList.F_INV.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.F_INV_RT,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.F_INV_RT.description",abstract:"formula.functionList.F_INV_RT.abstract",functionParameter:[{name:"formula.functionList.F_INV_RT.functionParameter.number1.name",detail:"formula.functionList.F_INV_RT.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.F_INV_RT.functionParameter.number2.name",detail:"formula.functionList.F_INV_RT.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.F_TEST,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.F_TEST.description",abstract:"formula.functionList.F_TEST.abstract",functionParameter:[{name:"formula.functionList.F_TEST.functionParameter.number1.name",detail:"formula.functionList.F_TEST.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.F_TEST.functionParameter.number2.name",detail:"formula.functionList.F_TEST.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.FISHER,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.FISHER.description",abstract:"formula.functionList.FISHER.abstract",functionParameter:[{name:"formula.functionList.FISHER.functionParameter.number1.name",detail:"formula.functionList.FISHER.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.FISHER.functionParameter.number2.name",detail:"formula.functionList.FISHER.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.FISHERINV,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.FISHERINV.description",abstract:"formula.functionList.FISHERINV.abstract",functionParameter:[{name:"formula.functionList.FISHERINV.functionParameter.number1.name",detail:"formula.functionList.FISHERINV.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.FISHERINV.functionParameter.number2.name",detail:"formula.functionList.FISHERINV.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.FORECAST,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.FORECAST.description",abstract:"formula.functionList.FORECAST.abstract",functionParameter:[{name:"formula.functionList.FORECAST.functionParameter.number1.name",detail:"formula.functionList.FORECAST.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.FORECAST.functionParameter.number2.name",detail:"formula.functionList.FORECAST.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.FORECAST_ETS,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.FORECAST_ETS.description",abstract:"formula.functionList.FORECAST_ETS.abstract",functionParameter:[{name:"formula.functionList.FORECAST_ETS.functionParameter.number1.name",detail:"formula.functionList.FORECAST_ETS.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.FORECAST_ETS.functionParameter.number2.name",detail:"formula.functionList.FORECAST_ETS.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.FORECAST_ETS_CONFINT,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.FORECAST_ETS_CONFINT.description",abstract:"formula.functionList.FORECAST_ETS_CONFINT.abstract",functionParameter:[{name:"formula.functionList.FORECAST_ETS_CONFINT.functionParameter.number1.name",detail:"formula.functionList.FORECAST_ETS_CONFINT.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.FORECAST_ETS_CONFINT.functionParameter.number2.name",detail:"formula.functionList.FORECAST_ETS_CONFINT.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.FORECAST_ETS_SEASONALITY,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.FORECAST_ETS_SEASONALITY.description",abstract:"formula.functionList.FORECAST_ETS_SEASONALITY.abstract",functionParameter:[{name:"formula.functionList.FORECAST_ETS_SEASONALITY.functionParameter.number1.name",detail:"formula.functionList.FORECAST_ETS_SEASONALITY.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.FORECAST_ETS_SEASONALITY.functionParameter.number2.name",detail:"formula.functionList.FORECAST_ETS_SEASONALITY.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.FORECAST_ETS_STAT,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.FORECAST_ETS_STAT.description",abstract:"formula.functionList.FORECAST_ETS_STAT.abstract",functionParameter:[{name:"formula.functionList.FORECAST_ETS_STAT.functionParameter.number1.name",detail:"formula.functionList.FORECAST_ETS_STAT.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.FORECAST_ETS_STAT.functionParameter.number2.name",detail:"formula.functionList.FORECAST_ETS_STAT.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.FORECAST_LINEAR,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.FORECAST_LINEAR.description",abstract:"formula.functionList.FORECAST_LINEAR.abstract",functionParameter:[{name:"formula.functionList.FORECAST_LINEAR.functionParameter.number1.name",detail:"formula.functionList.FORECAST_LINEAR.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.FORECAST_LINEAR.functionParameter.number2.name",detail:"formula.functionList.FORECAST_LINEAR.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.FREQUENCY,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.FREQUENCY.description",abstract:"formula.functionList.FREQUENCY.abstract",functionParameter:[{name:"formula.functionList.FREQUENCY.functionParameter.number1.name",detail:"formula.functionList.FREQUENCY.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.FREQUENCY.functionParameter.number2.name",detail:"formula.functionList.FREQUENCY.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.GAMMA,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.GAMMA.description",abstract:"formula.functionList.GAMMA.abstract",functionParameter:[{name:"formula.functionList.GAMMA.functionParameter.number1.name",detail:"formula.functionList.GAMMA.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.GAMMA.functionParameter.number2.name",detail:"formula.functionList.GAMMA.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.GAMMA_DIST,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.GAMMA_DIST.description",abstract:"formula.functionList.GAMMA_DIST.abstract",functionParameter:[{name:"formula.functionList.GAMMA_DIST.functionParameter.number1.name",detail:"formula.functionList.GAMMA_DIST.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.GAMMA_DIST.functionParameter.number2.name",detail:"formula.functionList.GAMMA_DIST.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.GAMMA_INV,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.GAMMA_INV.description",abstract:"formula.functionList.GAMMA_INV.abstract",functionParameter:[{name:"formula.functionList.GAMMA_INV.functionParameter.number1.name",detail:"formula.functionList.GAMMA_INV.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.GAMMA_INV.functionParameter.number2.name",detail:"formula.functionList.GAMMA_INV.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.GAMMALN,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.GAMMALN.description",abstract:"formula.functionList.GAMMALN.abstract",functionParameter:[{name:"formula.functionList.GAMMALN.functionParameter.number1.name",detail:"formula.functionList.GAMMALN.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.GAMMALN.functionParameter.number2.name",detail:"formula.functionList.GAMMALN.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.GAMMALN_PRECISE,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.GAMMALN_PRECISE.description",abstract:"formula.functionList.GAMMALN_PRECISE.abstract",functionParameter:[{name:"formula.functionList.GAMMALN_PRECISE.functionParameter.number1.name",detail:"formula.functionList.GAMMALN_PRECISE.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.GAMMALN_PRECISE.functionParameter.number2.name",detail:"formula.functionList.GAMMALN_PRECISE.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.GAUSS,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.GAUSS.description",abstract:"formula.functionList.GAUSS.abstract",functionParameter:[{name:"formula.functionList.GAUSS.functionParameter.number1.name",detail:"formula.functionList.GAUSS.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.GAUSS.functionParameter.number2.name",detail:"formula.functionList.GAUSS.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.GEOMEAN,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.GEOMEAN.description",abstract:"formula.functionList.GEOMEAN.abstract",functionParameter:[{name:"formula.functionList.GEOMEAN.functionParameter.number1.name",detail:"formula.functionList.GEOMEAN.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.GEOMEAN.functionParameter.number2.name",detail:"formula.functionList.GEOMEAN.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.GROWTH,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.GROWTH.description",abstract:"formula.functionList.GROWTH.abstract",functionParameter:[{name:"formula.functionList.GROWTH.functionParameter.number1.name",detail:"formula.functionList.GROWTH.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.GROWTH.functionParameter.number2.name",detail:"formula.functionList.GROWTH.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.HARMEAN,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.HARMEAN.description",abstract:"formula.functionList.HARMEAN.abstract",functionParameter:[{name:"formula.functionList.HARMEAN.functionParameter.number1.name",detail:"formula.functionList.HARMEAN.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.HARMEAN.functionParameter.number2.name",detail:"formula.functionList.HARMEAN.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.HYPGEOM_DIST,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.HYPGEOM_DIST.description",abstract:"formula.functionList.HYPGEOM_DIST.abstract",functionParameter:[{name:"formula.functionList.HYPGEOM_DIST.functionParameter.number1.name",detail:"formula.functionList.HYPGEOM_DIST.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.HYPGEOM_DIST.functionParameter.number2.name",detail:"formula.functionList.HYPGEOM_DIST.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.INTERCEPT,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.INTERCEPT.description",abstract:"formula.functionList.INTERCEPT.abstract",functionParameter:[{name:"formula.functionList.INTERCEPT.functionParameter.number1.name",detail:"formula.functionList.INTERCEPT.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.INTERCEPT.functionParameter.number2.name",detail:"formula.functionList.INTERCEPT.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.KURT,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.KURT.description",abstract:"formula.functionList.KURT.abstract",functionParameter:[{name:"formula.functionList.KURT.functionParameter.number1.name",detail:"formula.functionList.KURT.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.KURT.functionParameter.number2.name",detail:"formula.functionList.KURT.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.LARGE,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.LARGE.description",abstract:"formula.functionList.LARGE.abstract",functionParameter:[{name:"formula.functionList.LARGE.functionParameter.number1.name",detail:"formula.functionList.LARGE.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.LARGE.functionParameter.number2.name",detail:"formula.functionList.LARGE.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.LINEST,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.LINEST.description",abstract:"formula.functionList.LINEST.abstract",functionParameter:[{name:"formula.functionList.LINEST.functionParameter.number1.name",detail:"formula.functionList.LINEST.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.LINEST.functionParameter.number2.name",detail:"formula.functionList.LINEST.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.LOGEST,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.LOGEST.description",abstract:"formula.functionList.LOGEST.abstract",functionParameter:[{name:"formula.functionList.LOGEST.functionParameter.number1.name",detail:"formula.functionList.LOGEST.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.LOGEST.functionParameter.number2.name",detail:"formula.functionList.LOGEST.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.LOGNORM_DIST,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.LOGNORM_DIST.description",abstract:"formula.functionList.LOGNORM_DIST.abstract",functionParameter:[{name:"formula.functionList.LOGNORM_DIST.functionParameter.number1.name",detail:"formula.functionList.LOGNORM_DIST.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.LOGNORM_DIST.functionParameter.number2.name",detail:"formula.functionList.LOGNORM_DIST.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.LOGNORM_INV,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.LOGNORM_INV.description",abstract:"formula.functionList.LOGNORM_INV.abstract",functionParameter:[{name:"formula.functionList.LOGNORM_INV.functionParameter.number1.name",detail:"formula.functionList.LOGNORM_INV.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.LOGNORM_INV.functionParameter.number2.name",detail:"formula.functionList.LOGNORM_INV.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.MAX,aliasFunctionName:"formula.functionList.MAX.aliasFunctionName",functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.MAX.description",abstract:"formula.functionList.MAX.abstract",functionParameter:[{name:"formula.functionList.MAX.functionParameter.number1.name",detail:"formula.functionList.MAX.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.MAX.functionParameter.number2.name",detail:"formula.functionList.MAX.functionParameter.number2.detail",example:"B2:B10",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.MAXA,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.MAXA.description",abstract:"formula.functionList.MAXA.abstract",functionParameter:[{name:"formula.functionList.MAXA.functionParameter.value1.name",detail:"formula.functionList.MAXA.functionParameter.value1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.MAXA.functionParameter.value2.name",detail:"formula.functionList.MAXA.functionParameter.value2.detail",example:"B1:B20",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.MAXIFS,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.MAXIFS.description",abstract:"formula.functionList.MAXIFS.abstract",functionParameter:[{name:"formula.functionList.MAXIFS.functionParameter.maxRange.name",detail:"formula.functionList.MAXIFS.functionParameter.maxRange.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.MAXIFS.functionParameter.criteriaRange1.name",detail:"formula.functionList.MAXIFS.functionParameter.criteriaRange1.detail",example:"B1:B20",require:1,repeat:0},{name:"formula.functionList.MAXIFS.functionParameter.criteria1.name",detail:"formula.functionList.MAXIFS.functionParameter.criteria1.detail",example:'">10"',require:1,repeat:0},{name:"formula.functionList.MAXIFS.functionParameter.criteriaRange2.name",detail:"formula.functionList.MAXIFS.functionParameter.criteriaRange2.detail",example:"C1:C20",require:0,repeat:1},{name:"formula.functionList.MAXIFS.functionParameter.criteria2.name",detail:"formula.functionList.MAXIFS.functionParameter.criteria2.detail",example:'"<20"',require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.MEDIAN,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.MEDIAN.description",abstract:"formula.functionList.MEDIAN.abstract",functionParameter:[{name:"formula.functionList.MEDIAN.functionParameter.number1.name",detail:"formula.functionList.MEDIAN.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.MEDIAN.functionParameter.number2.name",detail:"formula.functionList.MEDIAN.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.MIN,aliasFunctionName:"formula.functionList.MIN.aliasFunctionName",functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.MIN.description",abstract:"formula.functionList.MIN.abstract",functionParameter:[{name:"formula.functionList.MIN.functionParameter.number1.name",detail:"formula.functionList.MIN.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.MIN.functionParameter.number2.name",detail:"formula.functionList.MIN.functionParameter.number2.detail",example:"B2:B10",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.MINA,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.MINA.description",abstract:"formula.functionList.MINA.abstract",functionParameter:[{name:"formula.functionList.MINA.functionParameter.value1.name",detail:"formula.functionList.MINA.functionParameter.value1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.MINA.functionParameter.value2.name",detail:"formula.functionList.MINA.functionParameter.value2.detail",example:"B1:B20",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.MINIFS,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.MINIFS.description",abstract:"formula.functionList.MINIFS.abstract",functionParameter:[{name:"formula.functionList.MINIFS.functionParameter.minRange.name",detail:"formula.functionList.MINIFS.functionParameter.minRange.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.MINIFS.functionParameter.criteriaRange1.name",detail:"formula.functionList.MINIFS.functionParameter.criteriaRange1.detail",example:"B1:B20",require:1,repeat:0},{name:"formula.functionList.MINIFS.functionParameter.criteria1.name",detail:"formula.functionList.MINIFS.functionParameter.criteria1.detail",example:'">10"',require:1,repeat:0},{name:"formula.functionList.MINIFS.functionParameter.criteriaRange2.name",detail:"formula.functionList.MINIFS.functionParameter.criteriaRange2.detail",example:"C1:C20",require:0,repeat:1},{name:"formula.functionList.MINIFS.functionParameter.criteria2.name",detail:"formula.functionList.MINIFS.functionParameter.criteria2.detail",example:'"<20"',require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.MODE_MULT,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.MODE_MULT.description",abstract:"formula.functionList.MODE_MULT.abstract",functionParameter:[{name:"formula.functionList.MODE_MULT.functionParameter.number1.name",detail:"formula.functionList.MODE_MULT.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.MODE_MULT.functionParameter.number2.name",detail:"formula.functionList.MODE_MULT.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.MODE_SNGL,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.MODE_SNGL.description",abstract:"formula.functionList.MODE_SNGL.abstract",functionParameter:[{name:"formula.functionList.MODE_SNGL.functionParameter.number1.name",detail:"formula.functionList.MODE_SNGL.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.MODE_SNGL.functionParameter.number2.name",detail:"formula.functionList.MODE_SNGL.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.NEGBINOM_DIST,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.NEGBINOM_DIST.description",abstract:"formula.functionList.NEGBINOM_DIST.abstract",functionParameter:[{name:"formula.functionList.NEGBINOM_DIST.functionParameter.number1.name",detail:"formula.functionList.NEGBINOM_DIST.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.NEGBINOM_DIST.functionParameter.number2.name",detail:"formula.functionList.NEGBINOM_DIST.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.NORM_DIST,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.NORM_DIST.description",abstract:"formula.functionList.NORM_DIST.abstract",functionParameter:[{name:"formula.functionList.NORM_DIST.functionParameter.number1.name",detail:"formula.functionList.NORM_DIST.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.NORM_DIST.functionParameter.number2.name",detail:"formula.functionList.NORM_DIST.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.NORM_INV,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.NORM_INV.description",abstract:"formula.functionList.NORM_INV.abstract",functionParameter:[{name:"formula.functionList.NORM_INV.functionParameter.number1.name",detail:"formula.functionList.NORM_INV.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.NORM_INV.functionParameter.number2.name",detail:"formula.functionList.NORM_INV.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.NORM_S_DIST,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.NORM_S_DIST.description",abstract:"formula.functionList.NORM_S_DIST.abstract",functionParameter:[{name:"formula.functionList.NORM_S_DIST.functionParameter.number1.name",detail:"formula.functionList.NORM_S_DIST.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.NORM_S_DIST.functionParameter.number2.name",detail:"formula.functionList.NORM_S_DIST.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.NORM_S_INV,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.NORM_S_INV.description",abstract:"formula.functionList.NORM_S_INV.abstract",functionParameter:[{name:"formula.functionList.NORM_S_INV.functionParameter.number1.name",detail:"formula.functionList.NORM_S_INV.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.NORM_S_INV.functionParameter.number2.name",detail:"formula.functionList.NORM_S_INV.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.PEARSON,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.PEARSON.description",abstract:"formula.functionList.PEARSON.abstract",functionParameter:[{name:"formula.functionList.PEARSON.functionParameter.number1.name",detail:"formula.functionList.PEARSON.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.PEARSON.functionParameter.number2.name",detail:"formula.functionList.PEARSON.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.PERCENTILE_EXC,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.PERCENTILE_EXC.description",abstract:"formula.functionList.PERCENTILE_EXC.abstract",functionParameter:[{name:"formula.functionList.PERCENTILE_EXC.functionParameter.number1.name",detail:"formula.functionList.PERCENTILE_EXC.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.PERCENTILE_EXC.functionParameter.number2.name",detail:"formula.functionList.PERCENTILE_EXC.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.PERCENTILE_INC,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.PERCENTILE_INC.description",abstract:"formula.functionList.PERCENTILE_INC.abstract",functionParameter:[{name:"formula.functionList.PERCENTILE_INC.functionParameter.number1.name",detail:"formula.functionList.PERCENTILE_INC.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.PERCENTILE_INC.functionParameter.number2.name",detail:"formula.functionList.PERCENTILE_INC.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.PERCENTRANK_EXC,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.PERCENTRANK_EXC.description",abstract:"formula.functionList.PERCENTRANK_EXC.abstract",functionParameter:[{name:"formula.functionList.PERCENTRANK_EXC.functionParameter.number1.name",detail:"formula.functionList.PERCENTRANK_EXC.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.PERCENTRANK_EXC.functionParameter.number2.name",detail:"formula.functionList.PERCENTRANK_EXC.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.PERCENTRANK_INC,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.PERCENTRANK_INC.description",abstract:"formula.functionList.PERCENTRANK_INC.abstract",functionParameter:[{name:"formula.functionList.PERCENTRANK_INC.functionParameter.number1.name",detail:"formula.functionList.PERCENTRANK_INC.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.PERCENTRANK_INC.functionParameter.number2.name",detail:"formula.functionList.PERCENTRANK_INC.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.PERMUT,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.PERMUT.description",abstract:"formula.functionList.PERMUT.abstract",functionParameter:[{name:"formula.functionList.PERMUT.functionParameter.number1.name",detail:"formula.functionList.PERMUT.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.PERMUT.functionParameter.number2.name",detail:"formula.functionList.PERMUT.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.PERMUTATIONA,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.PERMUTATIONA.description",abstract:"formula.functionList.PERMUTATIONA.abstract",functionParameter:[{name:"formula.functionList.PERMUTATIONA.functionParameter.number1.name",detail:"formula.functionList.PERMUTATIONA.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.PERMUTATIONA.functionParameter.number2.name",detail:"formula.functionList.PERMUTATIONA.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.PHI,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.PHI.description",abstract:"formula.functionList.PHI.abstract",functionParameter:[{name:"formula.functionList.PHI.functionParameter.number1.name",detail:"formula.functionList.PHI.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.PHI.functionParameter.number2.name",detail:"formula.functionList.PHI.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.POISSON_DIST,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.POISSON_DIST.description",abstract:"formula.functionList.POISSON_DIST.abstract",functionParameter:[{name:"formula.functionList.POISSON_DIST.functionParameter.number1.name",detail:"formula.functionList.POISSON_DIST.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.POISSON_DIST.functionParameter.number2.name",detail:"formula.functionList.POISSON_DIST.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.PROB,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.PROB.description",abstract:"formula.functionList.PROB.abstract",functionParameter:[{name:"formula.functionList.PROB.functionParameter.number1.name",detail:"formula.functionList.PROB.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.PROB.functionParameter.number2.name",detail:"formula.functionList.PROB.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.QUARTILE_EXC,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.QUARTILE_EXC.description",abstract:"formula.functionList.QUARTILE_EXC.abstract",functionParameter:[{name:"formula.functionList.QUARTILE_EXC.functionParameter.number1.name",detail:"formula.functionList.QUARTILE_EXC.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.QUARTILE_EXC.functionParameter.number2.name",detail:"formula.functionList.QUARTILE_EXC.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.QUARTILE_INC,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.QUARTILE_INC.description",abstract:"formula.functionList.QUARTILE_INC.abstract",functionParameter:[{name:"formula.functionList.QUARTILE_INC.functionParameter.number1.name",detail:"formula.functionList.QUARTILE_INC.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.QUARTILE_INC.functionParameter.number2.name",detail:"formula.functionList.QUARTILE_INC.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.RANK_AVG,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.RANK_AVG.description",abstract:"formula.functionList.RANK_AVG.abstract",functionParameter:[{name:"formula.functionList.RANK_AVG.functionParameter.number.name",detail:"formula.functionList.RANK_AVG.functionParameter.number.detail",example:"A3",require:1,repeat:0},{name:"formula.functionList.RANK_AVG.functionParameter.ref.name",detail:"formula.functionList.RANK_AVG.functionParameter.ref.detail",example:"A2:A6",require:1,repeat:0},{name:"formula.functionList.RANK_AVG.functionParameter.order.name",detail:"formula.functionList.RANK_AVG.functionParameter.order.detail",example:"1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.RANK_EQ,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.RANK_EQ.description",abstract:"formula.functionList.RANK_EQ.abstract",functionParameter:[{name:"formula.functionList.RANK_EQ.functionParameter.number.name",detail:"formula.functionList.RANK_EQ.functionParameter.number.detail",example:"A3",require:1,repeat:0},{name:"formula.functionList.RANK_EQ.functionParameter.ref.name",detail:"formula.functionList.RANK_EQ.functionParameter.ref.detail",example:"A2:A6",require:1,repeat:0},{name:"formula.functionList.RANK_EQ.functionParameter.order.name",detail:"formula.functionList.RANK_EQ.functionParameter.order.detail",example:"1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.RSQ,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.RSQ.description",abstract:"formula.functionList.RSQ.abstract",functionParameter:[{name:"formula.functionList.RSQ.functionParameter.number1.name",detail:"formula.functionList.RSQ.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.RSQ.functionParameter.number2.name",detail:"formula.functionList.RSQ.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.SKEW,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.SKEW.description",abstract:"formula.functionList.SKEW.abstract",functionParameter:[{name:"formula.functionList.SKEW.functionParameter.number1.name",detail:"formula.functionList.SKEW.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.SKEW.functionParameter.number2.name",detail:"formula.functionList.SKEW.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.SKEW_P,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.SKEW_P.description",abstract:"formula.functionList.SKEW_P.abstract",functionParameter:[{name:"formula.functionList.SKEW_P.functionParameter.number1.name",detail:"formula.functionList.SKEW_P.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.SKEW_P.functionParameter.number2.name",detail:"formula.functionList.SKEW_P.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.SLOPE,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.SLOPE.description",abstract:"formula.functionList.SLOPE.abstract",functionParameter:[{name:"formula.functionList.SLOPE.functionParameter.number1.name",detail:"formula.functionList.SLOPE.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.SLOPE.functionParameter.number2.name",detail:"formula.functionList.SLOPE.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.SMALL,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.SMALL.description",abstract:"formula.functionList.SMALL.abstract",functionParameter:[{name:"formula.functionList.SMALL.functionParameter.number1.name",detail:"formula.functionList.SMALL.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.SMALL.functionParameter.number2.name",detail:"formula.functionList.SMALL.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.STANDARDIZE,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.STANDARDIZE.description",abstract:"formula.functionList.STANDARDIZE.abstract",functionParameter:[{name:"formula.functionList.STANDARDIZE.functionParameter.number1.name",detail:"formula.functionList.STANDARDIZE.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.STANDARDIZE.functionParameter.number2.name",detail:"formula.functionList.STANDARDIZE.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.STDEV_P,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.STDEV_P.description",abstract:"formula.functionList.STDEV_P.abstract",functionParameter:[{name:"formula.functionList.STDEV_P.functionParameter.number1.name",detail:"formula.functionList.STDEV_P.functionParameter.number1.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.STDEV_P.functionParameter.number2.name",detail:"formula.functionList.STDEV_P.functionParameter.number2.detail",example:"2",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.STDEV_S,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.STDEV_S.description",abstract:"formula.functionList.STDEV_S.abstract",functionParameter:[{name:"formula.functionList.STDEV_S.functionParameter.number1.name",detail:"formula.functionList.STDEV_S.functionParameter.number1.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.STDEV_S.functionParameter.number2.name",detail:"formula.functionList.STDEV_S.functionParameter.number2.detail",example:"2",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.STDEVA,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.STDEVA.description",abstract:"formula.functionList.STDEVA.abstract",functionParameter:[{name:"formula.functionList.STDEVA.functionParameter.value1.name",detail:"formula.functionList.STDEVA.functionParameter.value1.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.STDEVA.functionParameter.value2.name",detail:"formula.functionList.STDEVA.functionParameter.value2.detail",example:"2",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.STDEVPA,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.STDEVPA.description",abstract:"formula.functionList.STDEVPA.abstract",functionParameter:[{name:"formula.functionList.STDEVPA.functionParameter.value1.name",detail:"formula.functionList.STDEVPA.functionParameter.value1.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.STDEVPA.functionParameter.value2.name",detail:"formula.functionList.STDEVPA.functionParameter.value2.detail",example:"2",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.STEYX,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.STEYX.description",abstract:"formula.functionList.STEYX.abstract",functionParameter:[{name:"formula.functionList.STEYX.functionParameter.number1.name",detail:"formula.functionList.STEYX.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.STEYX.functionParameter.number2.name",detail:"formula.functionList.STEYX.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.T_DIST,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.T_DIST.description",abstract:"formula.functionList.T_DIST.abstract",functionParameter:[{name:"formula.functionList.T_DIST.functionParameter.number1.name",detail:"formula.functionList.T_DIST.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.T_DIST.functionParameter.number2.name",detail:"formula.functionList.T_DIST.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.T_DIST_2T,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.T_DIST_2T.description",abstract:"formula.functionList.T_DIST_2T.abstract",functionParameter:[{name:"formula.functionList.T_DIST_2T.functionParameter.number1.name",detail:"formula.functionList.T_DIST_2T.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.T_DIST_2T.functionParameter.number2.name",detail:"formula.functionList.T_DIST_2T.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.T_DIST_RT,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.T_DIST_RT.description",abstract:"formula.functionList.T_DIST_RT.abstract",functionParameter:[{name:"formula.functionList.T_DIST_RT.functionParameter.number1.name",detail:"formula.functionList.T_DIST_RT.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.T_DIST_RT.functionParameter.number2.name",detail:"formula.functionList.T_DIST_RT.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.T_INV,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.T_INV.description",abstract:"formula.functionList.T_INV.abstract",functionParameter:[{name:"formula.functionList.T_INV.functionParameter.number1.name",detail:"formula.functionList.T_INV.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.T_INV.functionParameter.number2.name",detail:"formula.functionList.T_INV.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.T_INV_2T,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.T_INV_2T.description",abstract:"formula.functionList.T_INV_2T.abstract",functionParameter:[{name:"formula.functionList.T_INV_2T.functionParameter.number1.name",detail:"formula.functionList.T_INV_2T.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.T_INV_2T.functionParameter.number2.name",detail:"formula.functionList.T_INV_2T.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.T_TEST,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.T_TEST.description",abstract:"formula.functionList.T_TEST.abstract",functionParameter:[{name:"formula.functionList.T_TEST.functionParameter.number1.name",detail:"formula.functionList.T_TEST.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.T_TEST.functionParameter.number2.name",detail:"formula.functionList.T_TEST.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.TREND,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.TREND.description",abstract:"formula.functionList.TREND.abstract",functionParameter:[{name:"formula.functionList.TREND.functionParameter.number1.name",detail:"formula.functionList.TREND.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.TREND.functionParameter.number2.name",detail:"formula.functionList.TREND.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.TRIMMEAN,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.TRIMMEAN.description",abstract:"formula.functionList.TRIMMEAN.abstract",functionParameter:[{name:"formula.functionList.TRIMMEAN.functionParameter.number1.name",detail:"formula.functionList.TRIMMEAN.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.TRIMMEAN.functionParameter.number2.name",detail:"formula.functionList.TRIMMEAN.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.VAR_P,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.VAR_P.description",abstract:"formula.functionList.VAR_P.abstract",functionParameter:[{name:"formula.functionList.VAR_P.functionParameter.number1.name",detail:"formula.functionList.VAR_P.functionParameter.number1.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.VAR_P.functionParameter.number2.name",detail:"formula.functionList.VAR_P.functionParameter.number2.detail",example:"2",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.VAR_S,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.VAR_S.description",abstract:"formula.functionList.VAR_S.abstract",functionParameter:[{name:"formula.functionList.VAR_S.functionParameter.number1.name",detail:"formula.functionList.VAR_S.functionParameter.number1.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.VAR_S.functionParameter.number2.name",detail:"formula.functionList.VAR_S.functionParameter.number2.detail",example:"2",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.VARA,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.VARA.description",abstract:"formula.functionList.VARA.abstract",functionParameter:[{name:"formula.functionList.VARA.functionParameter.value1.name",detail:"formula.functionList.VARA.functionParameter.value1.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.VARA.functionParameter.value2.name",detail:"formula.functionList.VARA.functionParameter.value2.detail",example:"2",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.VARPA,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.VARPA.description",abstract:"formula.functionList.VARPA.abstract",functionParameter:[{name:"formula.functionList.VARPA.functionParameter.value1.name",detail:"formula.functionList.VARPA.functionParameter.value1.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.VARPA.functionParameter.value2.name",detail:"formula.functionList.VARPA.functionParameter.value2.detail",example:"2",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.WEIBULL_DIST,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.WEIBULL_DIST.description",abstract:"formula.functionList.WEIBULL_DIST.abstract",functionParameter:[{name:"formula.functionList.WEIBULL_DIST.functionParameter.number1.name",detail:"formula.functionList.WEIBULL_DIST.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.WEIBULL_DIST.functionParameter.number2.name",detail:"formula.functionList.WEIBULL_DIST.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.Z_TEST,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.Z_TEST.description",abstract:"formula.functionList.Z_TEST.abstract",functionParameter:[{name:"formula.functionList.Z_TEST.functionParameter.number1.name",detail:"formula.functionList.Z_TEST.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.Z_TEST.functionParameter.number2.name",detail:"formula.functionList.Z_TEST.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]}],FUNCTION_LIST_TEXT=[{functionName:engineFormula.FUNCTION_NAMES_TEXT.ASC,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.ASC.description",abstract:"formula.functionList.ASC.abstract",functionParameter:[{name:"formula.functionList.ASC.functionParameter.number1.name",detail:"formula.functionList.ASC.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.ASC.functionParameter.number2.name",detail:"formula.functionList.ASC.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.ARRAYTOTEXT,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.ARRAYTOTEXT.description",abstract:"formula.functionList.ARRAYTOTEXT.abstract",functionParameter:[{name:"formula.functionList.ARRAYTOTEXT.functionParameter.number1.name",detail:"formula.functionList.ARRAYTOTEXT.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.ARRAYTOTEXT.functionParameter.number2.name",detail:"formula.functionList.ARRAYTOTEXT.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.BAHTTEXT,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.BAHTTEXT.description",abstract:"formula.functionList.BAHTTEXT.abstract",functionParameter:[{name:"formula.functionList.BAHTTEXT.functionParameter.number1.name",detail:"formula.functionList.BAHTTEXT.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.BAHTTEXT.functionParameter.number2.name",detail:"formula.functionList.BAHTTEXT.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.CHAR,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.CHAR.description",abstract:"formula.functionList.CHAR.abstract",functionParameter:[{name:"formula.functionList.CHAR.functionParameter.number1.name",detail:"formula.functionList.CHAR.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.CHAR.functionParameter.number2.name",detail:"formula.functionList.CHAR.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.CLEAN,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.CLEAN.description",abstract:"formula.functionList.CLEAN.abstract",functionParameter:[{name:"formula.functionList.CLEAN.functionParameter.number1.name",detail:"formula.functionList.CLEAN.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.CLEAN.functionParameter.number2.name",detail:"formula.functionList.CLEAN.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.CODE,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.CODE.description",abstract:"formula.functionList.CODE.abstract",functionParameter:[{name:"formula.functionList.CODE.functionParameter.number1.name",detail:"formula.functionList.CODE.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.CODE.functionParameter.number2.name",detail:"formula.functionList.CODE.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.CONCAT,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.CONCAT.description",abstract:"formula.functionList.CONCAT.abstract",functionParameter:[{name:"formula.functionList.CONCAT.functionParameter.text1.name",detail:"formula.functionList.CONCAT.functionParameter.text1.detail",example:'"Hello"',require:1,repeat:0},{name:"formula.functionList.CONCAT.functionParameter.text2.name",detail:"formula.functionList.CONCAT.functionParameter.text2.detail",example:'"Univer"',require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.CONCATENATE,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.CONCATENATE.description",abstract:"formula.functionList.CONCATENATE.abstract",functionParameter:[{name:"formula.functionList.CONCATENATE.functionParameter.text1.name",detail:"formula.functionList.CONCATENATE.functionParameter.text1.detail",example:"A1",require:1,repeat:0},{name:"formula.functionList.CONCATENATE.functionParameter.text2.name",detail:"formula.functionList.CONCATENATE.functionParameter.text2.detail",example:"A2",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.DBCS,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.DBCS.description",abstract:"formula.functionList.DBCS.abstract",functionParameter:[{name:"formula.functionList.DBCS.functionParameter.number1.name",detail:"formula.functionList.DBCS.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.DBCS.functionParameter.number2.name",detail:"formula.functionList.DBCS.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.DOLLAR,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.DOLLAR.description",abstract:"formula.functionList.DOLLAR.abstract",functionParameter:[{name:"formula.functionList.DOLLAR.functionParameter.number1.name",detail:"formula.functionList.DOLLAR.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.DOLLAR.functionParameter.number2.name",detail:"formula.functionList.DOLLAR.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.EXACT,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.EXACT.description",abstract:"formula.functionList.EXACT.abstract",functionParameter:[{name:"formula.functionList.EXACT.functionParameter.number1.name",detail:"formula.functionList.EXACT.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.EXACT.functionParameter.number2.name",detail:"formula.functionList.EXACT.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.FIND,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.FIND.description",abstract:"formula.functionList.FIND.abstract",functionParameter:[{name:"formula.functionList.FIND.functionParameter.number1.name",detail:"formula.functionList.FIND.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.FIND.functionParameter.number2.name",detail:"formula.functionList.FIND.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.FINDB,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.FINDB.description",abstract:"formula.functionList.FINDB.abstract",functionParameter:[{name:"formula.functionList.FINDB.functionParameter.number1.name",detail:"formula.functionList.FINDB.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.FINDB.functionParameter.number2.name",detail:"formula.functionList.FINDB.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.FIXED,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.FIXED.description",abstract:"formula.functionList.FIXED.abstract",functionParameter:[{name:"formula.functionList.FIXED.functionParameter.number1.name",detail:"formula.functionList.FIXED.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.FIXED.functionParameter.number2.name",detail:"formula.functionList.FIXED.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.LEFT,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.LEFT.description",abstract:"formula.functionList.LEFT.abstract",functionParameter:[{name:"formula.functionList.LEFT.functionParameter.number1.name",detail:"formula.functionList.LEFT.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.LEFT.functionParameter.number2.name",detail:"formula.functionList.LEFT.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.LEFTB,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.LEFTB.description",abstract:"formula.functionList.LEFTB.abstract",functionParameter:[{name:"formula.functionList.LEFTB.functionParameter.text.name",detail:"formula.functionList.LEFTB.functionParameter.text.detail",example:'"Hello Univer"',require:1,repeat:0},{name:"formula.functionList.LEFTB.functionParameter.numBytes.name",detail:"formula.functionList.LEFTB.functionParameter.numBytes.detail",example:"1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.LEN,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.LEN.description",abstract:"formula.functionList.LEN.abstract",functionParameter:[{name:"formula.functionList.LEN.functionParameter.text.name",detail:"formula.functionList.LEN.functionParameter.text.detail",example:'"Univer"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.LENB,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.LENB.description",abstract:"formula.functionList.LENB.abstract",functionParameter:[{name:"formula.functionList.LENB.functionParameter.text.name",detail:"formula.functionList.LENB.functionParameter.text.detail",example:'"Univer"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.LOWER,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.LOWER.description",abstract:"formula.functionList.LOWER.abstract",functionParameter:[{name:"formula.functionList.LOWER.functionParameter.text.name",detail:"formula.functionList.LOWER.functionParameter.text.detail",example:'"Univer"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.MID,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.MID.description",abstract:"formula.functionList.MID.abstract",functionParameter:[{name:"formula.functionList.MID.functionParameter.text.name",detail:"formula.functionList.MID.functionParameter.text.detail",example:'"Hello Univer"',require:1,repeat:0},{name:"formula.functionList.MID.functionParameter.startNum.name",detail:"formula.functionList.MID.functionParameter.startNum.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.MID.functionParameter.numChars.name",detail:"formula.functionList.MID.functionParameter.numChars.detail",example:"1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.MIDB,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.MIDB.description",abstract:"formula.functionList.MIDB.abstract",functionParameter:[{name:"formula.functionList.MIDB.functionParameter.number1.name",detail:"formula.functionList.MIDB.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.MIDB.functionParameter.number2.name",detail:"formula.functionList.MIDB.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.NUMBERVALUE,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.NUMBERVALUE.description",abstract:"formula.functionList.NUMBERVALUE.abstract",functionParameter:[{name:"formula.functionList.NUMBERVALUE.functionParameter.number1.name",detail:"formula.functionList.NUMBERVALUE.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.NUMBERVALUE.functionParameter.number2.name",detail:"formula.functionList.NUMBERVALUE.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.PHONETIC,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.PHONETIC.description",abstract:"formula.functionList.PHONETIC.abstract",functionParameter:[{name:"formula.functionList.PHONETIC.functionParameter.number1.name",detail:"formula.functionList.PHONETIC.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.PHONETIC.functionParameter.number2.name",detail:"formula.functionList.PHONETIC.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.PROPER,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.PROPER.description",abstract:"formula.functionList.PROPER.abstract",functionParameter:[{name:"formula.functionList.PROPER.functionParameter.number1.name",detail:"formula.functionList.PROPER.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.PROPER.functionParameter.number2.name",detail:"formula.functionList.PROPER.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.REPLACE,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.REPLACE.description",abstract:"formula.functionList.REPLACE.abstract",functionParameter:[{name:"formula.functionList.REPLACE.functionParameter.number1.name",detail:"formula.functionList.REPLACE.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.REPLACE.functionParameter.number2.name",detail:"formula.functionList.REPLACE.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.REPLACEB,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.REPLACEB.description",abstract:"formula.functionList.REPLACEB.abstract",functionParameter:[{name:"formula.functionList.REPLACEB.functionParameter.number1.name",detail:"formula.functionList.REPLACEB.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.REPLACEB.functionParameter.number2.name",detail:"formula.functionList.REPLACEB.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.REPT,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.REPT.description",abstract:"formula.functionList.REPT.abstract",functionParameter:[{name:"formula.functionList.REPT.functionParameter.text.name",detail:"formula.functionList.REPT.functionParameter.text.detail",example:'"*-"',require:1,repeat:0},{name:"formula.functionList.REPT.functionParameter.numberTimes.name",detail:"formula.functionList.REPT.functionParameter.numberTimes.detail",example:"3",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.RIGHT,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.RIGHT.description",abstract:"formula.functionList.RIGHT.abstract",functionParameter:[{name:"formula.functionList.RIGHT.functionParameter.number1.name",detail:"formula.functionList.RIGHT.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.RIGHT.functionParameter.number2.name",detail:"formula.functionList.RIGHT.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.RIGHTB,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.RIGHTB.description",abstract:"formula.functionList.RIGHTB.abstract",functionParameter:[{name:"formula.functionList.RIGHTB.functionParameter.number1.name",detail:"formula.functionList.RIGHTB.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.RIGHTB.functionParameter.number2.name",detail:"formula.functionList.RIGHTB.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.SEARCH,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.SEARCH.description",abstract:"formula.functionList.SEARCH.abstract",functionParameter:[{name:"formula.functionList.SEARCH.functionParameter.number1.name",detail:"formula.functionList.SEARCH.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.SEARCH.functionParameter.number2.name",detail:"formula.functionList.SEARCH.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.SEARCHB,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.SEARCHB.description",abstract:"formula.functionList.SEARCHB.abstract",functionParameter:[{name:"formula.functionList.SEARCHB.functionParameter.number1.name",detail:"formula.functionList.SEARCHB.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.SEARCHB.functionParameter.number2.name",detail:"formula.functionList.SEARCHB.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.SUBSTITUTE,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.SUBSTITUTE.description",abstract:"formula.functionList.SUBSTITUTE.abstract",functionParameter:[{name:"formula.functionList.SUBSTITUTE.functionParameter.number1.name",detail:"formula.functionList.SUBSTITUTE.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.SUBSTITUTE.functionParameter.number2.name",detail:"formula.functionList.SUBSTITUTE.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.T,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.T.description",abstract:"formula.functionList.T.abstract",functionParameter:[{name:"formula.functionList.T.functionParameter.number1.name",detail:"formula.functionList.T.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.T.functionParameter.number2.name",detail:"formula.functionList.T.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.TEXT,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.TEXT.description",abstract:"formula.functionList.TEXT.abstract",functionParameter:[{name:"formula.functionList.TEXT.functionParameter.value.name",detail:"formula.functionList.TEXT.functionParameter.value.detail",example:"1.23",require:1,repeat:0},{name:"formula.functionList.TEXT.functionParameter.formatText.name",detail:"formula.functionList.TEXT.functionParameter.formatText.detail",example:'"$0.00"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.TEXTAFTER,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.TEXTAFTER.description",abstract:"formula.functionList.TEXTAFTER.abstract",functionParameter:[{name:"formula.functionList.TEXTAFTER.functionParameter.text.name",detail:"formula.functionList.TEXTAFTER.functionParameter.text.detail",example:'"Red riding hood’s, red hood"',require:1,repeat:0},{name:"formula.functionList.TEXTAFTER.functionParameter.delimiter.name",detail:"formula.functionList.TEXTAFTER.functionParameter.delimiter.detail",example:'"hood"',require:1,repeat:0},{name:"formula.functionList.TEXTAFTER.functionParameter.instanceNum.name",detail:"formula.functionList.TEXTAFTER.functionParameter.instanceNum.detail",example:"1",require:0,repeat:0},{name:"formula.functionList.TEXTAFTER.functionParameter.matchMode.name",detail:"formula.functionList.TEXTAFTER.functionParameter.matchMode.detail",example:"1",require:0,repeat:0},{name:"formula.functionList.TEXTAFTER.functionParameter.matchEnd.name",detail:"formula.functionList.TEXTAFTER.functionParameter.matchEnd.detail",example:"0",require:0,repeat:0},{name:"formula.functionList.TEXTAFTER.functionParameter.ifNotFound.name",detail:"formula.functionList.TEXTAFTER.functionParameter.ifNotFound.detail",example:'"not found"',require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.TEXTBEFORE,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.TEXTBEFORE.description",abstract:"formula.functionList.TEXTBEFORE.abstract",functionParameter:[{name:"formula.functionList.TEXTBEFORE.functionParameter.text.name",detail:"formula.functionList.TEXTBEFORE.functionParameter.text.detail",example:'"Red riding hood’s, red hood"',require:1,repeat:0},{name:"formula.functionList.TEXTBEFORE.functionParameter.delimiter.name",detail:"formula.functionList.TEXTBEFORE.functionParameter.delimiter.detail",example:'"hood"',require:1,repeat:0},{name:"formula.functionList.TEXTBEFORE.functionParameter.instanceNum.name",detail:"formula.functionList.TEXTBEFORE.functionParameter.instanceNum.detail",example:"1",require:0,repeat:0},{name:"formula.functionList.TEXTBEFORE.functionParameter.matchMode.name",detail:"formula.functionList.TEXTBEFORE.functionParameter.matchMode.detail",example:"1",require:0,repeat:0},{name:"formula.functionList.TEXTBEFORE.functionParameter.matchEnd.name",detail:"formula.functionList.TEXTBEFORE.functionParameter.matchEnd.detail",example:"0",require:0,repeat:0},{name:"formula.functionList.TEXTBEFORE.functionParameter.ifNotFound.name",detail:"formula.functionList.TEXTBEFORE.functionParameter.ifNotFound.detail",example:'"not found"',require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.TEXTJOIN,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.TEXTJOIN.description",abstract:"formula.functionList.TEXTJOIN.abstract",functionParameter:[{name:"formula.functionList.TEXTJOIN.functionParameter.number1.name",detail:"formula.functionList.TEXTJOIN.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.TEXTJOIN.functionParameter.number2.name",detail:"formula.functionList.TEXTJOIN.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.TEXTSPLIT,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.TEXTSPLIT.description",abstract:"formula.functionList.TEXTSPLIT.abstract",functionParameter:[{name:"formula.functionList.TEXTSPLIT.functionParameter.text.name",detail:"formula.functionList.TEXTSPLIT.functionParameter.text.detail",example:"{1,2,3;4,5,6}",require:1,repeat:0},{name:"formula.functionList.TEXTSPLIT.functionParameter.colDelimiter.name",detail:"formula.functionList.TEXTSPLIT.functionParameter.colDelimiter.detail",example:'","',require:1,repeat:0},{name:"formula.functionList.TEXTSPLIT.functionParameter.rowDelimiter.name",detail:"formula.functionList.TEXTSPLIT.functionParameter.rowDelimiter.detail",example:'";"',require:0,repeat:0},{name:"formula.functionList.TEXTSPLIT.functionParameter.ignoreEmpty.name",detail:"formula.functionList.TEXTSPLIT.functionParameter.ignoreEmpty.detail",example:"",require:0,repeat:0},{name:"formula.functionList.TEXTSPLIT.functionParameter.matchMode.name",detail:"formula.functionList.TEXTSPLIT.functionParameter.matchMode.detail",example:"",require:0,repeat:0},{name:"formula.functionList.TEXTSPLIT.functionParameter.padWith.name",detail:"formula.functionList.TEXTSPLIT.functionParameter.padWith.detail",example:"",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.TRIM,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.TRIM.description",abstract:"formula.functionList.TRIM.abstract",functionParameter:[{name:"formula.functionList.TRIM.functionParameter.number1.name",detail:"formula.functionList.TRIM.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.TRIM.functionParameter.number2.name",detail:"formula.functionList.TRIM.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.UNICHAR,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.UNICHAR.description",abstract:"formula.functionList.UNICHAR.abstract",functionParameter:[{name:"formula.functionList.UNICHAR.functionParameter.number1.name",detail:"formula.functionList.UNICHAR.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.UNICHAR.functionParameter.number2.name",detail:"formula.functionList.UNICHAR.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.UNICODE,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.UNICODE.description",abstract:"formula.functionList.UNICODE.abstract",functionParameter:[{name:"formula.functionList.UNICODE.functionParameter.number1.name",detail:"formula.functionList.UNICODE.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.UNICODE.functionParameter.number2.name",detail:"formula.functionList.UNICODE.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.UPPER,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.UPPER.description",abstract:"formula.functionList.UPPER.abstract",functionParameter:[{name:"formula.functionList.UPPER.functionParameter.number1.name",detail:"formula.functionList.UPPER.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.UPPER.functionParameter.number2.name",detail:"formula.functionList.UPPER.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.VALUE,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.VALUE.description",abstract:"formula.functionList.VALUE.abstract",functionParameter:[{name:"formula.functionList.VALUE.functionParameter.number1.name",detail:"formula.functionList.VALUE.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.VALUE.functionParameter.number2.name",detail:"formula.functionList.VALUE.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.VALUETOTEXT,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.VALUETOTEXT.description",abstract:"formula.functionList.VALUETOTEXT.abstract",functionParameter:[{name:"formula.functionList.VALUETOTEXT.functionParameter.number1.name",detail:"formula.functionList.VALUETOTEXT.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.VALUETOTEXT.functionParameter.number2.name",detail:"formula.functionList.VALUETOTEXT.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.CALL,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.CALL.description",abstract:"formula.functionList.CALL.abstract",functionParameter:[{name:"formula.functionList.CALL.functionParameter.number1.name",detail:"formula.functionList.CALL.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.CALL.functionParameter.number2.name",detail:"formula.functionList.CALL.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.EUROCONVERT,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.EUROCONVERT.description",abstract:"formula.functionList.EUROCONVERT.abstract",functionParameter:[{name:"formula.functionList.EUROCONVERT.functionParameter.number1.name",detail:"formula.functionList.EUROCONVERT.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.EUROCONVERT.functionParameter.number2.name",detail:"formula.functionList.EUROCONVERT.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.REGISTER_ID,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.REGISTER_ID.description",abstract:"formula.functionList.REGISTER_ID.abstract",functionParameter:[{name:"formula.functionList.REGISTER_ID.functionParameter.number1.name",detail:"formula.functionList.REGISTER_ID.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.REGISTER_ID.functionParameter.number2.name",detail:"formula.functionList.REGISTER_ID.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]}],FUNCTION_LIST_UNIVER=[],FUNCTION_LIST_WEB=[{functionName:engineFormula.FUNCTION_NAMES_WEB.ENCODEURL,functionType:engineFormula.FunctionType.Web,description:"formula.functionList.ENCODEURL.description",abstract:"formula.functionList.ENCODEURL.abstract",functionParameter:[{name:"formula.functionList.ENCODEURL.functionParameter.number1.name",detail:"formula.functionList.ENCODEURL.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.ENCODEURL.functionParameter.number2.name",detail:"formula.functionList.ENCODEURL.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_WEB.FILTERXML,functionType:engineFormula.FunctionType.Web,description:"formula.functionList.FILTERXML.description",abstract:"formula.functionList.FILTERXML.abstract",functionParameter:[{name:"formula.functionList.FILTERXML.functionParameter.number1.name",detail:"formula.functionList.FILTERXML.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.FILTERXML.functionParameter.number2.name",detail:"formula.functionList.FILTERXML.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_WEB.WEBSERVICE,functionType:engineFormula.FunctionType.Web,description:"formula.functionList.WEBSERVICE.description",abstract:"formula.functionList.WEBSERVICE.abstract",functionParameter:[{name:"formula.functionList.WEBSERVICE.functionParameter.number1.name",detail:"formula.functionList.WEBSERVICE.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.WEBSERVICE.functionParameter.number2.name",detail:"formula.functionList.WEBSERVICE.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]}],FUNCTION_LIST=[...FUNCTION_LIST_FINANCIAL,...FUNCTION_LIST_DATE,...FUNCTION_LIST_MATH,...FUNCTION_LIST_STATISTICAL,...FUNCTION_LIST_LOOKUP,...FUNCTION_LIST_DATABASE,...FUNCTION_LIST_TEXT,...FUNCTION_LIST_LOGICAL,...FUNCTION_LIST_INFORMATION,...FUNCTION_LIST_ENGINEERING,...FUNCTION_LIST_CUBE,...FUNCTION_LIST_COMPATIBILITY,...FUNCTION_LIST_WEB,...FUNCTION_LIST_ARRAY,...FUNCTION_LIST_UNIVER];var __defProp$d=Object.defineProperty,__getOwnPropDesc$d=Object.getOwnPropertyDescriptor,__decorateClass$d=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$d(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$d(target,key,result),result},"__decorateClass$d"),__decorateParam$d=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$d");const IDescriptionService=core.createIdentifier("formula-ui.description-service");var _a7;exports.DescriptionService=(_a7=class{constructor(_functionService,_localeService,_configService){__publicField(this,"_descriptions",[]);this._functionService=_functionService,this._localeService=_localeService,this._configService=_configService,this._initialize()}dispose(){this._localeService.localeChanged$.complete()}getDescriptions(){return this._functionService.getDescriptions()}hasFunction(searchText){return this._functionService.getDescriptions().get(searchText.toLocaleUpperCase())!==void 0}getFunctionInfo(searchText){return this._functionService.getDescriptions().get(searchText.toLocaleUpperCase())}getSearchListByName(searchText){const searchList=[],functionList=this._functionService.getDescriptions(),_searchText=searchText.toLocaleUpperCase().trim();return functionList.forEach(item=>{const{functionName,abstract,functionType}=item;functionName.toLocaleUpperCase().indexOf(_searchText)>-1&&functionType!==engineFormula.FunctionType.DefinedName&&searchList.push({name:functionName,desc:abstract})}),searchList}getSearchListByNameFirstLetter(searchText){const searchList=[],functionList=this._functionService.getDescriptions(),_searchText=searchText.toLocaleUpperCase().trim();return functionList.forEach(item=>{const{functionName,abstract}=item;functionName.toLocaleUpperCase().indexOf(_searchText)===0&&searchList.push({name:functionName,desc:abstract})}),searchList}getSearchListByType(type){const searchList=[];return this._functionService.getDescriptions().forEach(item=>{const{functionName,functionType,abstract}=item;(functionType===type||type===-1)&&functionType!==engineFormula.FunctionType.DefinedName&&searchList.push({name:functionName,desc:abstract})}),searchList}registerDescriptions(description){return this._descriptions=this._descriptions.concat(description),this._registerDescriptions(),core.toDisposable(()=>{const functionNames=description.map(item=>item.functionName);this.unregisterDescriptions(functionNames)})}unregisterDescriptions(functionNames){this._descriptions=this._descriptions.filter(item=>!functionNames.includes(item.functionName)),this._functionService.unregisterDescriptions(...functionNames)}hasDescription(name){return this._descriptions.some(item=>item.functionName===name)}hasDefinedNameDescription(name){return this._descriptions.some(item=>item.functionName===name&&item.functionType===engineFormula.FunctionType.DefinedName)}isFormulaDefinedName(name){const items=this._descriptions.filter(item=>item.functionName===name&&item.functionType===engineFormula.FunctionType.DefinedName);if(items.length===0)return!1;const token=items[0].description;return!engineFormula.isReferenceStrings(token)}_initialize(){this._localeService.localeChanged$.subscribe(()=>{this._registerDescriptions()}),this._initDescription(),this._registerDescriptions()}_initDescription(){var _a23;const functions=[...engineFormula.functionArray,...engineFormula.functionCompatibility,...engineFormula.functionCube,...engineFormula.functionDatabase,...engineFormula.functionDate,...engineFormula.functionEngineering,...engineFormula.functionFinancial,...engineFormula.functionInformation,...engineFormula.functionLogical,...engineFormula.functionLookup,...engineFormula.functionMath,...engineFormula.functionMeta,...engineFormula.functionStatistical,...engineFormula.functionText,...engineFormula.functionUniver,...engineFormula.functionWeb].map(item=>item[1]),filterFunctionList=FUNCTION_LIST.filter(item=>functions.includes(item.functionName)),config=this._configService.getConfig(PLUGIN_CONFIG_KEY_BASE);this._descriptions=filterFunctionList.concat((_a23=config==null?void 0:config.description)!=null?_a23:[])}_registerDescriptions(){const localeService=this._localeService,functionListLocale=this._descriptions.map(functionInfo=>({functionName:getFunctionName(functionInfo,localeService),functionType:functionInfo.functionType,description:localeService.t(functionInfo.description),abstract:localeService.t(functionInfo.abstract),functionParameter:functionInfo.functionParameter.map(item=>({name:localeService.t(item.name),detail:localeService.t(item.detail),example:item.example,require:item.require,repeat:item.repeat}))}));this._functionService.registerDescriptions(...functionListLocale)}},__name(_a7,"DescriptionService"),_a7);exports.DescriptionService=__decorateClass$d([__decorateParam$d(0,engineFormula.IFunctionService),__decorateParam$d(1,core.Inject(core.LocaleService)),__decorateParam$d(2,core.IConfigService)],exports.DescriptionService);const formulaSelectFunctionSelect="univer-formula-select-function-select",formulaSelectFunctionResult="univer-formula-select-function-result",formulaSelectFunctionResultItem="univer-formula-select-function-result-item",formulaSelectFunctionResultItemNameLight="univer-formula-select-function-result-item-name-light",formulaSelectFunctionResultItemSelected="univer-formula-select-function-result-item-selected",formulaSelectFunctionResultItemActive="univer-formula-select-function-result-item-active",formulaSelectFunctionContent="univer-formula-select-function-content",styles={formulaSelectFunctionSelect,formulaSelectFunctionResult,formulaSelectFunctionResultItem,formulaSelectFunctionResultItemNameLight,formulaSelectFunctionResultItemSelected,formulaSelectFunctionResultItemActive,formulaSelectFunctionContent};function SelectFunction(props){const{onChange}=props,allTypeValue="-1",[searchText,setSearchText]=require$$0.useState(""),[selectList,setSelectList]=require$$0.useState([]),[active,setActive]=require$$0.useState(0),[typeSelected,setTypeSelected]=require$$0.useState(allTypeValue),[nameSelected,setNameSelected]=require$$0.useState(0),[functionInfo,setFunctionInfo]=require$$0.useState(null),descriptionService=core.useDependency(IDescriptionService),localeService=core.useDependency(core.LocaleService),options=getFunctionTypeValues(engineFormula.FunctionType,localeService);options.unshift({label:localeService.t("formula.moreFunctions.allFunctions"),value:allTypeValue});const required=localeService.t("formula.prompt.required"),optional=localeService.t("formula.prompt.optional");require$$0.useEffect(()=>{handleSelectChange(allTypeValue)},[]),require$$0.useEffect(()=>{setCurrentFunctionInfo(0)},[selectList]);const highlightSearchText=__name(text=>{if(searchText.trim()==="")return text;const regex=new RegExp(`(${searchText.toLocaleUpperCase()})`);return text.split(regex).filter(Boolean).map((part,index)=>part.match(regex)?jsxRuntimeExports.jsx("span",{className:styles.formulaSelectFunctionResultItemNameLight,children:part},index):part)},"highlightSearchText"),setCurrentFunctionInfo=__name(selectedIndex=>{if(selectList.length===0){setFunctionInfo(null);return}setNameSelected(selectedIndex);const functionInfo2=descriptionService.getFunctionInfo(selectList[selectedIndex].name);if(!functionInfo2){setFunctionInfo(null);return}setFunctionInfo(functionInfo2),onChange(functionInfo2)},"setCurrentFunctionInfo");function handleSelectChange(value){setTypeSelected(value);const selectList2=descriptionService.getSearchListByType(+value);setSelectList(selectList2)}__name(handleSelectChange,"handleSelectChange");function handleSearchInputChange(value){setSearchText(value);const selectList2=descriptionService.getSearchListByName(value);setSelectList(selectList2)}__name(handleSearchInputChange,"handleSearchInputChange");function handleSelectListKeyDown(e){if(e.stopPropagation(),e.key==="ArrowDown"){const nextActive=active+1;setActive(nextActive===selectList.length?0:nextActive)}else if(e.key==="ArrowUp"){const nextActive=active-1;setActive(nextActive===-1?selectList.length-1:nextActive)}else e.key==="Enter"&&setCurrentFunctionInfo(active)}__name(handleSelectListKeyDown,"handleSelectListKeyDown");const handleLiMouseEnter=__name(index=>{setActive(index)},"handleLiMouseEnter"),handleLiMouseLeave=__name(()=>{setActive(-1)},"handleLiMouseLeave");return jsxRuntimeExports.jsxs("div",{children:[jsxRuntimeExports.jsxs("div",{className:styles.formulaSelectFunctionSelect,children:[jsxRuntimeExports.jsx(design.Select,{value:typeSelected,options,onChange:handleSelectChange}),jsxRuntimeExports.jsx(design.Input,{placeholder:localeService.t("formula.moreFunctions.searchFunctionPlaceholder"),onKeyDown:handleSelectListKeyDown,value:searchText,onChange:handleSearchInputChange,size:"large",allowClear:!0})]}),jsxRuntimeExports.jsx("ul",{className:styles.formulaSelectFunctionResult,onKeyDown:handleSelectListKeyDown,tabIndex:-1,children:selectList.map(({name},index)=>jsxRuntimeExports.jsxs("li",{className:active===index?`${styles.formulaSelectFunctionResultItem} ${styles.formulaSelectFunctionResultItemActive}`:styles.formulaSelectFunctionResultItem,onMouseEnter:__name(()=>handleLiMouseEnter(index),"onMouseEnter"),onMouseLeave:handleLiMouseLeave,onClick:__name(()=>setCurrentFunctionInfo(index),"onClick"),children:[nameSelected===index&&jsxRuntimeExports.jsx(CheckMarkSingle,{className:styles.formulaSelectFunctionResultItemSelected}),jsxRuntimeExports.jsx("span",{className:styles.formulaSelectFunctionResultItemName,children:highlightSearchText(name)})]},index))}),functionInfo&&jsxRuntimeExports.jsxs("div",{className:styles.formulaSelectFunctionContent,children:[jsxRuntimeExports.jsx(FunctionParams,{title:functionInfo.functionName,value:functionInfo.description}),jsxRuntimeExports.jsx(FunctionParams,{title:localeService.t("formula.moreFunctions.syntax"),value:jsxRuntimeExports.jsx(FunctionHelp,{prefix:functionInfo.functionName,value:functionInfo.functionParameter})}),jsxRuntimeExports.jsx(FunctionParams,{title:localeService.t("formula.prompt.helpExample"),value:`${functionInfo.functionName}(${functionInfo.functionParameter.map(item=>item.example).join(",")})`}),functionInfo.functionParameter&&functionInfo.functionParameter.map((item,i)=>jsxRuntimeExports.jsx(FunctionParams,{title:item.name,value:`${item.require?required:optional} ${item.detail}`},i))]})]})}__name(SelectFunction,"SelectFunction");function MoreFunctions(){const workbook=sheetsUi.useActiveWorkbook(),[selectFunction,setSelectFunction]=require$$0.useState(!0),[inputParams,setInputParams]=require$$0.useState(!1),[functionInfo,setFunctionInfo]=require$$0.useState(null),localeService=core.useDependency(core.LocaleService),editorService=core.useDependency(ui.IEditorService);function handleClickNextPrev(){setSelectFunction(!selectFunction),setInputParams(!inputParams)}__name(handleClickNextPrev,"handleClickNextPrev");function handleConfirm(){editorService.setFormula(`=${functionInfo==null?void 0:functionInfo.functionName}(`)}return __name(handleConfirm,"handleConfirm"),jsxRuntimeExports.jsxs("div",{className:styles$3.formulaMoreFunctions,children:[selectFunction&&jsxRuntimeExports.jsx(SelectFunction,{onChange:setFunctionInfo}),inputParams&&jsxRuntimeExports.jsx(InputParams,{functionInfo,onChange:__name(()=>{},"onChange")}),jsxRuntimeExports.jsxs("div",{className:styles$3.formulaMoreFunctionsOperation,children:[inputParams&&jsxRuntimeExports.jsx(design.Button,{type:"primary",size:"small",onClick:handleClickNextPrev,children:localeService.t("formula.moreFunctions.next")}),inputParams&&jsxRuntimeExports.jsx(design.Button,{size:"small",onClick:handleClickNextPrev,children:localeService.t("formula.moreFunctions.prev")}),selectFunction&&!!workbook&&jsxRuntimeExports.jsx(design.Button,{type:"primary",size:"small",onClick:handleConfirm,children:localeService.t("formula.moreFunctions.confirm")})]})]})}__name(MoreFunctions,"MoreFunctions");const OtherFormulaMarkDirty={type:core.CommandType.MUTATION,id:"sheet.mutation.data-validation-formula-mark-dirty",handler(){return!0}},META_KEY_CTRL_AND_SHIFT="meta_key_ctrl_And_Shift";function whenEditorStandalone(contextService){return contextService.getContextValue(core.FOCUSING_DOC)&&contextService.getContextValue(core.FOCUSING_UNIVER_EDITOR)&&contextService.getContextValue(core.FOCUSING_UNIVER_EDITOR_STANDALONE_SINGLE_MODE)}__name(whenEditorStandalone,"whenEditorStandalone");function extractFormulaError(cell){return(core.isFormulaString(cell==null?void 0:cell.f)||core.isFormulaId(cell==null?void 0:cell.si))&&typeof(cell==null?void 0:cell.v)=="string"&&engineFormula.ERROR_TYPE_SET.has(cell.v)?cell.v:null}__name(extractFormulaError,"extractFormulaError");const PROMPT_SELECTION_KEYCODE_ARROW_LIST=[ui.KeyCode.ARROW_DOWN,ui.KeyCode.ARROW_UP,ui.KeyCode.ARROW_LEFT,ui.KeyCode.ARROW_RIGHT],PROMPT_SELECTION_KEYCODE_LIST=[...PROMPT_SELECTION_KEYCODE_ARROW_LIST,ui.KeyCode.ENTER,ui.KeyCode.TAB,ui.KeyCode.ESC];function promptSelectionShortcutItem(){const shortcutList=[];for(const keycode of PROMPT_SELECTION_KEYCODE_LIST)shortcutList.push({id:SelectEditorFormulaOperation.id,binding:keycode,preconditions:__name(contextService=>sheetsUi.whenFormulaEditorActivated(contextService),"preconditions"),staticParameters:{eventType:engineRender.DeviceInputEventType.Keyboard,keycode}});return shortcutList}__name(promptSelectionShortcutItem,"promptSelectionShortcutItem");function promptSelectionShortcutItemShift(){const shortcutList=[];for(const keycode of PROMPT_SELECTION_KEYCODE_ARROW_LIST)shortcutList.push({id:SelectEditorFormulaOperation.id,binding:keycode|ui.MetaKeys.SHIFT,preconditions:__name(contextService=>sheetsUi.whenFormulaEditorActivated(contextService),"preconditions"),staticParameters:{eventType:engineRender.DeviceInputEventType.Keyboard,keycode,metaKey:ui.MetaKeys.SHIFT}});return shortcutList}__name(promptSelectionShortcutItemShift,"promptSelectionShortcutItemShift");function promptSelectionShortcutItemCtrl(){const shortcutList=[];for(const keycode of PROMPT_SELECTION_KEYCODE_ARROW_LIST)shortcutList.push({id:SelectEditorFormulaOperation.id,binding:keycode|ui.MetaKeys.CTRL_COMMAND,preconditions:__name(contextService=>sheetsUi.whenFormulaEditorActivated(contextService),"preconditions"),staticParameters:{eventType:engineRender.DeviceInputEventType.Keyboard,keycode,metaKey:ui.MetaKeys.CTRL_COMMAND}});return shortcutList}__name(promptSelectionShortcutItemCtrl,"promptSelectionShortcutItemCtrl");function promptSelectionShortcutItemCtrlAndShift(){const shortcutList=[];for(const keycode of PROMPT_SELECTION_KEYCODE_ARROW_LIST)shortcutList.push({id:SelectEditorFormulaOperation.id,binding:keycode|ui.MetaKeys.SHIFT|ui.MetaKeys.CTRL_COMMAND,preconditions:__name(contextService=>sheetsUi.whenFormulaEditorActivated(contextService),"preconditions"),staticParameters:{eventType:engineRender.DeviceInputEventType.Keyboard,keycode,metaKey:META_KEY_CTRL_AND_SHIFT}});return shortcutList}__name(promptSelectionShortcutItemCtrlAndShift,"promptSelectionShortcutItemCtrlAndShift");const ChangeRefToAbsoluteShortcut={id:ReferenceAbsoluteOperation.id,binding:ui.KeyCode.F4,preconditions:__name(contextService=>sheetsUi.whenFormulaEditorActivated(contextService),"preconditions")};function singleEditorPromptSelectionShortcutItem(){const shortcutList=[];for(const keycode of[ui.KeyCode.ENTER,ui.KeyCode.TAB,ui.KeyCode.ARROW_DOWN,ui.KeyCode.ARROW_UP])shortcutList.push({id:SelectEditorFormulaOperation.id,binding:keycode,preconditions:__name(contextService=>whenEditorStandalone(contextService),"preconditions"),staticParameters:{eventType:engineRender.DeviceInputEventType.Keyboard,keycode,isSingleEditor:!0}});return shortcutList}__name(singleEditorPromptSelectionShortcutItem,"singleEditorPromptSelectionShortcutItem");function InsertFunctionMenuItemFactory(accessor){return{id:InsertFunctionOperation.id,icon:"FunctionSingle",tooltip:"formula.insert.tooltip",type:ui.MenuItemType.SELECTOR,selections:[{label:"SUM",value:"SUM",icon:"SumSingle"},{label:"AVERAGE",value:"AVERAGE",icon:"AvgSingle"},{label:"COUNT",value:"COUNT",icon:"CntSingle"},{label:"MAX",value:"MAX",icon:"MaxSingle"},{label:"MIN",value:"MIN",icon:"MinSingle"}],hidden$:ui.getMenuHiddenObservable(accessor,core.UniverInstanceType.UNIVER_SHEET),disabled$:sheetsUi.getCurrentRangeDisable$(accessor,{workbookTypes:[sheets.WorkbookEditablePermission],worksheetTypes:[sheets.WorksheetEditPermission,sheets.WorksheetSetCellValuePermission],rangeTypes:[sheets.RangeProtectionPermissionEditPoint]})}}__name(InsertFunctionMenuItemFactory,"InsertFunctionMenuItemFactory");function MoreFunctionsMenuItemFactory(accessor){return{id:MoreFunctionsOperation.id,title:"formula.insert.more",type:ui.MenuItemType.BUTTON}}__name(MoreFunctionsMenuItemFactory,"MoreFunctionsMenuItemFactory");function menuClipboardDisabledObservable(injector){return injector.get(core.IUniverInstanceService).getCurrentTypeOfUnit$(core.UniverInstanceType.UNIVER_SHEET).pipe(rxjs.switchMap(workbook=>workbook&&injector.get(ui.IClipboardInterfaceService)?new rxjs.Observable(subscriber=>subscriber.next(!injector.get(ui.IClipboardInterfaceService).supportClipboard)):rxjs.of(!0)))}__name(menuClipboardDisabledObservable,"menuClipboardDisabledObservable");function PasteFormulaMenuItemFactory(accessor){return{id:SheetOnlyPasteFormulaCommand.id,type:ui.MenuItemType.BUTTON,title:"formula.operation.pasteFormula",disabled$:menuClipboardDisabledObservable(accessor).pipe(rxjs.combineLatestWith(sheetsUi.getCurrentRangeDisable$(accessor,{workbookTypes:[sheets.WorkbookEditablePermission],rangeTypes:[sheets.RangeProtectionPermissionEditPoint],worksheetTypes:[sheets.WorksheetSetCellValuePermission,sheets.WorksheetEditPermission]})),rxjs.map(([d1,d2])=>d1||d2))}}__name(PasteFormulaMenuItemFactory,"PasteFormulaMenuItemFactory");const menuSchema={[ui.RibbonStartGroup.FORMULAS_INSERT]:{[InsertFunctionOperation.id]:{order:1,menuItemFactory:InsertFunctionMenuItemFactory,[MoreFunctionsOperation.id]:{order:1,menuItemFactory:MoreFunctionsMenuItemFactory}}},[sheetsUi.PASTE_SPECIAL_MENU_ID]:{[SheetOnlyPasteFormulaCommand.id]:{order:4,menuItemFactory:PasteFormulaMenuItemFactory}}};var __defProp$c=Object.defineProperty,__getOwnPropDesc$c=Object.getOwnPropertyDescriptor,__decorateClass$c=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$c(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$c(target,key,result),result},"__decorateClass$c"),__decorateParam$c=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$c"),_a8;let FormulaUIController=(_a8=class extends core.Disposable{constructor(_injector,_menuManagerService,_commandService,_shortcutService,_uiPartsService,_renderManagerService,_componentManager){super(),this._injector=_injector,this._menuManagerService=_menuManagerService,this._commandService=_commandService,this._shortcutService=_shortcutService,this._uiPartsService=_uiPartsService,this._renderManagerService=_renderManagerService,this._componentManager=_componentManager,this._initialize()}_initialize(){this._registerCommands(),this._registerMenus(),this._registerShortcuts(),this._registerComponents(),this._registerRenderModules()}_registerMenus(){this._menuManagerService.mergeMenu(menuSchema)}_registerCommands(){[InsertFunctionCommand,SheetOnlyPasteFormulaCommand,InsertFunctionOperation,MoreFunctionsOperation,SearchFunctionOperation,HelpFunctionOperation,SelectEditorFormulaOperation,ReferenceAbsoluteOperation,OtherFormulaMarkDirty].forEach(command=>this.disposeWithMe(this._commandService.registerCommand(command)))}_registerShortcuts(){[...promptSelectionShortcutItem(),...promptSelectionShortcutItemShift(),...promptSelectionShortcutItemCtrl(),...promptSelectionShortcutItemCtrlAndShift(),...singleEditorPromptSelectionShortcutItem(),ChangeRefToAbsoluteShortcut].forEach(item=>{this.disposeWithMe(this._shortcutService.registerShortcut(item))})}_registerComponents(){this.disposeWithMe(this._uiPartsService.registerComponent(ui.BuiltInUIPart.CONTENT,()=>core.connectInjector(RenderFormulaPromptContent,this._injector))),this._componentManager.register(MORE_FUNCTIONS_COMPONENT,MoreFunctions)}_registerRenderModules(){this.disposeWithMe(this._renderManagerService.registerRenderModule(core.UniverInstanceType.UNIVER_SHEET,[FormulaEditorShowController]))}},__name(_a8,"FormulaUIController"),_a8);FormulaUIController=__decorateClass$c([core.OnLifecycle(core.LifecycleStages.Ready,FormulaUIController),__decorateParam$c(0,core.Inject(core.Injector)),__decorateParam$c(1,ui.IMenuManagerService),__decorateParam$c(2,core.ICommandService),__decorateParam$c(3,ui.IShortcutService),__decorateParam$c(4,ui.IUIPartsService),__decorateParam$c(5,engineRender.IRenderManagerService),__decorateParam$c(6,core.Inject(ui.ComponentManager))],FormulaUIController);var __defProp$b=Object.defineProperty,__getOwnPropDesc$b=Object.getOwnPropertyDescriptor,__decorateClass$b=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$b(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$b(target,key,result),result},"__decorateClass$b"),__decorateParam$b=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$b"),_a9;let TriggerCalculationController=(_a9=class extends core.Disposable{constructor(_commandService,_activeDirtyManagerService,_numfmtService,_formulaDataModel,_progressService){super();__publicField(this,"_waitingCommandQueue",[]);__publicField(this,"_executingDirtyData",{forceCalculation:!1,dirtyRanges:[],dirtyNameMap:{},dirtyDefinedNameMap:{},dirtyUnitFeatureMap:{},dirtyUnitOtherFormulaMap:{}});__publicField(this,"_setTimeoutKey",-1);__publicField(this,"_startExecutionTime",0);__publicField(this,"_formulaCalculationDoneCount",0);__publicField(this,"_arrayFormulaCalculationDoneCount",0);__publicField(this,"_executionInProgressParams",null);__publicField(this,"_restartCalculation",!1);this._commandService=_commandService,this._activeDirtyManagerService=_activeDirtyManagerService,this._numfmtService=_numfmtService,this._formulaDataModel=_formulaDataModel,this._progressService=_progressService,this._initialize()}_initialize(){this._commandExecutedListener(),this._initialExecuteFormulaProcessListener(),this._initialExecuteFormula(),this._initialProgressBar()}_commandExecutedListener(){this.disposeWithMe(this._commandService.onCommandExecuted((command,options)=>{if(this._activeDirtyManagerService.get(command.id)){if(command.id===sheets.SetRangeValuesMutation.id){const params=command.params;if(options&&options.onlyLocal===!0||params.trigger===sheets.SetStyleCommand.id||params.trigger===sheets.SetBorderCommand.id||params.trigger===sheets.ClearSelectionFormatCommand.id)return}this._waitingCommandQueue.push(command),clearTimeout(this._setTimeoutKey),this._setTimeoutKey=setTimeout(()=>{const dirtyData=this._generateDirty(this._waitingCommandQueue);this._executingDirtyData=this._mergeDirty(this._executingDirtyData,dirtyData),this._executionInProgressParams==null?this._commandService.executeCommand(engineFormula.SetFormulaCalculationStartMutation.id,{...this._executingDirtyData},{onlyLocal:!0}):(this._restartCalculation=!0,this._commandService.executeCommand(engineFormula.SetFormulaCalculationStopMutation.id,{})),this._startExecutionTime=performance.now(),this._waitingCommandQueue=[]},100)}}))}_generateDirty(commands){const allDirtyRanges=[],allDirtyNameMap={},allDirtyDefinedNameMap={},allDirtyUnitFeatureMap={},allDirtyUnitOtherFormulaMap={};for(const command of commands){const conversion=this._activeDirtyManagerService.get(command.id);if(conversion==null)continue;const params=conversion.getDirtyData(command),{dirtyRanges,dirtyNameMap,dirtyDefinedNameMap,dirtyUnitFeatureMap,dirtyUnitOtherFormulaMap}=params;dirtyRanges!=null&&allDirtyRanges.push(...dirtyRanges),dirtyNameMap!=null&&this._mergeDirtyNameMap(allDirtyNameMap,dirtyNameMap),dirtyDefinedNameMap!=null&&this._mergeDirtyNameMap(allDirtyDefinedNameMap,dirtyDefinedNameMap),dirtyUnitFeatureMap!=null&&this._mergeDirtyUnitFeatureOrOtherFormulaMap(allDirtyUnitFeatureMap,dirtyUnitFeatureMap),dirtyUnitOtherFormulaMap!=null&&this._mergeDirtyUnitFeatureOrOtherFormulaMap(allDirtyUnitOtherFormulaMap,dirtyUnitOtherFormulaMap)}return{dirtyRanges:allDirtyRanges,dirtyNameMap:allDirtyNameMap,dirtyDefinedNameMap:allDirtyDefinedNameMap,dirtyUnitFeatureMap:allDirtyUnitFeatureMap,dirtyUnitOtherFormulaMap:allDirtyUnitOtherFormulaMap,forceCalculation:!1}}_mergeDirty(dirtyData1,dirtyData2){const allDirtyRanges=[...dirtyData1.dirtyRanges,...dirtyData2.dirtyRanges],allDirtyNameMap={...dirtyData1.dirtyNameMap},allDirtyDefinedNameMap={...dirtyData1.dirtyDefinedNameMap},allDirtyUnitFeatureMap={...dirtyData1.dirtyUnitFeatureMap},allDirtyUnitOtherFormulaMap={...dirtyData1.dirtyUnitOtherFormulaMap};return this._mergeDirtyNameMap(allDirtyNameMap,dirtyData2.dirtyNameMap),this._mergeDirtyNameMap(allDirtyDefinedNameMap,dirtyData2.dirtyDefinedNameMap),this._mergeDirtyUnitFeatureOrOtherFormulaMap(allDirtyUnitFeatureMap,dirtyData2.dirtyUnitFeatureMap),this._mergeDirtyUnitFeatureOrOtherFormulaMap(allDirtyUnitOtherFormulaMap,dirtyData2.dirtyUnitOtherFormulaMap),{dirtyRanges:allDirtyRanges,dirtyNameMap:allDirtyNameMap,dirtyDefinedNameMap:allDirtyDefinedNameMap,dirtyUnitFeatureMap:allDirtyUnitFeatureMap,dirtyUnitOtherFormulaMap:allDirtyUnitOtherFormulaMap,forceCalculation:!1}}_mergeDirtyNameMap(allDirtyNameMap,dirtyNameMap){Object.keys(dirtyNameMap).forEach(unitId=>{allDirtyNameMap[unitId]==null&&(allDirtyNameMap[unitId]={}),Object.keys(dirtyNameMap[unitId]).forEach(sheetId=>{var _a23;(_a23=dirtyNameMap[unitId])!=null&&_a23[sheetId]&&(allDirtyNameMap[unitId]==null&&(allDirtyNameMap[unitId]={}),allDirtyNameMap[unitId][sheetId]=dirtyNameMap[unitId][sheetId])})})}_mergeDirtyUnitFeatureOrOtherFormulaMap(allDirtyUnitFeatureOrOtherFormulaMap,dirtyUnitFeatureOrOtherFormulaMap){Object.keys(dirtyUnitFeatureOrOtherFormulaMap).forEach(unitId=>{allDirtyUnitFeatureOrOtherFormulaMap[unitId]==null&&(allDirtyUnitFeatureOrOtherFormulaMap[unitId]={}),Object.keys(dirtyUnitFeatureOrOtherFormulaMap[unitId]).forEach(sheetId=>{allDirtyUnitFeatureOrOtherFormulaMap[unitId][sheetId]==null&&(allDirtyUnitFeatureOrOtherFormulaMap[unitId][sheetId]={}),Object.keys(dirtyUnitFeatureOrOtherFormulaMap[unitId][sheetId]).forEach(featureIdOrFormulaId=>{allDirtyUnitFeatureOrOtherFormulaMap[unitId][sheetId][featureIdOrFormulaId]=dirtyUnitFeatureOrOtherFormulaMap[unitId][sheetId][featureIdOrFormulaId]||!1})})})}_initialExecuteFormulaProcessListener(){const debouncedFormulaPushTask=core.throttle(this._pushFormulaTask.bind(this),300),debouncedArrayFormulaPushTask=core.throttle(this._pushArrayFormulaTask.bind(this),300);let startDependencyTimer=null,calculationProcessCount=0,formulaCalculationCount=0,arrayFormulaCalculationCount=0,needStartFormulaProgress=!1,needStartArrayFormulaProgress=!1;this.disposeWithMe(this._commandService.onCommandExecuted(command=>{if(command.id!==engineFormula.SetFormulaCalculationNotificationMutation.id)return;const params=command.params;if(params.stageInfo!=null){const{totalFormulasToCalculate,completedFormulasCount,totalArrayFormulasToCalculate,completedArrayFormulasCount,stage}=params.stageInfo;stage===engineFormula.FormulaExecuteStageType.START_DEPENDENCY?(calculationProcessCount++,startDependencyTimer!==null&&(clearTimeout(startDependencyTimer),startDependencyTimer=null),startDependencyTimer=setTimeout(()=>{const taskCount=formulaCalculationCount-this._formulaCalculationDoneCount+(arrayFormulaCalculationCount-this._arrayFormulaCalculationDoneCount)+100;this._progressService.insertTaskCount(taskCount),this._progressService.pushTask({count:5}),startDependencyTimer=null},1e3)):stage===engineFormula.FormulaExecuteStageType.CURRENTLY_CALCULATING?(completedFormulasCount===1&&!needStartFormulaProgress&&(needStartFormulaProgress=!0,startDependencyTimer?formulaCalculationCount+=totalFormulasToCalculate:this._progressService.insertTaskCount(totalFormulasToCalculate)),startDependencyTimer?this._formulaCalculationDoneCount=completedFormulasCount:debouncedFormulaPushTask(completedFormulasCount)):stage===engineFormula.FormulaExecuteStageType.CURRENTLY_CALCULATING_ARRAY_FORMULA&&(completedArrayFormulasCount===1&&!needStartArrayFormulaProgress&&(needStartArrayFormulaProgress=!0,startDependencyTimer?arrayFormulaCalculationCount+=totalArrayFormulasToCalculate:this._progressService.insertTaskCount(totalArrayFormulasToCalculate)),startDependencyTimer?this._arrayFormulaCalculationDoneCount=completedArrayFormulasCount:debouncedArrayFormulaPushTask(completedArrayFormulasCount)),this._executionInProgressParams=params.stageInfo}else{const state=params.functionsExecutedState;let result="";switch(calculationProcessCount--,state){case engineFormula.FormulaExecutedStateType.NOT_EXECUTED:result="No tasks are being executed anymore",this._resetExecutingDirtyData();break;case engineFormula.FormulaExecutedStateType.STOP_EXECUTION:result="The execution of the formula has been stopped",this._progressService.stop(),calculationProcessCount=0;break;case engineFormula.FormulaExecutedStateType.SUCCESS:result=`Formula calculation succeeded, Total time consumed: ${performance.now()-this._startExecutionTime} ms`,this._resetExecutingDirtyData();break;case engineFormula.FormulaExecutedStateType.INITIAL:result="Waiting for calculation",this._resetExecutingDirtyData();break}calculationProcessCount===0&&(startDependencyTimer?(clearTimeout(startDependencyTimer),startDependencyTimer=null):state===engineFormula.FormulaExecutedStateType.SUCCESS&&this._progressService.complete(),this._formulaCalculationDoneCount=0,this._arrayFormulaCalculationDoneCount=0,needStartFormulaProgress=!1,needStartArrayFormulaProgress=!1),state===engineFormula.FormulaExecutedStateType.STOP_EXECUTION&&this._restartCalculation?(this._restartCalculation=!1,this._commandService.executeCommand(engineFormula.SetFormulaCalculationStartMutation.id,{...this._executingDirtyData},{onlyLocal:!0})):this._executionInProgressParams=null,console.warn(`execution result${result}`)}}))}_resetExecutingDirtyData(){this._executingDirtyData={dirtyRanges:[],dirtyNameMap:{},dirtyDefinedNameMap:{},dirtyUnitFeatureMap:{},dirtyUnitOtherFormulaMap:{},forceCalculation:!1}}_initialExecuteFormula(){this._commandService.executeCommand(engineFormula.SetFormulaCalculationStartMutation.id,{commands:[],forceCalculation:!0},{onlyLocal:!0})}_initialProgressBar(){this.disposeWithMe(this._progressService.progressVisible$.subscribe(isVisible=>{isVisible||this._commandService.executeCommand(engineFormula.SetFormulaCalculationStopMutation.id,{})}))}_pushFormulaTask(completedCount){if(this._progressService.getTaskCount()===0)return;const count=completedCount-this._formulaCalculationDoneCount;this._formulaCalculationDoneCount=completedCount,this._progressService.pushTask({count})}_pushArrayFormulaTask(completedCount){if(this._progressService.getTaskCount()===0)return;const count=completedCount-this._arrayFormulaCalculationDoneCount;this._arrayFormulaCalculationDoneCount=completedCount,this._progressService.pushTask({count})}},__name(_a9,"TriggerCalculationController"),_a9);TriggerCalculationController=__decorateClass$b([core.OnLifecycle(core.LifecycleStages.Ready,TriggerCalculationController),__decorateParam$b(0,core.ICommandService),__decorateParam$b(1,engineFormula.IActiveDirtyManagerService),__decorateParam$b(2,core.Inject(sheets.INumfmtService)),__decorateParam$b(3,core.Inject(engineFormula.FormulaDataModel)),__decorateParam$b(4,core.Inject(ui.IProgressService))],TriggerCalculationController);function checkFormulaDataNull(formulaData,unitId,sheetId){var _a23;return formulaData==null||formulaData[unitId]==null||((_a23=formulaData[unitId])==null?void 0:_a23[sheetId])==null}__name(checkFormulaDataNull,"checkFormulaDataNull");function removeFormulaData(formulaData,unitId,sheetId){var _a23;if(sheetId){if(formulaData&&formulaData[unitId]&&((_a23=formulaData[unitId])!=null&&_a23[sheetId]))return delete formulaData[unitId][sheetId],{[unitId]:{[sheetId]:null}}}else if(formulaData&&formulaData[unitId])return delete formulaData[unitId],{[unitId]:null}}__name(removeFormulaData,"removeFormulaData");function getFormulaReferenceMoveUndoRedo(oldFormulaData,newFormulaData,formulaReferenceMoveParam){const{type}=formulaReferenceMoveParam;return type===11||type===12?getFormulaReferenceSheet(oldFormulaData,newFormulaData):getFormulaReferenceRange(oldFormulaData,newFormulaData,formulaReferenceMoveParam)}__name(getFormulaReferenceMoveUndoRedo,"getFormulaReferenceMoveUndoRedo");function getFormulaReferenceSheet(oldFormulaData,newFormulaData){const undos=[],redos=[];return Object.keys(newFormulaData).forEach(unitId=>{const newSheetData=newFormulaData[unitId],oldSheetData=oldFormulaData[unitId];if(newSheetData==null||oldSheetData==null)return!0;Object.keys(newSheetData).forEach(subUnitId=>{const newSheetFormula=new core.ObjectMatrix(newSheetData[subUnitId]||{}),oldSheetFormula=new core.ObjectMatrix(oldSheetData[subUnitId]||{}),redoFormulaMatrix=new core.ObjectMatrix,undoFormulaMatrix=new core.ObjectMatrix;if(newSheetFormula.forValue((r,c,cell)=>{if(cell==null)return!0;const newValue=formulaDataItemToCellData(cell);newValue!==null&&(redoFormulaMatrix.setValue(r,c,newValue),undoFormulaMatrix.setValue(r,c,oldSheetFormula.getValue(r,c)))}),redoFormulaMatrix.getSizeOf()===0)return;const redoSetRangeValuesMutationParams={subUnitId,unitId,cellValue:redoFormulaMatrix.clone()},redoMutation={id:sheets.SetRangeValuesMutation.id,params:redoSetRangeValuesMutationParams};redos.push(redoMutation);const undoSetRangeValuesMutationParams={subUnitId,unitId,cellValue:undoFormulaMatrix.clone()},undoMutation={id:sheets.SetRangeValuesMutation.id,params:undoSetRangeValuesMutationParams};undos.push(undoMutation)})}),{undos,redos}}__name(getFormulaReferenceSheet,"getFormulaReferenceSheet");function getFormulaReferenceRange(oldFormulaData,newFormulaData,formulaReferenceMoveParam){const{sheetId:subUnitId,unitId}=formulaReferenceMoveParam,{redoFormulaData,undoFormulaData}=refRangeFormula(oldFormulaData,newFormulaData,formulaReferenceMoveParam),redos=[],undos=[];if(Object.keys(redoFormulaData).length!==0){const redoSetRangeValuesMutationParams={subUnitId,unitId,cellValue:redoFormulaData},redoMutation={id:sheets.SetRangeValuesMutation.id,params:redoSetRangeValuesMutationParams};redos.push(redoMutation)}if(Object.keys(undoFormulaData).length!==0){const undoSetRangeValuesMutationParams={subUnitId,unitId,cellValue:undoFormulaData},undoMutation={id:sheets.SetRangeValuesMutation.id,params:undoSetRangeValuesMutationParams};undos.push(undoMutation)}return{undos,redos}}__name(getFormulaReferenceRange,"getFormulaReferenceRange");function refRangeFormula(oldFormulaData,newFormulaData,formulaReferenceMoveParam){let redoFormulaData={},undoFormulaData={};const{type,unitId,sheetId,range,from,to}=formulaReferenceMoveParam;if(checkFormulaDataNull(oldFormulaData,unitId,sheetId))return{redoFormulaData,undoFormulaData};const currentOldFormulaData=oldFormulaData[unitId][sheetId],currentNewFormulaData=newFormulaData[unitId][sheetId],oldFormulaMatrix=new core.ObjectMatrix(currentOldFormulaData||{}),newFormulaMatrix=new core.ObjectMatrix(currentNewFormulaData||{}),rangeList=processFormulaChanges(oldFormulaMatrix,type,from,to,range);return redoFormulaData=getRedoFormulaData(rangeList,oldFormulaMatrix,newFormulaMatrix),undoFormulaData=getUndoFormulaData(rangeList,oldFormulaMatrix),{redoFormulaData,undoFormulaData}}__name(refRangeFormula,"refRangeFormula");function processFormulaChanges(oldFormulaMatrix,type,from,to,range){const rangeList=[];return oldFormulaMatrix.forValue((row,column,cell)=>{if(cell==null||!isFormulaDataItem(cell))return!0;const oldCell=core.cellToRange(row,column);let newCell=null,isReverse=!1;if([0,1,2].includes(type))newCell=handleMove(type,from,to,oldCell);else if(range!=null){const result=handleInsertDelete(type,range,oldCell);newCell=result.newCell,isReverse=result.isReverse}isReverse?rangeList.unshift({oldCell,newCell}):rangeList.push({oldCell,newCell})}),rangeList}__name(processFormulaChanges,"processFormulaChanges");function handleMove(type,from,to,oldCell){if(from==null||to==null)return null;switch(type){case 0:return handleRefMoveRange(from,to,oldCell);case 1:return handleRefMoveRows(from,to,oldCell);case 2:return handleRefMoveCols(from,to,oldCell);default:return null}}__name(handleMove,"handleMove");function handleInsertDelete(type,range,oldCell){let newCell=null,isReverse=!1;switch(type){case 3:newCell=handleRefInsertRow(range,oldCell),isReverse=!0;break;case 4:newCell=handleRefInsertCol(range,oldCell),isReverse=!0;break;case 5:newCell=handleRefRemoveRow(range,oldCell);break;case 6:newCell=handleRefRemoveCol(range,oldCell);break;case 7:newCell=handleRefDeleteMoveLeft(range,oldCell);break;case 8:newCell=handleRefDeleteMoveUp(range,oldCell);break;case 9:newCell=handleRefInsertMoveDown(range,oldCell),isReverse=!0;break;case 10:newCell=handleRefInsertMoveRight(range,oldCell),isReverse=!0;break}return{newCell,isReverse}}__name(handleInsertDelete,"handleInsertDelete");function handleRefMoveRange(from,to,oldCell){const operators=sheets.handleMoveRange({id:sheets.EffectRefRangId.MoveRangeCommandId,params:{toRange:to,fromRange:from}},oldCell);return sheets.runRefRangeMutations(operators,oldCell)}__name(handleRefMoveRange,"handleRefMoveRange");function handleRefMoveRows(from,to,oldCell){const operators=sheets.handleMoveRows({id:sheets.EffectRefRangId.MoveRowsCommandId,params:{toRange:to,fromRange:from}},oldCell);return sheets.runRefRangeMutations(operators,oldCell)}__name(handleRefMoveRows,"handleRefMoveRows");function handleRefMoveCols(from,to,oldCell){const operators=sheets.handleMoveCols({id:sheets.EffectRefRangId.MoveColsCommandId,params:{toRange:to,fromRange:from}},oldCell);return sheets.runRefRangeMutations(operators,oldCell)}__name(handleRefMoveCols,"handleRefMoveCols");function handleRefInsertRow(range,oldCell){const operators=sheets.handleInsertRow({id:sheets.EffectRefRangId.InsertRowCommandId,params:{range,unitId:"",subUnitId:"",direction:core.Direction.DOWN}},oldCell);return sheets.runRefRangeMutations(operators,oldCell)}__name(handleRefInsertRow,"handleRefInsertRow");function handleRefInsertCol(range,oldCell){const operators=sheets.handleInsertCol({id:sheets.EffectRefRangId.InsertColCommandId,params:{range,unitId:"",subUnitId:"",direction:core.Direction.RIGHT}},oldCell);return sheets.runRefRangeMutations(operators,oldCell)}__name(handleRefInsertCol,"handleRefInsertCol");function handleRefRemoveRow(range,oldCell){const operators=sheets.handleIRemoveRow({id:sheets.EffectRefRangId.RemoveRowCommandId,params:{range}},oldCell);return sheets.runRefRangeMutations(operators,oldCell)}__name(handleRefRemoveRow,"handleRefRemoveRow");function handleRefRemoveCol(range,oldCell){const operators=sheets.handleIRemoveCol({id:sheets.EffectRefRangId.RemoveColCommandId,params:{range}},oldCell);return sheets.runRefRangeMutations(operators,oldCell)}__name(handleRefRemoveCol,"handleRefRemoveCol");function handleRefDeleteMoveLeft(range,oldCell){const operators=sheets.handleDeleteRangeMoveLeft({id:sheets.EffectRefRangId.DeleteRangeMoveLeftCommandId,params:{range}},oldCell);return sheets.runRefRangeMutations(operators,oldCell)}__name(handleRefDeleteMoveLeft,"handleRefDeleteMoveLeft");function handleRefDeleteMoveUp(range,oldCell){const operators=sheets.handleDeleteRangeMoveUp({id:sheets.EffectRefRangId.DeleteRangeMoveUpCommandId,params:{range}},oldCell);return sheets.runRefRangeMutations(operators,oldCell)}__name(handleRefDeleteMoveUp,"handleRefDeleteMoveUp");function handleRefInsertMoveDown(range,oldCell){const operators=sheets.handleInsertRangeMoveDown({id:sheets.EffectRefRangId.InsertRangeMoveDownCommandId,params:{range}},oldCell);return sheets.runRefRangeMutations(operators,oldCell)}__name(handleRefInsertMoveDown,"handleRefInsertMoveDown");function handleRefInsertMoveRight(range,oldCell){const operators=sheets.handleInsertRangeMoveRight({id:sheets.EffectRefRangId.InsertRangeMoveRightCommandId,params:{range}},oldCell);return sheets.runRefRangeMutations(operators,oldCell)}__name(handleRefInsertMoveRight,"handleRefInsertMoveRight");function getRedoFormulaData(rangeList,oldFormulaMatrix,newFormulaMatrix){const redoFormulaData=new core.ObjectMatrix({});return rangeList.forEach(item=>{const{oldCell,newCell}=item,{startRow:oldStartRow,startColumn:oldStartColumn}=oldCell,newFormula=newFormulaMatrix.getValue(oldStartRow,oldStartColumn)||oldFormulaMatrix.getValue(oldStartRow,oldStartColumn),newValue=formulaDataItemToCellData(newFormula);if(redoFormulaData.setValue(oldStartRow,oldStartColumn,{f:null,si:null}),newCell){const{startRow:newStartRow,startColumn:newStartColumn}=newCell;redoFormulaData.setValue(newStartRow,newStartColumn,newValue)}}),redoFormulaData.clone()}__name(getRedoFormulaData,"getRedoFormulaData");function getUndoFormulaData(rangeList,oldFormulaMatrix){const undoFormulaData=new core.ObjectMatrix({});return rangeList.reverse().forEach(item=>{const{oldCell,newCell}=item,{startRow:oldStartRow,startColumn:oldStartColumn}=oldCell,oldFormula=oldFormulaMatrix.getValue(oldStartRow,oldStartColumn),oldValue=formulaDataItemToCellData(oldFormula);if(newCell){const{startRow:newStartRow,startColumn:newStartColumn}=newCell;undoFormulaData.setValue(newStartRow,newStartColumn,{f:null,si:null})}undoFormulaData.setValue(oldStartRow,oldStartColumn,oldValue)}),undoFormulaData.clone()}__name(getUndoFormulaData,"getUndoFormulaData");function formulaDataItemToCellData(formulaDataItem){if(formulaDataItem==null)return;const{f:f2,si,x=0,y=0}=formulaDataItem,checkFormulaString=core.isFormulaString(f2),checkFormulaId=core.isFormulaId(si);if(!checkFormulaString&&!checkFormulaId)return{f:null,si:null};const cellData={};return checkFormulaId&&(cellData.si=si),checkFormulaString&&x===0&&y===0&&(cellData.f=f2),cellData.f===void 0&&(cellData.f=null),cellData.si===void 0&&(cellData.si=null),cellData}__name(formulaDataItemToCellData,"formulaDataItemToCellData");function formulaDataToCellData(formulaData){const cellData=new core.ObjectMatrix({});return new core.ObjectMatrix(formulaData).forValue((r,c,formulaDataItem)=>{const cellDataItem=formulaDataItemToCellData(formulaDataItem);cellData.setValue(r,c,cellDataItem)}),cellData.clone()}__name(formulaDataToCellData,"formulaDataToCellData");function isFormulaDataItem(cell){const formulaString=(cell==null?void 0:cell.f)||"",formulaId=(cell==null?void 0:cell.si)||"",checkFormulaString=core.isFormulaString(formulaString),checkFormulaId=core.isFormulaId(formulaId);return!!(checkFormulaString||checkFormulaId)}__name(isFormulaDataItem,"isFormulaDataItem");var __defProp$a=Object.defineProperty,__getOwnPropDesc$a=Object.getOwnPropertyDescriptor,__decorateClass$a=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$a(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$a(target,key,result),result},"__decorateClass$a"),__decorateParam$a=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$a"),_a10;let UpdateFormulaController=(_a10=class extends core.Disposable{constructor(_univerInstanceService,_commandService,_lexerTreeBuilder,_formulaDataModel,_sheetInterceptorService,_selectionManagerService,_editorService,_injector){super(),this._univerInstanceService=_univerInstanceService,this._commandService=_commandService,this._lexerTreeBuilder=_lexerTreeBuilder,this._formulaDataModel=_formulaDataModel,this._sheetInterceptorService=_sheetInterceptorService,this._selectionManagerService=_selectionManagerService,this._editorService=_editorService,this._injector=_injector,this._initialize()}_initialize(){this._commandExecutedListener()}_commandExecutedListener(){this.disposeWithMe(this._sheetInterceptorService.interceptCommand({getMutations:__name(command=>this._getUpdateFormula(command),"getMutations")})),this.disposeWithMe(this._commandService.onCommandExecuted((command,options)=>{if(command.params)if(command.id===sheets.SetRangeValuesMutation.id){const params=command.params;if(options&&options.onlyLocal===!0||params.trigger===sheets.SetStyleCommand.id||params.trigger===sheets.SetBorderCommand.id||params.trigger===sheets.ClearSelectionFormatCommand.id)return;this._handleSetRangeValuesMutation(params)}else if(command.id===sheets.RemoveSheetMutation.id){const{subUnitId:sheetId,unitId}=command.params;this._handleRemoveSheetMutation(unitId,sheetId)}else command.id===sheets.InsertSheetMutation.id&&this._handleInsertSheetMutation(command.params)})),this.disposeWithMe(core.toDisposable(rxjs.merge(this._univerInstanceService.getTypeOfUnitAdded$(core.UniverInstanceType.UNIVER_SHEET),this._univerInstanceService.getTypeOfUnitAdded$(core.UniverInstanceType.UNIVER_DOC),this._univerInstanceService.getTypeOfUnitAdded$(core.UniverInstanceType.UNIVER_SLIDE)).pipe(rxjs.filter(unit=>this._editorService.getEditor(unit.getUnitId())==null),rxjs.filter(unit=>!core.isInternalEditorID(unit.getUnitId()))).subscribe(unit=>this._handleUnitAdded(unit)))),this.disposeWithMe(core.toDisposable(rxjs.merge(this._univerInstanceService.getTypeOfUnitDisposed$(core.UniverInstanceType.UNIVER_SHEET).pipe(rxjs.map(sheet=>sheet.getUnitId())),this._univerInstanceService.getTypeOfUnitDisposed$(core.UniverInstanceType.UNIVER_DOC).pipe(rxjs.map(doc=>doc.getUnitId())),this._univerInstanceService.getTypeOfUnitDisposed$(core.UniverInstanceType.UNIVER_SLIDE).pipe(rxjs.map(slide=>slide.getUnitId()))).pipe(rxjs.filter(unitId=>this._editorService.getEditor(unitId)==null)).subscribe(id=>this._handleRemoveSheetMutation(id))))}_handleSetRangeValuesMutation(params){const{subUnitId:sheetId,unitId,cellValue}=params;if(cellValue==null)return;const newSheetFormulaData=this._formulaDataModel.updateFormulaData(unitId,sheetId,cellValue),newFormulaData={[unitId]:{[sheetId]:newSheetFormulaData}};this._commandService.executeCommand(sheets.SetRangeValuesMutation.id,{unitId,subUnitId:sheetId,cellValue:formulaDataToCellData(newSheetFormulaData)},{onlyLocal:!0,fromFormula:!0}),this._formulaDataModel.updateArrayFormulaCellData(unitId,sheetId,cellValue),this._formulaDataModel.updateArrayFormulaRange(unitId,sheetId,cellValue),this._commandService.executeCommand(engineFormula.SetFormulaDataMutation.id,{formulaData:newFormulaData},{onlyLocal:!0}),this._commandService.executeCommand(engineFormula.SetArrayFormulaDataMutation.id,{arrayFormulaRange:this._formulaDataModel.getArrayFormulaRange(),arrayFormulaCellData:this._formulaDataModel.getArrayFormulaCellData()},{onlyLocal:!0,remove:!0})}_handleRemoveSheetMutation(unitId,sheetId){const formulaData=this._formulaDataModel.getFormulaData(),newFormulaData=removeFormulaData(formulaData,unitId,sheetId),arrayFormulaRange=this._formulaDataModel.getArrayFormulaRange(),newArrayFormulaRange=removeFormulaData(arrayFormulaRange,unitId,sheetId),arrayFormulaCellData=this._formulaDataModel.getArrayFormulaCellData(),newArrayFormulaCellData=removeFormulaData(arrayFormulaCellData,unitId,sheetId);newFormulaData&&this._commandService.executeCommand(engineFormula.SetFormulaDataMutation.id,{formulaData:newFormulaData},{onlyLocal:!0}),newArrayFormulaRange&&newArrayFormulaCellData&&this._commandService.executeCommand(engineFormula.SetArrayFormulaDataMutation.id,{arrayFormulaRange,arrayFormulaCellData},{onlyLocal:!0})}_handleInsertSheetMutation(params){const{sheet,unitId}=params,formulaData=this._formulaDataModel.getFormulaData(),{id:sheetId,cellData}=sheet,cellMatrix=new core.ObjectMatrix(cellData),newFormulaData=engineFormula.initSheetFormulaData(formulaData,unitId,sheetId,cellMatrix);this._commandService.executeCommand(engineFormula.SetFormulaDataMutation.id,{formulaData:newFormulaData},{onlyLocal:!0})}_handleUnitAdded(unit){const formulaData=this._formulaDataModel.getFormulaData(),unitId=unit.getUnitId(),unitType=unit.type,newFormulaData={[unitId]:{}};unitType===core.UniverInstanceType.UNIVER_SHEET?unit.getSheets().forEach(worksheet=>{var _a23;const cellMatrix=worksheet.getCellMatrix(),sheetId=worksheet.getSheetId(),currentSheetData=engineFormula.initSheetFormulaData(formulaData,unitId,sheetId,cellMatrix);newFormulaData[unitId][sheetId]=(_a23=currentSheetData[unitId])==null?void 0:_a23[sheetId]}):unitType===core.UniverInstanceType.UNIVER_DOC||core.UniverInstanceType.UNIVER_SLIDE,this._commandService.executeCommand(engineFormula.SetFormulaDataMutation.id,{formulaData:newFormulaData},{onlyLocal:!0}),this._commandService.executeCommand(engineFormula.SetFormulaCalculationStartMutation.id,{commands:[],forceCalculation:!0},{onlyLocal:!0})}_getUpdateFormula(command){const{id}=command;let result=null;switch(id){case sheets.MoveRangeCommand.id:result=this._handleMoveRange(command);break;case sheets.MoveRowsCommand.id:result=this._handleMoveRows(command);break;case sheets.MoveColsCommand.id:result=this._handleMoveCols(command);break;case sheets.InsertRowCommand.id:result=this._handleInsertRow(command);break;case sheets.InsertColCommand.id:result=this._handleInsertCol(command);break;case sheets.InsertRangeMoveRightCommand.id:result=this._handleInsertRangeMoveRight(command);break;case sheets.InsertRangeMoveDownCommand.id:result=this._handleInsertRangeMoveDown(command);break;case sheets.RemoveRowCommand.id:result=this._handleRemoveRow(command);break;case sheets.RemoveColCommand.id:result=this._handleRemoveCol(command);break;case sheets.DeleteRangeMoveUpCommand.id:result=this._handleDeleteRangeMoveUp(command);break;case sheets.DeleteRangeMoveLeftCommand.id:result=this._handleDeleteRangeMoveLeft(command);break;case sheets.SetWorksheetNameCommand.id:result=this._handleSetWorksheetName(command);break;case sheets.RemoveSheetCommand.id:result=this._handleRemoveWorksheet(command);break}if(result){const{unitSheetNameMap}=this._formulaDataModel.getCalculateData(),oldFormulaData=this._formulaDataModel.getFormulaData(),{newFormulaData}=this._getFormulaReferenceMoveInfo(oldFormulaData,unitSheetNameMap,result),{undos,redos}=getFormulaReferenceMoveUndoRedo(oldFormulaData,newFormulaData,result);return{undos,redos}}return{undos:[],redos:[]}}_handleMoveRange(command){const{params}=command;if(!params)return null;const{fromRange,toRange}=params;if(!fromRange||!toRange)return null;const{unitId,sheetId}=this._getCurrentSheetInfo();return{type:0,from:fromRange,to:toRange,unitId,sheetId}}_handleMoveRows(command){const{params}=command;if(!params)return null;const{fromRange:{startRow:fromStartRow,endRow:fromEndRow},toRange:{startRow:toStartRow,endRow:toEndRow}}=params,workbook=this._univerInstanceService.getCurrentUnitForType(core.UniverInstanceType.UNIVER_SHEET),unitId=workbook.getUnitId(),worksheet=workbook.getActiveSheet();if(!worksheet)return null;const sheetId=worksheet.getSheetId(),from={startRow:fromStartRow,startColumn:0,endRow:fromEndRow,endColumn:worksheet.getColumnCount()-1,rangeType:core.RANGE_TYPE.ROW},to={startRow:toStartRow,startColumn:0,endRow:toEndRow,endColumn:worksheet.getColumnCount()-1,rangeType:core.RANGE_TYPE.ROW};return{type:1,from,to,unitId,sheetId}}_handleMoveCols(command){const{params}=command;if(!params)return null;const{fromRange:{startColumn:fromStartCol,endColumn:fromEndCol},toRange:{startColumn:toStartCol,endColumn:toEndCol}}=params,workbook=this._univerInstanceService.getCurrentUnitForType(core.UniverInstanceType.UNIVER_SHEET),unitId=workbook.getUnitId(),worksheet=workbook.getActiveSheet();if(!worksheet)return null;const sheetId=worksheet.getSheetId(),from={startRow:0,startColumn:fromStartCol,endRow:worksheet.getRowCount()-1,endColumn:fromEndCol,rangeType:core.RANGE_TYPE.COLUMN},to={startRow:0,startColumn:toStartCol,endRow:worksheet.getRowCount()-1,endColumn:toEndCol,rangeType:core.RANGE_TYPE.COLUMN};return{type:2,from,to,unitId,sheetId}}_handleInsertRow(command){const{params}=command;if(!params)return null;const{range,unitId,subUnitId}=params;return{type:3,range,unitId,sheetId:subUnitId}}_handleInsertCol(command){const{params}=command;if(!params)return null;const{range,unitId,subUnitId}=params;return{type:4,range,unitId,sheetId:subUnitId}}_handleInsertRangeMoveRight(command){const{params}=command;if(!params)return null;const{range}=params,{unitId,sheetId}=this._getCurrentSheetInfo();return{type:10,range,unitId,sheetId}}_handleInsertRangeMoveDown(command){const{params}=command;if(!params)return null;const{range}=params,{unitId,sheetId}=this._getCurrentSheetInfo();return{type:9,range,unitId,sheetId}}_handleRemoveRow(command){const{params}=command;if(!params)return null;const{range}=params,{unitId,sheetId}=this._getCurrentSheetInfo();return{type:5,range,unitId,sheetId}}_handleRemoveCol(command){const{params}=command;if(!params)return null;const{range}=params,{unitId,sheetId}=this._getCurrentSheetInfo();return{type:6,range,unitId,sheetId}}_handleDeleteRangeMoveUp(command){const{params}=command;if(!params)return null;const{range}=params,{unitId,sheetId}=this._getCurrentSheetInfo();return{type:8,range,unitId,sheetId}}_handleDeleteRangeMoveLeft(command){const{params}=command;if(!params)return null;const{range}=params,{unitId,sheetId}=this._getCurrentSheetInfo();return{type:7,range,unitId,sheetId}}_handleSetWorksheetName(command){const{params}=command;if(!params)return null;const{unitId,subUnitId,name}=params,{unitId:workbookId,sheetId}=this._getCurrentSheetInfo();return{type:11,unitId:unitId||workbookId,sheetId:subUnitId||sheetId,sheetName:name}}_handleRemoveWorksheet(command){const{params}=command;if(!params)return null;const{unitId,subUnitId}=params,{unitId:workbookId,sheetId}=this._getCurrentSheetInfo();return{type:12,unitId:unitId||workbookId,sheetId:subUnitId||sheetId}}_getFormulaReferenceMoveInfo(formulaData,unitSheetNameMap,formulaReferenceMoveParam){if(!core.Tools.isDefine(formulaData))return{newFormulaData:{},oldFormulaData:{}};const formulaDataKeys=Object.keys(formulaData);if(formulaDataKeys.length===0)return{newFormulaData:{},oldFormulaData:{}};const oldFormulaData={},newFormulaData={};for(const unitId of formulaDataKeys){const sheetData=formulaData[unitId];if(sheetData==null)continue;const sheetDataKeys=Object.keys(sheetData);core.Tools.isDefine(oldFormulaData[unitId])||(oldFormulaData[unitId]={}),core.Tools.isDefine(newFormulaData[unitId])||(newFormulaData[unitId]={});for(const sheetId of sheetDataKeys){const matrixData=new core.ObjectMatrix(sheetData[sheetId]||{}),newFormulaDataItem=new core.ObjectMatrix;matrixData.forValue((row,column,formulaDataItem)=>{var _a23;if(!formulaDataItem)return!0;const{f:formulaString,x,y,si}=formulaDataItem,sequenceNodes=this._lexerTreeBuilder.sequenceNodesBuilder(formulaString);if(sequenceNodes==null)return!0;let shouldModify=!1;const refChangeIds=[];for(let i=0,len=sequenceNodes.length;i<len;i++){const node=sequenceNodes[i];if(typeof node=="string"||node.nodeType!==engineFormula.sequenceNodeType.REFERENCE)continue;const{token}=node,sequenceGrid=engineFormula.deserializeRangeWithSheet(token),{range,sheetName,unitId:sequenceUnitId}=sequenceGrid,mapUnitId=sequenceUnitId==null||sequenceUnitId.length===0?unitId:sequenceUnitId,sequenceSheetId=(_a23=unitSheetNameMap==null?void 0:unitSheetNameMap[mapUnitId])==null?void 0:_a23[sheetName];if(!this._checkIsSameUnitAndSheet(formulaReferenceMoveParam.unitId,formulaReferenceMoveParam.sheetId,unitId,sheetId,sequenceUnitId,sequenceSheetId||""))continue;const sequenceUnitRangeWidthOffset={range,sheetId:sequenceSheetId,unitId:sequenceUnitId,sheetName,refOffsetX:x||0,refOffsetY:y||0};let newRefString=null;if(formulaReferenceMoveParam.type===11){const{unitId:userUnitId,sheetId:userSheetId,sheetName:newSheetName}=formulaReferenceMoveParam;if(newSheetName==null||sequenceSheetId==null||sequenceSheetId.length===0||userSheetId!==sequenceSheetId)continue;newRefString=engineFormula.serializeRangeToRefString({range,sheetName:newSheetName,unitId:sequenceUnitId})}else if(formulaReferenceMoveParam.type===12){const{unitId:userUnitId,sheetId:userSheetId,sheetName:newSheetName}=formulaReferenceMoveParam;if(sequenceSheetId==null||sequenceSheetId.length===0||userSheetId!==sequenceSheetId)continue;newRefString=engineFormula.ErrorType.REF}else newRefString=this._getNewRangeByMoveParam(sequenceUnitRangeWidthOffset,formulaReferenceMoveParam,unitId,sheetId);newRefString!=null&&(sequenceNodes[i]={...node,token:newRefString},shouldModify=!0,refChangeIds.push(i))}if(!shouldModify)return!0;const newSequenceNodes=this._updateRefOffset(sequenceNodes,refChangeIds,x,y);newFormulaDataItem.setValue(row,column,{f:`=${engineFormula.generateStringWithSequence(newSequenceNodes)}`})}),newFormulaData[unitId]&&(newFormulaData[unitId][sheetId]=newFormulaDataItem.getData())}}return{newFormulaData}}_getNewRangeByMoveParam(unitRangeWidthOffset,formulaReferenceMoveParam,currentFormulaUnitId,currentFormulaSheetId){const{type,unitId:userUnitId,sheetId:userSheetId,range,from,to}=formulaReferenceMoveParam,{range:unitRange,sheetId:sequenceRangeSheetId,unitId:sequenceRangeUnitId,sheetName:sequenceRangeSheetName,refOffsetX,refOffsetY}=unitRangeWidthOffset;if(!this._checkIsSameUnitAndSheet(userUnitId,userSheetId,currentFormulaUnitId,currentFormulaSheetId,sequenceRangeUnitId,sequenceRangeSheetId))return;const sequenceRange=core.Rectangle.moveOffset(unitRange,refOffsetX,refOffsetY);let newRange=null;if(type===0){if(from==null||to==null)return;const moveEdge=this._checkMoveEdge(sequenceRange,from),remainRange=core.Rectangle.getIntersects(sequenceRange,from);if(remainRange==null||moveEdge!==4)return;const operators=sheets.handleMoveRange({id:sheets.EffectRefRangId.MoveRangeCommandId,params:{toRange:to,fromRange:from}},remainRange),result=sheets.runRefRangeMutations(operators,remainRange);if(result==null)return engineFormula.ErrorType.REF;newRange=this._getMoveNewRange(moveEdge,result,from,to,sequenceRange,remainRange)}else if(type===1){if(from==null||to==null)return;const moveEdge=this._checkMoveEdge(sequenceRange,from);let remainRange=core.Rectangle.getIntersects(sequenceRange,from);if(remainRange==null&&(from.endRow<sequenceRange.startRow&&to.endRow<sequenceRange.startRow||from.startRow>sequenceRange.endRow&&to.startRow>sequenceRange.endRow))return;remainRange==null&&(remainRange={startRow:sequenceRange.startRow,endRow:sequenceRange.endRow,startColumn:sequenceRange.startColumn,endColumn:sequenceRange.endColumn,rangeType:core.RANGE_TYPE.NORMAL});const operators=sheets.handleMoveRows({id:sheets.EffectRefRangId.MoveRowsCommandId,params:{toRange:to,fromRange:from}},remainRange),result=sheets.runRefRangeMutations(operators,remainRange);if(result==null)return engineFormula.ErrorType.REF;newRange=this._getMoveNewRange(moveEdge,result,from,to,sequenceRange,remainRange)}else if(type===2){if(from==null||to==null)return;const moveEdge=this._checkMoveEdge(sequenceRange,from);let remainRange=core.Rectangle.getIntersects(sequenceRange,from);if(remainRange==null&&(from.endColumn<sequenceRange.startColumn&&to.endColumn<sequenceRange.startColumn||from.startColumn>sequenceRange.endColumn&&to.startColumn>sequenceRange.endColumn))return;remainRange==null&&(remainRange={startRow:sequenceRange.startRow,endRow:sequenceRange.endRow,startColumn:sequenceRange.startColumn,endColumn:sequenceRange.endColumn,rangeType:core.RANGE_TYPE.NORMAL});const operators=sheets.handleMoveCols({id:sheets.EffectRefRangId.MoveColsCommandId,params:{toRange:to,fromRange:from}},remainRange),result=sheets.runRefRangeMutations(operators,remainRange);if(result==null)return engineFormula.ErrorType.REF;newRange=this._getMoveNewRange(moveEdge,result,from,to,sequenceRange,remainRange)}if(range!=null){if(type===3){const operators=sheets.handleInsertRow({id:sheets.EffectRefRangId.InsertRowCommandId,params:{range,unitId:"",subUnitId:"",direction:core.Direction.DOWN}},sequenceRange),result=sheets.runRefRangeMutations(operators,sequenceRange);if(result==null)return;newRange={...sequenceRange,...result}}else if(type===4){const operators=sheets.handleInsertCol({id:sheets.EffectRefRangId.InsertColCommandId,params:{range,unitId:"",subUnitId:"",direction:core.Direction.RIGHT}},sequenceRange),result=sheets.runRefRangeMutations(operators,sequenceRange);if(result==null)return;newRange={...sequenceRange,...result}}else if(type===5){const operators=sheets.handleIRemoveRow({id:sheets.EffectRefRangId.RemoveRowCommandId,params:{range}},sequenceRange),result=sheets.runRefRangeMutations(operators,sequenceRange);if(result==null)return engineFormula.ErrorType.REF;newRange={...sequenceRange,...result}}else if(type===6){const operators=sheets.handleIRemoveCol({id:sheets.EffectRefRangId.RemoveColCommandId,params:{range}},sequenceRange),result=sheets.runRefRangeMutations(operators,sequenceRange);if(result==null)return engineFormula.ErrorType.REF;newRange={...sequenceRange,...result}}else if(type===7){const operators=sheets.handleDeleteRangeMoveLeft({id:sheets.EffectRefRangId.DeleteRangeMoveLeftCommandId,params:{range}},sequenceRange),result=sheets.runRefRangeMutations(operators,sequenceRange);if(result==null)return engineFormula.ErrorType.REF;newRange={...sequenceRange,...result}}else if(type===8){const operators=sheets.handleDeleteRangeMoveUp({id:sheets.EffectRefRangId.DeleteRangeMoveUpCommandId,params:{range}},sequenceRange),result=sheets.runRefRangeMutations(operators,sequenceRange);if(result==null)return engineFormula.ErrorType.REF;newRange={...sequenceRange,...result}}else if(type===9){const operators=sheets.handleInsertRangeMoveDown({id:sheets.EffectRefRangId.InsertRangeMoveDownCommandId,params:{range}},sequenceRange),result=sheets.runRefRangeMutations(operators,sequenceRange);if(result==null)return;newRange={...sequenceRange,...result}}else if(type===10){const operators=sheets.handleInsertRangeMoveRight({id:sheets.EffectRefRangId.InsertRangeMoveRightCommandId,params:{range}},sequenceRange),result=sheets.runRefRangeMutations(operators,sequenceRange);if(result==null)return;newRange={...sequenceRange,...result}}}if(newRange!=null)return engineFormula.serializeRangeToRefString({range:newRange,sheetName:sequenceRangeSheetName,unitId:sequenceRangeUnitId})}_checkIsSameUnitAndSheet(userUnitId,userSheetId,currentFormulaUnitId,currentFormulaSheetId,sequenceRangeUnitId,sequenceRangeSheetId){if((sequenceRangeUnitId==null||sequenceRangeUnitId.length===0)&&(sequenceRangeSheetId==null||sequenceRangeSheetId.length===0)){if(userUnitId===currentFormulaUnitId&&userSheetId===currentFormulaSheetId)return!0}else if((userUnitId===sequenceRangeUnitId||sequenceRangeUnitId==null||sequenceRangeUnitId.length===0)&&userSheetId===sequenceRangeSheetId)return!0;return!1}_updateRefOffset(sequenceNodes,refChangeIds,refOffsetX=0,refOffsetY=0){const newSequenceNodes=[];for(let i=0,len=sequenceNodes.length;i<len;i++){const node=sequenceNodes[i];if(typeof node=="string"||node.nodeType!==engineFormula.sequenceNodeType.REFERENCE||refChangeIds.includes(i)){newSequenceNodes.push(node);continue}const{token}=node,sequenceGrid=engineFormula.deserializeRangeWithSheet(token),{range,sheetName,unitId:sequenceUnitId}=sequenceGrid,newRange=core.Rectangle.moveOffset(range,refOffsetX,refOffsetY);newSequenceNodes.push({...node,token:engineFormula.serializeRangeToRefString({range:newRange,unitId:sequenceUnitId,sheetName})})}return newSequenceNodes}_checkMoveEdge(originRange,fromRange){const{startRow,startColumn,endRow,endColumn}=originRange,{startRow:fromStartRow,startColumn:fromStartColumn,endRow:fromEndRow,endColumn:fromEndColumn}=fromRange;if(startRow>=fromStartRow&&endRow<=fromEndRow&&startColumn>=fromStartColumn&&endColumn<=fromEndColumn)return 4;if(startColumn>=fromStartColumn&&endColumn<=fromEndColumn&&startRow>=fromStartRow&&startRow<=fromEndRow&&endRow>fromEndRow)return 0;if(startColumn>=fromStartColumn&&endColumn<=fromEndColumn&&endRow>=fromStartRow&&endRow<=fromEndRow&&startRow<fromStartRow)return 1;if(startRow>=fromStartRow&&endRow<=fromEndRow&&startColumn>=fromStartColumn&&startColumn<=fromEndColumn&&endColumn>fromEndColumn)return 2;if(startRow>=fromStartRow&&endRow<=fromEndRow&&endColumn>=fromStartColumn&&endColumn<=fromEndColumn&&startColumn<fromStartColumn)return 3}_getMoveNewRange(moveEdge,result,from,to,origin,remain){const{startRow,endRow,startColumn,endColumn}=result,{startRow:fromStartRow,startColumn:fromStartColumn,endRow:fromEndRow,endColumn:fromEndColumn,rangeType:fromRangeType=core.RANGE_TYPE.NORMAL}=from,{startRow:toStartRow,startColumn:toStartColumn,endRow:toEndRow,endColumn:toEndColumn}=to,{startRow:remainStartRow,endRow:remainEndRow,startColumn:remainStartColumn,endColumn:remainEndColumn}=remain,{startRow:originStartRow,endRow:originEndRow,startColumn:originStartColumn,endColumn:originEndColumn}=origin,newRange={...origin};if(moveEdge===0)if(startColumn===originStartColumn&&endColumn===originEndColumn)if(startRow<originStartRow)newRange.startRow=startRow;else if(startRow>=originEndRow)newRange.endRow-=fromEndRow+1-originStartRow;else return;else return;else if(moveEdge===1)if(startColumn===originStartColumn&&endColumn===originEndColumn)if(endRow>originEndRow)newRange.endRow=endRow;else if(endRow<=originStartRow)newRange.startRow+=originEndRow-fromStartRow+1;else return;else return;else if(moveEdge===2)if(startRow===originStartRow&&endRow===originEndRow)if(startColumn<originStartColumn)newRange.startColumn=startColumn;else if(startColumn>=originEndColumn)newRange.endColumn-=fromEndColumn+1-originStartColumn;else return;else return;else if(moveEdge===3)if(startRow===originStartRow&&endRow===originEndRow)if(endColumn>originEndColumn)newRange.endColumn=endColumn;else if(endColumn<=originStartColumn)newRange.startColumn+=originEndColumn-fromStartColumn+1;else return;else return;else moveEdge===4?(newRange.startRow=startRow,newRange.startColumn=startColumn,newRange.endRow=endRow,newRange.endColumn=endColumn):fromStartColumn<=originStartColumn&&fromEndColumn>=originEndColumn?from.endRow<originStartRow?(toStartRow>=originStartRow&&(newRange.startRow-=fromEndRow-fromStartRow+1),toStartRow>=originEndRow&&(newRange.endRow-=fromEndRow-fromStartRow+1)):from.startRow>originEndRow&&(toEndRow<=originEndRow&&(newRange.endRow+=fromEndRow-fromStartRow+1),toEndRow<=originStartRow&&(newRange.startRow+=fromEndRow-fromStartRow+1)):fromStartRow<=originStartRow&&fromEndRow>=originEndRow?from.endColumn<originStartColumn?(toStartColumn>=originStartColumn&&(newRange.startColumn-=fromEndColumn-fromStartColumn+1),toStartColumn>=originEndColumn&&(newRange.endColumn-=fromEndColumn-fromStartColumn+1)):from.startColumn>originEndColumn&&(toEndColumn<=originEndColumn&&(newRange.endColumn+=fromEndColumn-fromStartColumn+1),toEndColumn<=originStartColumn&&(newRange.startColumn+=fromEndColumn-fromStartColumn+1)):((toStartColumn<=remainEndColumn+1&&toEndColumn>=originEndColumn||toStartColumn<=originStartColumn&&toEndColumn>=remainStartColumn-1)&&toStartRow<=originStartRow&&toEndRow>=originEndRow||(toStartRow<=remainEndRow+1&&toEndRow>=originEndRow||toStartRow<=originStartRow&&toEndRow>=remainStartRow-1)&&toStartColumn<=originStartColumn&&toEndColumn>=originEndColumn)&&(newRange.startRow=startRow,newRange.startColumn=startColumn,newRange.endRow=endRow,newRange.endColumn=endColumn);return newRange}_getCurrentSheetInfo(){var _a23;const workbook=this._univerInstanceService.getCurrentUnitForType(core.UniverInstanceType.UNIVER_SHEET),unitId=workbook.getUnitId(),sheetId=((_a23=workbook.getActiveSheet())==null?void 0:_a23.getSheetId())||"";return{unitId,sheetId}}},__name(_a10,"UpdateFormulaController"),_a10);UpdateFormulaController=__decorateClass$a([core.OnLifecycle(core.LifecycleStages.Ready,UpdateFormulaController),__decorateParam$a(0,core.IUniverInstanceService),__decorateParam$a(1,core.ICommandService),__decorateParam$a(2,core.Inject(engineFormula.LexerTreeBuilder)),__decorateParam$a(3,core.Inject(engineFormula.FormulaDataModel)),__decorateParam$a(4,core.Inject(sheets.SheetInterceptorService)),__decorateParam$a(5,core.Inject(sheets.SheetsSelectionsService)),__decorateParam$a(6,ui.IEditorService),__decorateParam$a(7,core.Inject(core.Injector))],UpdateFormulaController);var __defProp$9=Object.defineProperty,__getOwnPropDesc$9=Object.getOwnPropertyDescriptor,__decorateClass$9=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$9(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$9(target,key,result),result},"__decorateClass$9"),__decorateParam$9=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$9");const RemoteRegisterFunctionServiceName="sheets-formula.remote-register-function.service",IRemoteRegisterFunctionService=core.createIdentifier(RemoteRegisterFunctionServiceName);var _a11;exports.RemoteRegisterFunctionService=(_a11=class{constructor(_functionService){this._functionService=_functionService}async registerFunctions(serializedFuncs){const functionList=serializedFuncs.map(([func,name])=>createFunction(func,name));this._functionService.registerExecutors(...functionList)}async unregisterFunctions(names){this._functionService.unregisterDescriptions(...names)}},__name(_a11,"RemoteRegisterFunctionService"),_a11);exports.RemoteRegisterFunctionService=__decorateClass$9([__decorateParam$9(0,engineFormula.IFunctionService)],exports.RemoteRegisterFunctionService);function createFunction(functionString,functionName){const instance=new engineFormula.CustomFunction(functionName),functionCalculate=new Function(`return ${functionString}`)();return instance.calculateCustom=functionCalculate,instance}__name(createFunction,"createFunction");var __defProp$8=Object.defineProperty,__getOwnPropDesc$8=Object.getOwnPropertyDescriptor,__decorateClass$8=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$8(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$8(target,key,result),result},"__decorateClass$8"),__decorateParam$8=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$8");const IRegisterFunctionService=core.createIdentifier("sheets-formula.register-function-service");var _a12;exports.RegisterFunctionService=(_a12=class extends core.Disposable{constructor(_localeService,_descriptionService,_functionService,_remoteRegisterFunctionService){super(),this._localeService=_localeService,this._descriptionService=_descriptionService,this._functionService=_functionService,this._remoteRegisterFunctionService=_remoteRegisterFunctionService}registerFunctions(params){const{locales,description,calculate}=params;locales&&this._localeService.load(locales);const disposables=new core.DisposableCollection;if(description)disposables.add(this._descriptionService.registerDescriptions(description));else{const descriptionList=calculate.map(([_func,functionName,functionIntroduction])=>({functionName,functionType:engineFormula.FunctionType.User,description:"",abstract:functionIntroduction||"",functionParameter:[]}));disposables.add(this._functionService.registerDescriptions(...descriptionList))}return disposables.add(this._registerLocalExecutors(calculate)),this._remoteRegisterFunctionService&&disposables.add(this._registerRemoteExecutors(calculate)),disposables}_registerLocalExecutors(list){const names=list.map(([_func,name])=>name),functions=list.map(([func,name])=>{const instance=new engineFormula.CustomFunction(name);return instance.calculateCustom=func,instance});return this._functionService.registerExecutors(...functions),core.toDisposable(()=>this._functionService.unregisterExecutors(...names))}_registerRemoteExecutors(list){const functionNameList=[],functions=list.map(([func,name])=>(functionNameList.push(name),[func.toString(),name]));return this._remoteRegisterFunctionService.registerFunctions(functions),core.toDisposable(()=>this._remoteRegisterFunctionService.unregisterFunctions(functionNameList))}},__name(_a12,"RegisterFunctionService"),_a12);exports.RegisterFunctionService=__decorateClass$8([__decorateParam$8(0,core.Inject(core.LocaleService)),__decorateParam$8(1,core.Inject(IDescriptionService)),__decorateParam$8(2,engineFormula.IFunctionService),__decorateParam$8(3,core.Optional(IRemoteRegisterFunctionService))],exports.RegisterFunctionService);var __defProp$7=Object.defineProperty,__getOwnPropDesc$7=Object.getOwnPropertyDescriptor,__decorateClass$7=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$7(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$7(target,key,result),result},"__decorateClass$7"),__decorateParam$7=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$7");const SCOPE_WORKBOOK_VALUE="AllDefaultWorkbook";var _a13;let DefinedNameController=(_a13=class extends core.Disposable{constructor(_descriptionService,_definedNamesService,_univerInstanceService,_commandService){super();__publicField(this,"_preUnitId",null);this._descriptionService=_descriptionService,this._definedNamesService=_definedNamesService,this._univerInstanceService=_univerInstanceService,this._commandService=_commandService,this._initialize()}_initialize(){this._descriptionListener(),this._changeUnitListener(),this._changeSheetListener()}_descriptionListener(){core.toDisposable(this._definedNamesService.update$.subscribe(()=>{this._registerDescriptions()}))}_changeUnitListener(){core.toDisposable(this._univerInstanceService.getCurrentTypeOfUnit$(core.UniverInstanceType.UNIVER_SHEET).subscribe(()=>{this._unRegisterDescriptions(),this._registerDescriptions()}))}_changeSheetListener(){this.disposeWithMe(this._commandService.onCommandExecuted((command,options)=>{if(!(options!=null&&options.fromCollab)){if(command.id===sheets.SetWorksheetActiveOperation.id)this._unregisterDescriptionsForNotInSheetId(),this._registerDescriptions();else if(command.id===sheets.InsertDefinedNameCommand.id){const param=command.params;this._registerDescription(param)}else if(command.id===sheets.RemoveDefinedNameCommand.id){const param=command.params;this._unregisterDescription(param)}else if(command.id===sheets.SetDefinedNameCommand.id){const param=command.params;this._unregisterDescription(param.oldDefinedName),this._registerDescription(param.newDefinedName)}}}))}_registerDescription(param){const{unitId,sheetId}=this._getUnitIdAndSheetId();if(unitId==null||sheetId==null)return;const{name,comment,formulaOrRefString,localSheetId}=param;!this._descriptionService.hasDescription(name)&&(localSheetId==null||localSheetId===SCOPE_WORKBOOK_VALUE||localSheetId===sheetId)&&this._descriptionService.registerDescriptions([{functionName:name,description:formulaOrRefString+(comment||""),abstract:formulaOrRefString,functionType:engineFormula.FunctionType.DefinedName,functionParameter:[]}])}_unregisterDescription(param){const{name}=param;this._descriptionService.unregisterDescriptions([name])}_unRegisterDescriptions(){if(this._preUnitId==null)return;const definedNames=this._definedNamesService.getDefinedNameMap(this._preUnitId);if(definedNames==null)return;const functionList=[];Array.from(Object.values(definedNames)).forEach(value=>{const{name}=value;functionList.push(name)}),this._descriptionService.unregisterDescriptions(functionList),this._preUnitId=null}_getUnitIdAndSheetId(){const workbook=this._univerInstanceService.getCurrentUnitForType(core.UniverInstanceType.UNIVER_SHEET);if(workbook==null)return{};const worksheet=workbook.getActiveSheet();return worksheet==null?{}:{unitId:workbook.getUnitId(),sheetId:worksheet.getSheetId()}}_registerDescriptions(){const{unitId,sheetId}=this._getUnitIdAndSheetId();if(unitId==null||sheetId==null)return;const definedNames=this._definedNamesService.getDefinedNameMap(unitId);if(!definedNames)return;const functionList=[];this._preUnitId=unitId,Array.from(Object.values(definedNames)).forEach(value=>{const{name,comment,formulaOrRefString,localSheetId}=value;!this._descriptionService.hasDescription(name)&&(localSheetId==null||localSheetId===SCOPE_WORKBOOK_VALUE||localSheetId===sheetId)&&functionList.push({functionName:name,description:formulaOrRefString+(comment||""),abstract:formulaOrRefString,functionType:engineFormula.FunctionType.DefinedName,functionParameter:[]})}),this._descriptionService.registerDescriptions(functionList)}_unregisterDescriptionsForNotInSheetId(){const{unitId,sheetId}=this._getUnitIdAndSheetId();if(unitId==null||sheetId==null)return;const definedNames=this._definedNamesService.getDefinedNameMap(unitId);if(!definedNames)return;const functionList=[];Array.from(Object.values(definedNames)).forEach(value=>{const{name,localSheetId}=value;localSheetId!==SCOPE_WORKBOOK_VALUE&&localSheetId!==sheetId&&functionList.push(name)}),this._descriptionService.unregisterDescriptions(functionList)}},__name(_a13,"DefinedNameController"),_a13);DefinedNameController=__decorateClass$7([core.OnLifecycle(core.LifecycleStages.Rendered,DefinedNameController),__decorateParam$7(0,IDescriptionService),__decorateParam$7(1,engineFormula.IDefinedNamesService),__decorateParam$7(2,core.IUniverInstanceService),__decorateParam$7(3,core.ICommandService)],DefinedNameController);var __defProp$6=Object.defineProperty,__getOwnPropDesc$6=Object.getOwnPropertyDescriptor,__decorateClass$6=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$6(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$6(target,key,result),result},"__decorateClass$6"),__decorateParam$6=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$6"),_a14;exports.FormulaRefRangeService=(_a14=class extends core.Disposable{constructor(_refRangeService,_lexerTreeBuilder,_univerInstanceService){super(),this._refRangeService=_refRangeService,this._lexerTreeBuilder=_lexerTreeBuilder,this._univerInstanceService=_univerInstanceService}registerFormula(formula,callback){const rangeMap=new Map,sequenceNodes=this._lexerTreeBuilder.sequenceNodesBuilder(formula),disposableCollection=new core.DisposableCollection,handleChange=__name(params=>{const workbook=this._univerInstanceService.getCurrentUnitForType(core.UniverInstanceType.UNIVER_SHEET),worksheet=workbook.getActiveSheet(),unitId=workbook.getUnitId(),subUnitId=worksheet==null?void 0:worksheet.getSheetId(),transformSequenceNodes=sequenceNodes==null?void 0:sequenceNodes.map(node=>{if(typeof node=="object"&&node.nodeType===engineFormula.sequenceNodeType.REFERENCE){const rangeInfo=rangeMap.get(node.token);if(rangeInfo.unitId&&rangeInfo.unitId!==unitId&&rangeInfo.subUnitId&&rangeInfo.subUnitId!==subUnitId)return node;const newRange=sheets.handleDefaultRangeChangeWithEffectRefCommands(rangeInfo.range,params);let newToken="";return rangeInfo.unitId&&rangeInfo.sheetName?newToken=engineFormula.serializeRangeWithSpreadsheet(rangeInfo.unitId,rangeInfo.sheetName,rangeInfo.range):rangeInfo.sheetName?newToken=engineFormula.serializeRangeWithSheet(rangeInfo.sheetName,rangeInfo.range):newToken=newRange?engineFormula.serializeRange(newRange):engineFormula.ErrorType.ERROR,{...node,token:newToken}}else return node}),newFormulaString=transformSequenceNodes&&engineFormula.generateStringWithSequence(transformSequenceNodes);return callback(`=${newFormulaString}`)},"handleChange");return sequenceNodes==null||sequenceNodes.forEach(node=>{if(typeof node=="object"&&node.nodeType===engineFormula.sequenceNodeType.REFERENCE){const gridRangeName=engineFormula.deserializeRangeWithSheet(node.token),{range,unitId,sheetName}=gridRangeName,workbook=unitId?this._univerInstanceService.getUniverSheetInstance(unitId):this._univerInstanceService.getCurrentUnitForType(core.UniverInstanceType.UNIVER_SHEET),worksheet=sheetName?workbook==null?void 0:workbook.getSheetBySheetName(sheetName):workbook==null?void 0:workbook.getActiveSheet();if(!worksheet)return;const sheetId=worksheet.getSheetId(),item={unitId,subUnitId:sheetId,range,sheetName};rangeMap.set(node.token,item),disposableCollection.add(this._refRangeService.registerRefRange(range,handleChange,unitId,sheetId))}}),disposableCollection}},__name(_a14,"FormulaRefRangeService"),_a14);exports.FormulaRefRangeService=__decorateClass$6([__decorateParam$6(0,core.Inject(sheets.RefRangeService)),__decorateParam$6(1,core.Inject(engineFormula.LexerTreeBuilder)),__decorateParam$6(2,core.IUniverInstanceService)],exports.FormulaRefRangeService);var FormulaResultStatus=(FormulaResultStatus2=>(FormulaResultStatus2[FormulaResultStatus2.NOT_REGISTER=1]="NOT_REGISTER",FormulaResultStatus2[FormulaResultStatus2.SUCCESS=2]="SUCCESS",FormulaResultStatus2[FormulaResultStatus2.WAIT=3]="WAIT",FormulaResultStatus2[FormulaResultStatus2.ERROR=4]="ERROR",FormulaResultStatus2))(FormulaResultStatus||{}),__defProp$5=Object.defineProperty,__getOwnPropDesc$5=Object.getOwnPropertyDescriptor,__decorateClass$5=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$5(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$5(target,key,result),result},"__decorateClass$5"),__decorateParam$5=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$5"),_a15;exports.RegisterOtherFormulaService=(_a15=class extends core.Disposable{constructor(_commandService,_activeDirtyManagerService){super();__publicField(this,"_formulaCacheMap",new Map);__publicField(this,"_formulaChange$",new rxjs.Subject);__publicField(this,"formulaChange$",this._formulaChange$.asObservable());__publicField(this,"_formulaResult$",new rxjs.Subject);__publicField(this,"formulaResult$",this._formulaResult$.asObservable());this._commandService=_commandService,this._activeDirtyManagerService=_activeDirtyManagerService,this._initFormulaRegister(),this._initFormulaCalculationResultChange()}dispose(){super.dispose(),this._formulaChange$.complete(),this._formulaResult$.complete()}_ensureCacheMap(unitId,subUnitId){let unitMap=this._formulaCacheMap.get(unitId);unitMap||(unitMap=new Map,this._formulaCacheMap.set(unitId,unitMap));let subUnitMap=unitMap.get(subUnitId);return subUnitMap||(subUnitMap=new Map,unitMap.set(subUnitId,subUnitMap)),subUnitMap}_createFormulaId(unitId,subUnitId){return`formula.${unitId}_${subUnitId}_${core.Tools.generateRandomId(8)}`}_initFormulaRegister(){this._activeDirtyManagerService.register(OtherFormulaMarkDirty.id,{commandId:OtherFormulaMarkDirty.id,getDirtyData(commandInfo){return{dirtyUnitOtherFormulaMap:commandInfo.params}}}),this.formulaChange$.pipe(rxjs.bufferTime(16),rxjs.filter(list=>!!list.length),rxjs.map(list=>list.reduce((result,cur)=>{const{unitId,subUnitId,formulaId,formulaText}=cur;return result[unitId]||(result[unitId]={}),result[unitId][subUnitId]||(result[unitId][subUnitId]={}),result[unitId][subUnitId][formulaId]={f:formulaText},result},{}))).subscribe(result=>{for(const unitId in result)for(const subUnitId in result[unitId]){const value=result[unitId][subUnitId],config={unitId,subUnitId,formulaMap:value};this._commandService.executeCommand(engineFormula.SetOtherFormulaMutation.id,config).then(()=>{this._commandService.executeCommand(OtherFormulaMarkDirty.id,{[unitId]:{[subUnitId]:value}})})}})}_initFormulaCalculationResultChange(){this.disposeWithMe(this._commandService.onCommandExecuted(commandInfo=>{if(commandInfo.id===engineFormula.SetFormulaCalculationResultMutation.id){const params=commandInfo.params,{unitOtherData}=params,results={};for(const unitId in unitOtherData){const unitData=unitOtherData[unitId],unitResults={};results[unitId]=unitResults;for(const subUnitId in unitData){const cacheMap=this._ensureCacheMap(unitId,subUnitId),subUnitData=unitData[subUnitId],subUnitResults=[];unitResults[subUnitId]=subUnitResults;for(const formulaId in subUnitData){const current=subUnitData[formulaId];if(cacheMap.has(formulaId)){const item=cacheMap.get(formulaId);item.result=current,item.status=FormulaResultStatus.SUCCESS,item.callbacks.forEach(callback=>{callback(current)}),item.callbacks.clear(),subUnitResults.push(item)}}}}this._formulaResult$.next(results)}}))}registerFormula(unitId,subUnitId,formulaText,extra){const formulaId=this._createFormulaId(unitId,subUnitId);return this._ensureCacheMap(unitId,subUnitId).set(formulaId,{result:void 0,status:FormulaResultStatus.WAIT,formulaId,callbacks:new Set,extra}),this._formulaChange$.next({unitId,subUnitId,formulaText,formulaId}),formulaId}deleteFormula(unitId,subUnitId,formulaIdList){const params={unitId,subUnitId,formulaIdList};this._commandService.executeCommand(engineFormula.RemoveOtherFormulaMutation.id,params);const cacheMap=this._ensureCacheMap(unitId,subUnitId);formulaIdList.forEach(id=>cacheMap.delete(id))}getFormulaValue(unitId,subUnitId,formulaId){const cacheMap=this._ensureCacheMap(unitId,subUnitId),item=cacheMap.get(formulaId);return item?item.status===FormulaResultStatus.SUCCESS||item.status===FormulaResultStatus.ERROR?Promise.resolve(item):new Promise(resolve=>{item.callbacks.add(()=>{resolve(cacheMap.get(formulaId))})}):Promise.resolve(null)}getFormulaValueSync(unitId,subUnitId,formulaId){return this._ensureCacheMap(unitId,subUnitId).get(formulaId)}},__name(_a15,"RegisterOtherFormulaService"),_a15);exports.RegisterOtherFormulaService=__decorateClass$5([__decorateParam$5(0,core.ICommandService),__decorateParam$5(1,engineFormula.IActiveDirtyManagerService)],exports.RegisterOtherFormulaService);var __defProp$4=Object.defineProperty,__getOwnPropDesc$4=Object.getOwnPropertyDescriptor,__decorateClass$4=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$4(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$4(target,key,result),result},"__decorateClass$4"),__decorateParam$4=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$4");const ALERT_KEY="SHEET_FORMULA_ALERT",ErrorTypeToMessageMap={[engineFormula.ErrorType.DIV_BY_ZERO]:"divByZero",[engineFormula.ErrorType.NAME]:"name",[engineFormula.ErrorType.VALUE]:"value",[engineFormula.ErrorType.NUM]:"num",[engineFormula.ErrorType.NA]:"na",[engineFormula.ErrorType.CYCLE]:"cycle",[engineFormula.ErrorType.REF]:"ref",[engineFormula.ErrorType.SPILL]:"spill",[engineFormula.ErrorType.CALC]:"calc",[engineFormula.ErrorType.ERROR]:"error",[engineFormula.ErrorType.CONNECT]:"connect",[engineFormula.ErrorType.NULL]:"null"};var _a16;let FormulaAlertRenderController=(_a16=class extends core.Disposable{constructor(_context,_hoverManagerService,_cellAlertManagerService,_localeService,_zenZoneService){super(),this._context=_context,this._hoverManagerService=_hoverManagerService,this._cellAlertManagerService=_cellAlertManagerService,this._localeService=_localeService,this._zenZoneService=_zenZoneService,this._init()}_init(){this._initCellAlertPopup(),this._initZenService()}_initCellAlertPopup(){this.disposeWithMe(this._hoverManagerService.currentCell$.subscribe(cellPos=>{var _a23;if(cellPos){const worksheet=this._context.unit.getActiveSheet();if(!worksheet)return;const cellData=worksheet.getCell(cellPos.location.row,cellPos.location.col);if(core.isICellData(cellData)){const errorType=extractFormulaError(cellData);if(!errorType)return;const currentAlert=this._cellAlertManagerService.currentAlert.get(ALERT_KEY),currentLoc=(_a23=currentAlert==null?void 0:currentAlert.alert)==null?void 0:_a23.location;if(currentLoc&&currentLoc.row===cellPos.location.row&&currentLoc.col===cellPos.location.col&&currentLoc.subUnitId===cellPos.location.subUnitId&&currentLoc.unitId===cellPos.location.unitId)return;this._cellAlertManagerService.showAlert({type:sheetsUi.CellAlertType.ERROR,title:this._localeService.t("formula.error.title"),message:this._localeService.t(`formula.error.${ErrorTypeToMessageMap[errorType]}`),location:cellPos.location,width:200,height:74,key:ALERT_KEY});return}}this._cellAlertManagerService.removeAlert(ALERT_KEY)}))}_initZenService(){this.disposeWithMe(this._zenZoneService.visible$.subscribe(visible=>{visible&&this._cellAlertManagerService.removeAlert(ALERT_KEY)}))}},__name(_a16,"FormulaAlertRenderController"),_a16);FormulaAlertRenderController=__decorateClass$4([__decorateParam$4(1,core.Inject(sheetsUi.HoverManagerService)),__decorateParam$4(2,core.Inject(sheetsUi.CellAlertManagerService)),__decorateParam$4(3,core.Inject(core.LocaleService)),__decorateParam$4(4,ui.IZenZoneService)],FormulaAlertRenderController);var __defProp$3=Object.defineProperty,__getOwnPropDesc$3=Object.getOwnPropertyDescriptor,__decorateClass$3=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$3(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$3(target,key,result),result},"__decorateClass$3"),__decorateParam$3=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$3");const FORMULA_ERROR_MARK={tl:{size:6,color:"#409f11"}};var _a17;let FormulaRenderManagerController=(_a17=class extends core.RxDisposable{constructor(_sheetInterceptorService){super(),this._sheetInterceptorService=_sheetInterceptorService,this._init()}_init(){this.disposeWithMe(this._sheetInterceptorService.intercept(sheets.INTERCEPTOR_POINT.CELL_CONTENT,{handler:__name((cell,pos,next)=>extractFormulaError(cell)?next({...cell,markers:{...cell==null?void 0:cell.markers,...FORMULA_ERROR_MARK}}):next(cell),"handler"),priority:10}))}},__name(_a17,"FormulaRenderManagerController"),_a17);FormulaRenderManagerController=__decorateClass$3([core.OnLifecycle(core.LifecycleStages.Rendered,FormulaRenderManagerController),__decorateParam$3(0,core.Inject(sheets.SheetInterceptorService))],FormulaRenderManagerController);var __defProp$2=Object.defineProperty,__getOwnPropDesc$2=Object.getOwnPropertyDescriptor,__decorateClass$2=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$2(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$2(target,key,result),result},"__decorateClass$2"),__decorateParam$2=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$2"),_a18;let RefSelectionsRenderService=(_a18=class extends sheetsUi.BaseSelectionRenderService{constructor(_context,injector,themeService,shortcutService,sheetSkeletonManagerService,_refSelectionsService){super(injector,themeService,shortcutService,sheetSkeletonManagerService);__publicField(this,"_workbookSelections");__publicField(this,"_eventDisposables");this._context=_context,this._refSelectionsService=_refSelectionsService,this._workbookSelections=this._refSelectionsService.getWorkbookSelections(this._context.unitId),this._initSelectionChangeListener(),this._initSkeletonChangeListener(),this._initUserActionSyncListener(),this._setSelectionStyle(getDefaultRefSelectionStyle(this._themeService)),this._remainLastEnabled=!0}getLocation(){return this._skeleton.getLocation()}setRemainLastEnabled(enabled){this._remainLastEnabled=enabled}setSkipLastEnabled(enabled){this._skipLastEnabled=enabled}clearLastSelection(){const last=this._selectionControls[this._selectionControls.length-1];last&&(last.dispose(),this._selectionControls.pop())}enableSelectionChanging(){return this._disableSelectionChanging(),this._eventDisposables=this._initCanvasEventListeners(),core.toDisposable(()=>this._disableSelectionChanging())}_disableSelectionChanging(){var _a23;(_a23=this._eventDisposables)==null||_a23.dispose(),this._eventDisposables=null}_initCanvasEventListeners(){const sheetObject=this._getSheetObject(),{spreadsheetRowHeader,spreadsheetColumnHeader,spreadsheet,spreadsheetLeftTopPlaceholder}=sheetObject,{scene}=this._context,listenerDisposables=new core.DisposableCollection;return listenerDisposables.add(spreadsheet==null?void 0:spreadsheet.onPointerDown$.subscribeEvent((evt,state)=>{this._onPointerDown(evt,spreadsheet.zIndex+1,core.RANGE_TYPE.NORMAL,this._getActiveViewport(evt)),evt.button!==2&&state.stopPropagation()})),listenerDisposables.add(spreadsheetRowHeader==null?void 0:spreadsheetRowHeader.onPointerDown$.subscribeEvent((evt,state)=>{const skeleton=this._sheetSkeletonManagerService.getCurrent().skeleton,{row}=sheetsUi.getCoordByOffset(evt.offsetX,evt.offsetY,scene,skeleton);sheetsUi.checkInHeaderRanges(this._workbookSelections.getCurrentSelections(),row,core.RANGE_TYPE.ROW)||(this._onPointerDown(evt,(spreadsheet.zIndex||1)+1,core.RANGE_TYPE.ROW,this._getActiveViewport(evt),engineRender.ScrollTimerType.Y),evt.button!==2&&state.stopPropagation())})),listenerDisposables.add(spreadsheetColumnHeader==null?void 0:spreadsheetColumnHeader.onPointerDown$.subscribeEvent((evt,state)=>{const skeleton=this._sheetSkeletonManagerService.getCurrent().skeleton,{column}=sheetsUi.getCoordByOffset(evt.offsetX,evt.offsetY,scene,skeleton);sheetsUi.checkInHeaderRanges(this._workbookSelections.getCurrentSelections(),column,core.RANGE_TYPE.COLUMN)||(this._onPointerDown(evt,(spreadsheet.zIndex||1)+1,core.RANGE_TYPE.COLUMN,this._getActiveViewport(evt),engineRender.ScrollTimerType.X),evt.button!==2&&state.stopPropagation())})),listenerDisposables.add(spreadsheetLeftTopPlaceholder==null?void 0:spreadsheetLeftTopPlaceholder.onPointerDown$.subscribeEvent((evt,state)=>{this._reset();const skeleton=this._sheetSkeletonManagerService.getCurrent().skeleton,selectionWithStyle=sheetsUi.getAllSelection(skeleton),selectionData=this.attachSelectionWithCoord(selectionWithStyle);this._addSelectionControlBySelectionData(selectionData),this._selectionMoveStart$.next(this.getSelectionDataWithStyle()),evt.button!==2&&state.stopPropagation()})),listenerDisposables}_initUserActionSyncListener(){this.disposeWithMe(this.selectionMoveStart$.subscribe(selectionDataWithStyle=>{this._updateSelections(selectionDataWithStyle,sheets.SelectionMoveType.MOVE_START)})),this.disposeWithMe(this.selectionMoving$.subscribe(selectionDataWithStyle=>{this._updateSelections(selectionDataWithStyle,sheets.SelectionMoveType.MOVING)})),this.disposeWithMe(this.selectionMoveEnd$.subscribe(selectionDataWithStyle=>{this._updateSelections(selectionDataWithStyle,sheets.SelectionMoveType.MOVE_END)}))}_updateSelections(selectionDataWithStyleList,type){const sheetId=this._context.unit.getActiveSheet().getSheetId();selectionDataWithStyleList.length!==0&&this._workbookSelections.setSelections(sheetId,selectionDataWithStyleList.map(selectionDataWithStyle=>sheets.convertSelectionDataToRange(selectionDataWithStyle)),type)}_initSelectionChangeListener(){this.disposeWithMe(this._workbookSelections.selectionMoveEnd$.subscribe(selectionsWithStyles=>{this._reset();for(const selectionWithStyle of selectionsWithStyles){const selectionData=this.attachSelectionWithCoord(selectionWithStyle);this._addSelectionControlBySelectionData(selectionData)}}))}_initSkeletonChangeListener(){this.disposeWithMe(this._sheetSkeletonManagerService.currentSkeleton$.subscribe(param=>{if(!param)return;const{skeleton}=param,{scene}=this._context,viewportMain=scene.getViewport(engineRender.SHEET_VIEWPORT_KEY.VIEW_MAIN);this._skeleton&&this._skeleton.worksheet.getSheetId()!==skeleton.worksheet.getSheetId()&&this._reset(),this._changeRuntime(skeleton,scene,viewportMain);const currentSelections=this._workbookSelections.getCurrentSelections();this._refreshSelectionControl(currentSelections||[])}))}_refreshSelectionControl(selectionsData){const selections=selectionsData.map(selectionWithStyle=>sheetsUi.attachSelectionWithCoord(selectionWithStyle,this._skeleton));this.updateControlForCurrentByRangeData(selections)}_getActiveViewport(evt){const sheetObject=this._getSheetObject();return sheetObject==null?void 0:sheetObject.scene.getActiveViewportByCoord(engineRender.Vector2.FromArray([evt.offsetX,evt.offsetY]))}_getSheetObject(){return sheetsUi.getSheetObject(this._context.unit,this._context)}},__name(_a18,"RefSelectionsRenderService"),_a18);RefSelectionsRenderService=__decorateClass$2([__decorateParam$2(1,core.Inject(core.Injector)),__decorateParam$2(2,core.Inject(core.ThemeService)),__decorateParam$2(3,ui.IShortcutService),__decorateParam$2(4,core.Inject(sheetsUi.SheetSkeletonManagerService)),__decorateParam$2(5,sheets.IRefSelectionsService)],RefSelectionsRenderService);function getDefaultRefSelectionStyle(themeService){const style=sheets.getNormalSelectionStyle(themeService);return style.hasAutoFill=!1,style.hasRowHeader=!1,style.hasColumnHeader=!1,style.widgets={tl:!0,tc:!0,tr:!0,ml:!0,mr:!0,bl:!0,bc:!0,br:!0},style}__name(getDefaultRefSelectionStyle,"getDefaultRefSelectionStyle");function getFormulaRefSelectionStyle(themeService,refColor,id){const style=themeService.getCurrentTheme(),fill=new core.ColorKit(refColor).setAlpha(.05).toRgbString();return{id,strokeWidth:1,stroke:refColor,fill,widgets:{tl:!0,tc:!0,tr:!0,ml:!0,mr:!0,bl:!0,bc:!0,br:!0},widgetSize:6,widgetStrokeWidth:1,widgetStroke:style.colorWhite,hasAutoFill:!1,hasRowHeader:!1,hasColumnHeader:!1}}__name(getFormulaRefSelectionStyle,"getFormulaRefSelectionStyle");var __defProp$1=Object.defineProperty,__getOwnPropDesc$1=Object.getOwnPropertyDescriptor,__decorateClass$1=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$1(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$1(target,key,result),result},"__decorateClass$1"),__decorateParam$1=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$1");const sheetEditorUnitIds=[core.DOCS_FORMULA_BAR_EDITOR_UNIT_ID_KEY,core.DOCS_NORMAL_EDITOR_UNIT_ID_KEY];var _a19;let PromptController=(_a19=class extends core.Disposable{constructor(_commandService,_contextService,_editorBridgeService,_formulaPromptService,_lexerTreeBuilder,_renderManagerService,_themeService,_sheetsSelectionsService,_refSelectionsService,_univerInstanceService,_descriptionService,_docSelectionManagerService,_contextMenuService,_editorService,_layoutService){super();__publicField(this,"_listenInputCache",new Set);__publicField(this,"_formulaRefColors",[]);__publicField(this,"_previousSequenceNodes");__publicField(this,"_previousRangesCount",0);__publicField(this,"_previousInsertRefStringIndex");__publicField(this,"_currentInsertRefStringIndex",-1);__publicField(this,"_arrowMoveActionState",0);__publicField(this,"_isSelectionMovingRefSelections",[]);__publicField(this,"_stringColor","");__publicField(this,"_numberColor","");__publicField(this,"_insertSelections",[]);__publicField(this,"_inputPanelState",0);__publicField(this,"_userCursorMove",!1);__publicField(this,"_previousEditorUnitId");__publicField(this,"_existsSequenceNode",!1);__publicField(this,"_currentlyWorkingRefRenderer",null);__publicField(this,"_selectionsChangeDisposables");__publicField(this,"_isSelectingMode",!1);this._commandService=_commandService,this._contextService=_contextService,this._editorBridgeService=_editorBridgeService,this._formulaPromptService=_formulaPromptService,this._lexerTreeBuilder=_lexerTreeBuilder,this._renderManagerService=_renderManagerService,this._themeService=_themeService,this._sheetsSelectionsService=_sheetsSelectionsService,this._refSelectionsService=_refSelectionsService,this._univerInstanceService=_univerInstanceService,this._descriptionService=_descriptionService,this._docSelectionManagerService=_docSelectionManagerService,this._contextMenuService=_contextMenuService,this._editorService=_editorService,this._layoutService=_layoutService,this._initialize()}get _selectionRenderService(){return this._renderManagerService.getRenderById(this._univerInstanceService.getCurrentUnitForType(core.UniverInstanceType.UNIVER_SHEET).getUnitId()).with(RefSelectionsRenderService)}get _allSelectionRenderServices(){return this._renderManagerService.getAllRenderersOfType(core.UniverInstanceType.UNIVER_SHEET).map(renderer=>renderer.with(RefSelectionsRenderService))}dispose(){this._formulaRefColors=[],this._resetTemp()}_resetTemp(){this._previousSequenceNodes=null,this._previousInsertRefStringIndex=null,this._isSelectionMovingRefSelections=[],this._previousRangesCount=0,this._currentInsertRefStringIndex=-1}_initialize(){this._initialCursorSync(),this._initAcceptFormula(),this._initialFormulaTheme(),this._initSelectionsEndListener(),this._closeRangePromptWhenEditorInvisible(),this._initialEditorInputChange(),this._commandExecutedListener(),this._cursorStateListener(),this._inputFormulaListener(),this._userMouseListener(),this._initialChangeEditor()}_initialFormulaTheme(){const style=this._themeService.getCurrentTheme();this._formulaRefColors=[style.loopColor1,style.loopColor2,style.loopColor3,style.loopColor4,style.loopColor5,style.loopColor6,style.loopColor7,style.loopColor8,style.loopColor9,style.loopColor10,style.loopColor11,style.loopColor12],this._numberColor=style.hyacinth700,this._stringColor=style.verdancy800}_initialCursorSync(){this.disposeWithMe(this._docSelectionManagerService.textSelection$.subscribe(params=>{var _a23;if((params==null?void 0:params.unitId)==null)return;const editor=this._editorService.getEditor(params.unitId);if(!editor||editor.onlyInputContent()||editor.isSheetEditor()&&!this._isFormulaEditorActivated())return;const onlyInputRange=editor.onlyInputRange();(_a23=params==null?void 0:params.options)!=null&&_a23.fromSelection||(this._quitSelectingMode(),this._contextSwitch(),this._checkShouldEnterSelectingMode(onlyInputRange),!this._formulaPromptService.isLockedSelectionChange()&&(this._highlightFormula(),!onlyInputRange&&this._changeFunctionPanelState()))}))}_initialEditorInputChange(){const arrows=[ui.KeyCode.ARROW_DOWN,ui.KeyCode.ARROW_UP,ui.KeyCode.ARROW_LEFT,ui.KeyCode.ARROW_RIGHT,ui.KeyCode.CTRL,ui.KeyCode.SHIFT];this._univerInstanceService.getCurrentTypeOfUnit$(core.UniverInstanceType.UNIVER_DOC).subscribe(documentDataModel=>{var _a23;const unitId=documentDataModel==null?void 0:documentDataModel.getUnitId();if(unitId==null||this._listenInputCache.has(unitId)||this._editorService.getEditor(unitId)==null)return;const docSelectionRenderService=(_a23=this._renderManagerService.getRenderById(unitId))==null?void 0:_a23.with(docsUi.DocSelectionRenderService);docSelectionRenderService&&this.disposeWithMe(docSelectionRenderService.onInputBefore$.subscribe(param=>{this._previousSequenceNodes=null,this._previousInsertRefStringIndex=null,this._selectionRenderService.setSkipLastEnabled(!0);const event=param==null?void 0:param.event;event&&(arrows.includes(event.which)?this._inputPanelState=2:(this._arrowMoveActionState!==1&&(this._arrowMoveActionState=2),this._inputPanelState=1),event.which!==ui.KeyCode.F4&&(this._userCursorMove=!1))})),this._listenInputCache.add(unitId)})}_closeRangePromptWhenEditorInvisible(){this.disposeWithMe(this._editorBridgeService.afterVisible$.pipe(rxjs.distinctUntilKeyChanged("visible")).subscribe(visibleParam=>{visibleParam.visible||this._closeRangePrompt()})),this.disposeWithMe(this._contextService.subscribeContextValue$(core.FORMULA_EDITOR_ACTIVATED).pipe(rxjs.distinctUntilChanged()).subscribe(activated=>{activated||this._closeRangePrompt()}))}_initialChangeEditor(){this.disposeWithMe(this._univerInstanceService.getCurrentTypeOfUnit$(core.UniverInstanceType.UNIVER_DOC).subscribe(documentDataModel=>{if(documentDataModel==null)return;const editorId=documentDataModel.getUnitId();!this._editorService.isEditor(editorId)||this._previousEditorUnitId===editorId||this._editorService.isSheetEditor(editorId)||(this._closeRangePrompt(editorId),this._previousEditorUnitId=editorId)})),this.disposeWithMe(this._editorService.closeRangePrompt$.subscribe(()=>{(!this._editorService.getSpreadsheetFocusState()||!this._formulaPromptService.isLockedSelectionInsert())&&this._closeRangePrompt()}))}_closeRangePrompt(editorId){this._insertSelections=[],this._refSelectionsService.clear(),editorId&&this._editorService.isSheetEditor(editorId)&&this._updateEditorModel(`\r
9
+ */var f=require$$0,k=Symbol.for("react.element"),l=Symbol.for("react.fragment"),m=Object.prototype.hasOwnProperty,n=f.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,p={key:!0,ref:!0,__self:!0,__source:!0};function q(c,a,g){var b,d={},e=null,h=null;g!==void 0&&(e=""+g),a.key!==void 0&&(e=""+a.key),a.ref!==void 0&&(h=a.ref);for(b in a)m.call(a,b)&&!p.hasOwnProperty(b)&&(d[b]=a[b]);if(c&&c.defaultProps)for(b in a=c.defaultProps,a)d[b]===void 0&&(d[b]=a[b]);return{$$typeof:k,type:c,key:e,ref:h,props:d,_owner:n.current}}__name(q,"q");reactJsxRuntime_production_min.Fragment=l;reactJsxRuntime_production_min.jsx=q;reactJsxRuntime_production_min.jsxs=q;jsxRuntime.exports=reactJsxRuntime_production_min;var jsxRuntimeExports=jsxRuntime.exports,__assign=function(){return __assign=Object.assign||function(t){for(var s,i=1,n2=arguments.length;i<n2;i++){s=arguments[i];for(var p2 in s)Object.prototype.hasOwnProperty.call(s,p2)&&(t[p2]=s[p2])}return t},__assign.apply(this,arguments)},__rest=function(s,e){var t={};for(var p2 in s)Object.prototype.hasOwnProperty.call(s,p2)&&e.indexOf(p2)<0&&(t[p2]=s[p2]);if(s!=null&&typeof Object.getOwnPropertySymbols=="function")for(var i=0,p2=Object.getOwnPropertySymbols(s);i<p2.length;i++)e.indexOf(p2[i])<0&&Object.prototype.propertyIsEnumerable.call(s,p2[i])&&(t[p2[i]]=s[p2[i]]);return t},IconBase=require$$0.forwardRef(function(props,ref){var icon=props.icon,id=props.id,className=props.className,extend=props.extend,restProps=__rest(props,["icon","id","className","extend"]),cls="univerjs-icon univerjs-icon-".concat(id," ").concat(className||"").trim(),idSuffix=require$$0.useRef("_".concat(generateShortUuid()));return render(icon,"".concat(id),{defIds:icon.defIds,idSuffix:idSuffix.current},__assign({ref,className:cls},restProps),extend)});function render(node,id,runtimeProps,rootProps,extend){return require$$0.createElement(node.tag,__assign(__assign({key:id},replaceRuntimeIdsAndExtInAttrs(node,runtimeProps,extend)),rootProps),(replaceRuntimeIdsInDefs(node,runtimeProps).children||[]).map(function(child,index){return render(child,"".concat(id,"-").concat(node.tag,"-").concat(index),runtimeProps,void 0,extend)}))}__name(render,"render");function replaceRuntimeIdsAndExtInAttrs(node,runtimeProps,extend){var attrs=__assign({},node.attrs);extend!=null&&extend.colorChannel1&&attrs.fill==="colorChannel1"&&(attrs.fill=extend.colorChannel1);var defIds=runtimeProps.defIds;return!defIds||defIds.length===0||(node.tag==="use"&&attrs["xlink:href"]&&(attrs["xlink:href"]=attrs["xlink:href"]+runtimeProps.idSuffix),Object.entries(attrs).forEach(function(_a23){var key=_a23[0],value=_a23[1];typeof value=="string"&&(attrs[key]=value.replace(/url\(#(.*)\)/,"url(#$1".concat(runtimeProps.idSuffix,")")))})),attrs}__name(replaceRuntimeIdsAndExtInAttrs,"replaceRuntimeIdsAndExtInAttrs");function replaceRuntimeIdsInDefs(node,runtimeProps){var _a23,defIds=runtimeProps.defIds;return!defIds||defIds.length===0?node:node.tag==="defs"&&(!((_a23=node.children)===null||_a23===void 0)&&_a23.length)?__assign(__assign({},node),{children:node.children.map(function(child){return typeof child.attrs.id=="string"&&defIds&&defIds.indexOf(child.attrs.id)>-1?__assign(__assign({},child),{attrs:__assign(__assign({},child.attrs),{id:child.attrs.id+runtimeProps.idSuffix})}):child})}):node}__name(replaceRuntimeIdsInDefs,"replaceRuntimeIdsInDefs");function generateShortUuid(){return Math.random().toString(36).substring(2,8)}__name(generateShortUuid,"generateShortUuid");IconBase.displayName="UniverIcon";var element$3={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M14.1544 3.75557C14.3887 3.98988 14.3887 4.36978 14.1544 4.6041L6.51409 12.2444C6.40157 12.3569 6.24896 12.4201 6.08983 12.4201C5.9307 12.4201 5.77808 12.3569 5.66556 12.2444L1.84541 8.42425C1.6111 8.18993 1.6111 7.81003 1.84541 7.57572C2.07973 7.34141 2.45963 7.34141 2.69394 7.57572L6.08983 10.9716L13.3059 3.75557C13.5402 3.52126 13.9201 3.52126 14.1544 3.75557Z",fillRule:"evenodd",clipRule:"evenodd"}}]},CheckMarkSingle=require$$0.forwardRef(function(props,ref){return require$$0.createElement(IconBase,Object.assign({},props,{id:"check-mark-single",ref,icon:element$3}))});CheckMarkSingle.displayName="CheckMarkSingle";var element$2={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M3.71274 2.86421C3.47843 2.6299 3.09853 2.6299 2.86421 2.86421C2.6299 3.09853 2.6299 3.47843 2.86421 3.71274L7.15154 8.00007L2.86421 12.2874C2.6299 12.5217 2.6299 12.9016 2.86421 13.1359C3.09853 13.3702 3.47843 13.3702 3.71274 13.1359L8.00007 8.84859L12.2874 13.1359C12.5217 13.3702 12.9016 13.3702 13.1359 13.1359C13.3702 12.9016 13.3702 12.5217 13.1359 12.2874L8.84859 8.00007L13.1359 3.71274C13.3702 3.47843 13.3702 3.09853 13.1359 2.86421C12.9016 2.6299 12.5217 2.6299 12.2874 2.86421L8.00007 7.15154L3.71274 2.86421Z"}}]},CloseSingle=require$$0.forwardRef(function(props,ref){return require$$0.createElement(IconBase,Object.assign({},props,{id:"close-single",ref,icon:element$2}))});CloseSingle.displayName="CloseSingle";var element$1={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M8.75 5.32495C8.75 5.73916 8.41421 6.07495 8 6.07495 7.58579 6.07495 7.25 5.73916 7.25 5.32495 7.25 4.91074 7.58579 4.57495 8 4.57495 8.41421 4.57495 8.75 4.91074 8.75 5.32495zM8.5999 7.52505C8.5999 7.19368 8.33127 6.92505 7.9999 6.92505 7.66853 6.92505 7.3999 7.19368 7.3999 7.52505V11.425C7.3999 11.7564 7.66853 12.025 7.9999 12.025 8.33127 12.025 8.5999 11.7564 8.5999 11.425V7.52505z"}},{tag:"path",attrs:{fill:"currentColor",d:"M0.899902 8.00002C0.899902 4.0788 4.07868 0.900024 7.9999 0.900024C11.9211 0.900024 15.0999 4.0788 15.0999 8.00002C15.0999 11.9212 11.9211 15.1 7.9999 15.1C4.07868 15.1 0.899902 11.9212 0.899902 8.00002ZM7.9999 2.10002C4.74142 2.10002 2.0999 4.74154 2.0999 8.00002C2.0999 11.2585 4.74142 13.9 7.9999 13.9C11.2584 13.9 13.8999 11.2585 13.8999 8.00002C13.8999 4.74154 11.2584 2.10002 7.9999 2.10002Z",fillRule:"evenodd",clipRule:"evenodd"}}]},DetailsSingle=require$$0.forwardRef(function(props,ref){return require$$0.createElement(IconBase,Object.assign({},props,{id:"details-single",ref,icon:element$1}))});DetailsSingle.displayName="DetailsSingle";var element={tag:"svg",attrs:{fill:"none",viewBox:"0 0 16 16",width:"1em",height:"1em"},children:[{tag:"path",attrs:{fill:"currentColor",d:"M5.90913 3.57564C6.14345 3.34132 6.52335 3.34132 6.75766 3.57564L10.7577 7.57564C10.992 7.80995 10.992 8.18985 10.7577 8.42417L6.75766 12.4242C6.52335 12.6585 6.14345 12.6585 5.90913 12.4242C5.67482 12.1899 5.67482 11.81 5.90913 11.5756L9.48487 7.9999L5.90913 4.42417C5.67482 4.18985 5.67482 3.80995 5.90913 3.57564Z",fillRule:"evenodd",clipRule:"evenodd"}}]},MoreSingle=require$$0.forwardRef(function(props,ref){return require$$0.createElement(IconBase,Object.assign({},props,{id:"more-single",ref,icon:element}))});MoreSingle.displayName="MoreSingle";function getFunctionTypeValues(enumObj,localeService){return Object.keys(enumObj).filter(key=>isNaN(Number(key))&&key!=="DefinedName").map(key=>({label:localeService.t(`formula.functionType.${key.toLocaleLowerCase()}`),value:`${enumObj[key]}`}))}__name(getFunctionTypeValues,"getFunctionTypeValues");function getFunctionName(item,localeService){let functionName="";return item.aliasFunctionName?(functionName=localeService.t(item.aliasFunctionName),functionName===item.aliasFunctionName&&(functionName=item.functionName)):functionName=item.functionName,functionName}__name(getFunctionName,"getFunctionName");function generateParam(param){if(!param.require&&!param.repeat)return`[${param.name}]`;if(param.require&&!param.repeat)return param.name;if(!param.require&&param.repeat)return`[${param.name},...]`;if(param.require&&param.repeat)return`${param.name},...`}__name(generateParam,"generateParam");const useResizeScrollObserver=__name((callback,delay=100)=>{require$$0.useEffect(()=>{let throttleTimeout=null;const throttledCallback=__name(()=>{throttleTimeout===null&&(throttleTimeout=window.setTimeout(()=>{callback(),throttleTimeout=null},delay))},"throttledCallback");return window.addEventListener("scroll",throttledCallback),window.addEventListener("resize",throttledCallback),()=>{throttleTimeout!==null&&clearTimeout(throttleTimeout),window.removeEventListener("scroll",throttledCallback),window.removeEventListener("resize",throttledCallback)}},[callback,delay])},"useResizeScrollObserver"),formulaHelpFunction="univer-formula-help-function",formulaHelpFunctionTitle="univer-formula-help-function-title",formulaHelpFunctionTitleIcons="univer-formula-help-function-title-icons",formulaHelpFunctionTitleIcon="univer-formula-help-function-title-icon",formulaHelpFunctionContent="univer-formula-help-function-content",formulaHelpFunctionContentInner="univer-formula-help-function-content-inner",formulaHelpFunctionContentParams="univer-formula-help-function-content-params",formulaHelpFunctionContentParamsTitle="univer-formula-help-function-content-params-title",formulaHelpFunctionContentParamsDetail="univer-formula-help-function-content-params-detail",formulaHelpFunctionActive="univer-formula-help-function-active",formulaHelpDecorator="univer-formula-help-decorator",formulaHelpParam="univer-formula-help-param",formulaHelpParamPrefix="univer-formula-help-param-prefix",formulaHelpParamItem="univer-formula-help-param-item",formulaHelpParamActive="univer-formula-help-param-active",styles$5={formulaHelpFunction,formulaHelpFunctionTitle,formulaHelpFunctionTitleIcons,formulaHelpFunctionTitleIcon,formulaHelpFunctionContent,formulaHelpFunctionContentInner,formulaHelpFunctionContentParams,formulaHelpFunctionContentParamsTitle,formulaHelpFunctionContentParamsDetail,formulaHelpFunctionActive,formulaHelpDecorator,formulaHelpParam,formulaHelpParamPrefix,formulaHelpParamItem,formulaHelpParamActive};function HelpFunction(){const[visible,setVisible]=require$$0.useState(!1),[contentVisible,setContentVisible]=require$$0.useState(!0),[helpVisible,setHelpVisible]=require$$0.useState(!0),[paramIndex,setParamIndex]=require$$0.useState(0),[offset,setOffset]=require$$0.useState([0,0]),[decoratorPosition,setDecoratorPosition]=require$$0.useState({left:0,top:0}),[functionInfo,setFunctionInfo]=require$$0.useState(null),promptService=core.useDependency(IFormulaPromptService),localeService=core.useDependency(core.LocaleService),required=localeService.t("formula.prompt.required"),optional=localeService.t("formula.prompt.optional"),univerInstanceService=core.useDependency(core.IUniverInstanceService),editorService=core.useDependency(docsUi.IEditorService),sidebarService=core.useDependency(ui.ISidebarService),injector=core.useInjector();useResizeScrollObserver(updatePosition),require$$0.useEffect(()=>{const subscription=promptService.help$.subscribe(params=>{const{visible:visible2,paramIndex:paramIndex2,functionInfo:functionInfo2}=params;if(!visible2){setVisible(visible2);return}const position=getPosition();if(position==null)return;const{left,top,height}=position;functionInfo2.description===""&&functionInfo2.functionParameter.length===0||(setOffset([left,top+height]),setParamIndex(paramIndex2),setFunctionInfo(functionInfo2),setDecoratorPosition({left,top}),setVisible(visible2))}),sidebarSubscription=sidebarService.scrollEvent$.pipe(rxjs.throttleTime(100)).subscribe(updatePosition);return()=>{subscription==null||subscription.unsubscribe(),sidebarSubscription.unsubscribe()}},[]);function updatePosition(){if(!helpVisible)return;const position=getPosition();if(position==null)return;const{left,top,height}=position;setOffset([left,top+height])}__name(updatePosition,"updatePosition");function getPosition(){const documentDataModel=univerInstanceService.getCurrentUniverDocInstance();if(!documentDataModel)return;const editorUnitId=documentDataModel.getUnitId();if(!editorService.isEditor(editorUnitId))return;const editor=editorService.getEditor(editorUnitId);return editor==null?void 0:editor.getBoundingClientRect()}__name(getPosition,"getPosition");function handleSwitchActive(paramIndex2){setParamIndex(paramIndex2)}__name(handleSwitchActive,"handleSwitchActive");function handleClose(){setHelpVisible(!helpVisible),injector.get(ui.ILayoutService).focus()}return __name(handleClose,"handleClose"),jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment,{children:helpVisible?jsxRuntimeExports.jsx(design.Popup,{visible,offset,children:functionInfo?jsxRuntimeExports.jsxs("div",{className:styles$5.formulaHelpFunction,children:[jsxRuntimeExports.jsxs("div",{className:styles$5.formulaHelpFunctionTitle,children:[jsxRuntimeExports.jsx(Help,{prefix:functionInfo.functionName,value:functionInfo.functionParameter,active:paramIndex,onClick:handleSwitchActive}),jsxRuntimeExports.jsxs("div",{className:styles$5.formulaHelpFunctionTitleIcons,children:[jsxRuntimeExports.jsx("div",{className:styles$5.formulaHelpFunctionTitleIcon,style:{transform:contentVisible?"rotateZ(-90deg)":"rotateZ(90deg)"},onClick:__name(()=>setContentVisible(!contentVisible),"onClick"),children:jsxRuntimeExports.jsx(MoreSingle,{})}),jsxRuntimeExports.jsx("div",{className:styles$5.formulaHelpFunctionTitleIcon,onClick:handleClose,children:jsxRuntimeExports.jsx(CloseSingle,{})})]})]}),jsxRuntimeExports.jsx("div",{className:styles$5.formulaHelpFunctionContent,style:{height:contentVisible?"unset":0,padding:contentVisible?"revert-layer":0},children:jsxRuntimeExports.jsxs("div",{className:styles$5.formulaHelpFunctionContentInner,children:[jsxRuntimeExports.jsx(Params,{title:localeService.t("formula.prompt.helpExample"),value:`${functionInfo.functionName}(${functionInfo.functionParameter.map(item=>item.example).join(",")})`}),jsxRuntimeExports.jsx(Params,{title:localeService.t("formula.prompt.helpAbstract"),value:functionInfo.description}),functionInfo&&functionInfo.functionParameter&&functionInfo.functionParameter.map((item,i)=>jsxRuntimeExports.jsx(Params,{className:paramIndex===i?styles$5.formulaHelpFunctionActive:"",title:item.name,value:`${item.require?required:optional} ${item.detail}`},i))]})})]}):jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment,{})}):visible?jsxRuntimeExports.jsx("div",{className:styles$5.formulaHelpDecorator,onClick:__name(()=>setHelpVisible(!helpVisible),"onClick"),style:{left:decoratorPosition.left-24,top:decoratorPosition.top},children:jsxRuntimeExports.jsx(DetailsSingle,{})}):jsxRuntimeExports.jsx(jsxRuntimeExports.Fragment,{})})}__name(HelpFunction,"HelpFunction");const Params=__name(props=>jsxRuntimeExports.jsxs("div",{className:styles$5.formulaHelpFunctionContentParams,children:[jsxRuntimeExports.jsx("div",{className:`${styles$5.formulaHelpFunctionContentParamsTitle} ${props.className}`,children:props.title}),jsxRuntimeExports.jsx("div",{className:styles$5.formulaHelpFunctionContentParamsDetail,children:props.value})]}),"Params"),Help=__name(props=>{const{prefix,value,active,onClick}=props;return jsxRuntimeExports.jsxs("div",{className:styles$5.formulaHelpParam,children:[jsxRuntimeExports.jsxs("span",{className:styles$5.formulaHelpParamPrefix,children:[prefix,"("]}),value&&value.map((item,i)=>jsxRuntimeExports.jsxs("span",{className:styles$5.formulaHelpParamItem,children:[jsxRuntimeExports.jsx("span",{className:active===i?styles$5.formulaHelpFunctionActive:styles$5.formulaHelpParamActive,onClick:__name(()=>onClick(i),"onClick"),children:generateParam(item)}),i===value.length-1?"":","]},i)),")"]})},"Help"),formulaSearchFunction="univer-formula-search-function",formulaSearchFunctionItem="univer-formula-search-function-item",formulaSearchFunctionItemName="univer-formula-search-function-item-name",formulaSearchFunctionItemNameLight="univer-formula-search-function-item-name-light",formulaSearchFunctionItemDesc="univer-formula-search-function-item-desc",formulaSearchFunctionItemActive="univer-formula-search-function-item-active",styles$4={formulaSearchFunction,formulaSearchFunctionItem,formulaSearchFunctionItemName,formulaSearchFunctionItemNameLight,formulaSearchFunctionItemDesc,formulaSearchFunctionItemActive};function SearchFunction(){const[visible,setVisible]=require$$0.useState(!1),[active,setActive]=require$$0.useState(0),[offset,setOffset]=require$$0.useState([0,0]),[searchList,setSearchList]=require$$0.useState([]),[searchText,setSearchText]=require$$0.useState(""),ulRef=require$$0.useRef(null),promptService=core.useDependency(IFormulaPromptService),univerInstanceService=core.useDependency(core.IUniverInstanceService),editorService=core.useDependency(docsUi.IEditorService);require$$0.useEffect(()=>{let updatedSearchList=[],updatedActive=0;const subscribeSearch=promptService.search$.subscribe(params=>{const{visible:visible2,searchText:searchText2,searchList:searchList2}=params;if(!visible2){setVisible(visible2);return}const position=getPosition();if(position==null)return;const{left,top,height}=position;setSearchText(searchText2),setSearchList(searchList2),updatedSearchList=searchList2,setOffset([left,top+height]),setVisible(visible2),setActive(0),updatedActive=0}),subscribeNavigate=promptService.navigate$.subscribe(params=>{const{direction}=params;if(direction===core.Direction.UP){let nextActive=updatedActive-1;nextActive=nextActive<0?updatedSearchList.length-1:nextActive,setActive(nextActive),updatedActive=nextActive}else if(direction===core.Direction.DOWN){let nextActive=updatedActive+1;nextActive=nextActive>=updatedSearchList.length?0:nextActive,setActive(nextActive),updatedActive=nextActive}scrollToVisible(updatedActive)}),subscribeAccept=promptService.accept$.subscribe(params=>{const functionName=updatedSearchList[updatedActive].name;promptService.acceptFormulaName(functionName)});return()=>{subscribeSearch==null||subscribeSearch.unsubscribe(),subscribeNavigate==null||subscribeNavigate.unsubscribe(),subscribeAccept==null||subscribeAccept.unsubscribe()}},[]);function getPosition(){const editorUnitId=univerInstanceService.getCurrentUniverDocInstance().getUnitId();if(!editorService.isEditor(editorUnitId))return;const editor=editorService.getEditor(editorUnitId);return editor==null?void 0:editor.getBoundingClientRect()}__name(getPosition,"getPosition");function handleLiMouseEnter(index){setActive(index)}__name(handleLiMouseEnter,"handleLiMouseEnter");function handleLiMouseLeave(){setActive(-1)}__name(handleLiMouseLeave,"handleLiMouseLeave");function scrollToVisible(liIndex){var _a23;const liElement=(_a23=ulRef.current)==null?void 0:_a23.querySelectorAll(`.${styles$4.formulaSearchFunctionItem}`)[liIndex];if(!liElement)return;const ulElement=liElement.parentNode;if(!ulElement)return;const ulTop=ulElement.getBoundingClientRect().top,ulHeight=ulElement.offsetHeight,liRect=liElement.getBoundingClientRect(),liTop=liRect.top,liHeight=liRect.height;if(liTop>=0&&liTop>ulTop&&liTop-ulTop+liHeight<=ulHeight)return;const scrollTo=liElement.offsetTop-(ulHeight-liHeight)/2;ulElement.scrollTo({top:scrollTo,behavior:"smooth"})}return __name(scrollToVisible,"scrollToVisible"),searchList.length>0&&jsxRuntimeExports.jsx(design.Popup,{visible,offset,children:jsxRuntimeExports.jsx("ul",{className:styles$4.formulaSearchFunction,ref:ulRef,children:searchList.map((item,index)=>jsxRuntimeExports.jsxs("li",{className:active===index?`${styles$4.formulaSearchFunctionItem} ${styles$4.formulaSearchFunctionItemActive}`:styles$4.formulaSearchFunctionItem,onMouseEnter:__name(()=>handleLiMouseEnter(index),"onMouseEnter"),onMouseLeave:handleLiMouseLeave,onClick:__name(()=>promptService.acceptFormulaName(item.name),"onClick"),children:[jsxRuntimeExports.jsxs("span",{className:styles$4.formulaSearchFunctionItemName,children:[jsxRuntimeExports.jsx("span",{className:styles$4.formulaSearchFunctionItemNameLight,children:item.name.substring(0,searchText.length)}),jsxRuntimeExports.jsx("span",{children:item.name.slice(searchText.length)})]}),jsxRuntimeExports.jsx("span",{className:styles$4.formulaSearchFunctionItemDesc,children:item.desc})]},index))})})}__name(SearchFunction,"SearchFunction");function RenderFormulaPromptContent(){return jsxRuntimeExports.jsxs(jsxRuntimeExports.Fragment,{children:[jsxRuntimeExports.jsx(SearchFunction,{}),jsxRuntimeExports.jsx(HelpFunction,{})]})}__name(RenderFormulaPromptContent,"RenderFormulaPromptContent");const formulaMoreFunctions="univer-formula-more-functions",formulaMoreFunctionsOperation="univer-formula-more-functions-operation",styles$3={formulaMoreFunctions,formulaMoreFunctionsOperation};function FunctionHelp(props){const{prefix,value}=props;return jsxRuntimeExports.jsxs("div",{children:[jsxRuntimeExports.jsxs("span",{children:[prefix,"("]}),value&&value.map((item,i)=>jsxRuntimeExports.jsxs("span",{children:[jsxRuntimeExports.jsx("span",{children:generateParam(item)}),i===value.length-1?"":","]},i)),")"]})}__name(FunctionHelp,"FunctionHelp");const formulaFunctionParams="univer-formula-function-params",formulaFunctionParamsTitle="univer-formula-function-params-title",formulaFunctionParamsDetail="univer-formula-function-params-detail",styles$2={formulaFunctionParams,formulaFunctionParamsTitle,formulaFunctionParamsDetail};function FunctionParams(props){const{className,value,title}=props;return jsxRuntimeExports.jsxs("div",{className:styles$2.formulaFunctionParams,children:[jsxRuntimeExports.jsx("div",{className:`${styles$2.formulaFunctionParamsTitle} ${className}`,children:title}),jsxRuntimeExports.jsx("div",{className:styles$2.formulaFunctionParamsDetail,children:value})]})}__name(FunctionParams,"FunctionParams");const formulaInputParamsList="univer-formula-input-params-list",formulaInputParamsListItemName="univer-formula-input-params-list-item-name",formulaInputParamsListItemSelector="univer-formula-input-params-list-item-selector",styles$1={formulaInputParamsList,formulaInputParamsListItemName,formulaInputParamsListItemSelector};function InputParams(props){const{functionInfo,onChange}=props;if(!functionInfo)return null;require$$0.useState([]);const[functionParameter,setFunctionParameter]=require$$0.useState(functionInfo.functionParameter),[activeIndex,setActiveIndex]=require$$0.useState(-1);return jsxRuntimeExports.jsxs("div",{className:styles$1.formulaInputParams,children:[jsxRuntimeExports.jsx("div",{className:styles$1.formulaInputParamsList,children:functionParameter.map((item,i)=>jsxRuntimeExports.jsxs("div",{children:[jsxRuntimeExports.jsx("div",{className:styles$1.formulaInputParamsListItemName,children:item.name}),jsxRuntimeExports.jsx("div",{className:styles$1.formulaInputParamsListItemSelector})]},i))}),jsxRuntimeExports.jsx("div",{className:styles$1.formulaInputParamsInfo,children:jsxRuntimeExports.jsx(FunctionParams,{title:activeIndex===-1?jsxRuntimeExports.jsx(FunctionHelp,{prefix:functionInfo.functionName,value:functionParameter}):functionParameter[activeIndex].name,value:activeIndex===-1?functionInfo.description:functionParameter[activeIndex].detail})})]})}__name(InputParams,"InputParams");const PLUGIN_CONFIG_KEY_BASE="sheets-formula.base.config",defaultPluginBaseConfig={},PLUGIN_CONFIG_KEY_REMOTE="sheets-formula.remote.config",defaultPluginRemoteConfig={},PLUGIN_CONFIG_KEY_MOBILE="sheets-formula.mobile.config",defaultPluginMobileConfig={},FUNCTION_LIST_ARRAY=[],FUNCTION_LIST_COMPATIBILITY=[{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.BETADIST,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.BETADIST.description",abstract:"formula.functionList.BETADIST.abstract",functionParameter:[{name:"formula.functionList.BETADIST.functionParameter.x.name",detail:"formula.functionList.BETADIST.functionParameter.x.detail",example:"2",require:1,repeat:0},{name:"formula.functionList.BETADIST.functionParameter.alpha.name",detail:"formula.functionList.BETADIST.functionParameter.alpha.detail",example:"8",require:1,repeat:0},{name:"formula.functionList.BETADIST.functionParameter.beta.name",detail:"formula.functionList.BETADIST.functionParameter.beta.detail",example:"10",require:1,repeat:0},{name:"formula.functionList.BETADIST.functionParameter.A.name",detail:"formula.functionList.BETADIST.functionParameter.A.detail",example:"1",require:0,repeat:0},{name:"formula.functionList.BETADIST.functionParameter.B.name",detail:"formula.functionList.BETADIST.functionParameter.B.detail",example:"3",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.BETAINV,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.BETAINV.description",abstract:"formula.functionList.BETAINV.abstract",functionParameter:[{name:"formula.functionList.BETAINV.functionParameter.probability.name",detail:"formula.functionList.BETAINV.functionParameter.probability.detail",example:"0.685470581",require:1,repeat:0},{name:"formula.functionList.BETAINV.functionParameter.alpha.name",detail:"formula.functionList.BETAINV.functionParameter.alpha.detail",example:"8",require:1,repeat:0},{name:"formula.functionList.BETAINV.functionParameter.beta.name",detail:"formula.functionList.BETAINV.functionParameter.beta.detail",example:"10",require:1,repeat:0},{name:"formula.functionList.BETAINV.functionParameter.A.name",detail:"formula.functionList.BETAINV.functionParameter.A.detail",example:"1",require:0,repeat:0},{name:"formula.functionList.BETAINV.functionParameter.B.name",detail:"formula.functionList.BETAINV.functionParameter.B.detail",example:"3",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.BINOMDIST,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.BINOMDIST.description",abstract:"formula.functionList.BINOMDIST.abstract",functionParameter:[{name:"formula.functionList.BINOMDIST.functionParameter.numberS.name",detail:"formula.functionList.BINOMDIST.functionParameter.numberS.detail",example:"6",require:1,repeat:0},{name:"formula.functionList.BINOMDIST.functionParameter.trials.name",detail:"formula.functionList.BINOMDIST.functionParameter.trials.detail",example:"10",require:1,repeat:0},{name:"formula.functionList.BINOMDIST.functionParameter.probabilityS.name",detail:"formula.functionList.BINOMDIST.functionParameter.probabilityS.detail",example:"0.5",require:1,repeat:0},{name:"formula.functionList.BINOMDIST.functionParameter.cumulative.name",detail:"formula.functionList.BINOMDIST.functionParameter.cumulative.detail",example:"false",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.CHIDIST,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.CHIDIST.description",abstract:"formula.functionList.CHIDIST.abstract",functionParameter:[{name:"formula.functionList.CHIDIST.functionParameter.x.name",detail:"formula.functionList.CHIDIST.functionParameter.x.detail",example:"0.5",require:1,repeat:0},{name:"formula.functionList.CHIDIST.functionParameter.degFreedom.name",detail:"formula.functionList.CHIDIST.functionParameter.degFreedom.detail",example:"1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.CHIINV,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.CHIINV.description",abstract:"formula.functionList.CHIINV.abstract",functionParameter:[{name:"formula.functionList.CHIINV.functionParameter.probability.name",detail:"formula.functionList.CHIINV.functionParameter.probability.detail",example:"0.93",require:1,repeat:0},{name:"formula.functionList.CHIINV.functionParameter.degFreedom.name",detail:"formula.functionList.CHIINV.functionParameter.degFreedom.detail",example:"1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.CHITEST,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.CHITEST.description",abstract:"formula.functionList.CHITEST.abstract",functionParameter:[{name:"formula.functionList.CHITEST.functionParameter.actualRange.name",detail:"formula.functionList.CHITEST.functionParameter.actualRange.detail",example:"{58,35;11,25;10,23}",require:1,repeat:0},{name:"formula.functionList.CHITEST.functionParameter.expectedRange.name",detail:"formula.functionList.CHITEST.functionParameter.expectedRange.detail",example:"{45.35,47.65;17.56,18.44;16.09,16.91}",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.CONFIDENCE,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.CONFIDENCE.description",abstract:"formula.functionList.CONFIDENCE.abstract",functionParameter:[{name:"formula.functionList.CONFIDENCE.functionParameter.alpha.name",detail:"formula.functionList.CONFIDENCE.functionParameter.alpha.detail",example:"0.05",require:1,repeat:0},{name:"formula.functionList.CONFIDENCE.functionParameter.standardDev.name",detail:"formula.functionList.CONFIDENCE.functionParameter.standardDev.detail",example:"2.5",require:1,repeat:0},{name:"formula.functionList.CONFIDENCE.functionParameter.size.name",detail:"formula.functionList.CONFIDENCE.functionParameter.size.detail",example:"50",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.COVAR,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.COVAR.description",abstract:"formula.functionList.COVAR.abstract",functionParameter:[{name:"formula.functionList.COVAR.functionParameter.array1.name",detail:"formula.functionList.COVAR.functionParameter.array1.detail",example:"{3,2,4,5,6}",require:1,repeat:0},{name:"formula.functionList.COVAR.functionParameter.array2.name",detail:"formula.functionList.COVAR.functionParameter.array2.detail",example:"{9,7,12,15,17}",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.CRITBINOM,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.CRITBINOM.description",abstract:"formula.functionList.CRITBINOM.abstract",functionParameter:[{name:"formula.functionList.CRITBINOM.functionParameter.trials.name",detail:"formula.functionList.CRITBINOM.functionParameter.trials.detail",example:"6",require:1,repeat:0},{name:"formula.functionList.CRITBINOM.functionParameter.probabilityS.name",detail:"formula.functionList.CRITBINOM.functionParameter.probabilityS.detail",example:"0.5",require:1,repeat:0},{name:"formula.functionList.CRITBINOM.functionParameter.alpha.name",detail:"formula.functionList.CRITBINOM.functionParameter.alpha.detail",example:"0.75",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.EXPONDIST,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.EXPONDIST.description",abstract:"formula.functionList.EXPONDIST.abstract",functionParameter:[{name:"formula.functionList.EXPONDIST.functionParameter.x.name",detail:"formula.functionList.EXPONDIST.functionParameter.x.detail",example:"0.2",require:1,repeat:0},{name:"formula.functionList.EXPONDIST.functionParameter.lambda.name",detail:"formula.functionList.EXPONDIST.functionParameter.lambda.detail",example:"10",require:1,repeat:0},{name:"formula.functionList.EXPONDIST.functionParameter.cumulative.name",detail:"formula.functionList.EXPONDIST.functionParameter.cumulative.detail",example:"true",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.FDIST,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.FDIST.description",abstract:"formula.functionList.FDIST.abstract",functionParameter:[{name:"formula.functionList.FDIST.functionParameter.x.name",detail:"formula.functionList.FDIST.functionParameter.x.detail",example:"15.2069",require:1,repeat:0},{name:"formula.functionList.FDIST.functionParameter.degFreedom1.name",detail:"formula.functionList.FDIST.functionParameter.degFreedom1.detail",example:"6",require:1,repeat:0},{name:"formula.functionList.FDIST.functionParameter.degFreedom2.name",detail:"formula.functionList.FDIST.functionParameter.degFreedom2.detail",example:"4",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.FINV,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.FINV.description",abstract:"formula.functionList.FINV.abstract",functionParameter:[{name:"formula.functionList.FINV.functionParameter.probability.name",detail:"formula.functionList.FINV.functionParameter.probability.detail",example:"0.01",require:1,repeat:0},{name:"formula.functionList.FINV.functionParameter.degFreedom1.name",detail:"formula.functionList.FINV.functionParameter.degFreedom1.detail",example:"6",require:1,repeat:0},{name:"formula.functionList.FINV.functionParameter.degFreedom2.name",detail:"formula.functionList.FINV.functionParameter.degFreedom2.detail",example:"4",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.FTEST,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.FTEST.description",abstract:"formula.functionList.FTEST.abstract",functionParameter:[{name:"formula.functionList.FTEST.functionParameter.array1.name",detail:"formula.functionList.FTEST.functionParameter.array1.detail",example:"{58,35;11,25;10,23}",require:1,repeat:0},{name:"formula.functionList.FTEST.functionParameter.array2.name",detail:"formula.functionList.FTEST.functionParameter.array2.detail",example:"{45.35,47.65;17.56,18.44;16.09,16.91}",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.GAMMADIST,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.GAMMADIST.description",abstract:"formula.functionList.GAMMADIST.abstract",functionParameter:[{name:"formula.functionList.GAMMADIST.functionParameter.number1.name",detail:"formula.functionList.GAMMADIST.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.GAMMADIST.functionParameter.number2.name",detail:"formula.functionList.GAMMADIST.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.GAMMAINV,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.GAMMAINV.description",abstract:"formula.functionList.GAMMAINV.abstract",functionParameter:[{name:"formula.functionList.GAMMAINV.functionParameter.number1.name",detail:"formula.functionList.GAMMAINV.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.GAMMAINV.functionParameter.number2.name",detail:"formula.functionList.GAMMAINV.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.HYPGEOMDIST,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.HYPGEOMDIST.description",abstract:"formula.functionList.HYPGEOMDIST.abstract",functionParameter:[{name:"formula.functionList.HYPGEOMDIST.functionParameter.number1.name",detail:"formula.functionList.HYPGEOMDIST.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.HYPGEOMDIST.functionParameter.number2.name",detail:"formula.functionList.HYPGEOMDIST.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.LOGINV,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.LOGINV.description",abstract:"formula.functionList.LOGINV.abstract",functionParameter:[{name:"formula.functionList.LOGINV.functionParameter.number1.name",detail:"formula.functionList.LOGINV.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.LOGINV.functionParameter.number2.name",detail:"formula.functionList.LOGINV.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.LOGNORMDIST,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.LOGNORMDIST.description",abstract:"formula.functionList.LOGNORMDIST.abstract",functionParameter:[{name:"formula.functionList.LOGNORMDIST.functionParameter.number1.name",detail:"formula.functionList.LOGNORMDIST.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.LOGNORMDIST.functionParameter.number2.name",detail:"formula.functionList.LOGNORMDIST.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.MODE,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.MODE.description",abstract:"formula.functionList.MODE.abstract",functionParameter:[{name:"formula.functionList.MODE.functionParameter.number1.name",detail:"formula.functionList.MODE.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.MODE.functionParameter.number2.name",detail:"formula.functionList.MODE.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.NEGBINOMDIST,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.NEGBINOMDIST.description",abstract:"formula.functionList.NEGBINOMDIST.abstract",functionParameter:[{name:"formula.functionList.NEGBINOMDIST.functionParameter.number1.name",detail:"formula.functionList.NEGBINOMDIST.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.NEGBINOMDIST.functionParameter.number2.name",detail:"formula.functionList.NEGBINOMDIST.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.NORMDIST,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.NORMDIST.description",abstract:"formula.functionList.NORMDIST.abstract",functionParameter:[{name:"formula.functionList.NORMDIST.functionParameter.x.name",detail:"formula.functionList.NORMDIST.functionParameter.x.detail",example:"42",require:1,repeat:0},{name:"formula.functionList.NORMDIST.functionParameter.mean.name",detail:"formula.functionList.NORMDIST.functionParameter.mean.detail",example:"40",require:1,repeat:0},{name:"formula.functionList.NORMDIST.functionParameter.standardDev.name",detail:"formula.functionList.NORMDIST.functionParameter.standardDev.detail",example:"1.5",require:1,repeat:0},{name:"formula.functionList.NORMDIST.functionParameter.cumulative.name",detail:"formula.functionList.NORMDIST.functionParameter.cumulative.detail",example:"true",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.NORMINV,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.NORMINV.description",abstract:"formula.functionList.NORMINV.abstract",functionParameter:[{name:"formula.functionList.NORMINV.functionParameter.probability.name",detail:"formula.functionList.NORMINV.functionParameter.probability.detail",example:"0.908789",require:1,repeat:0},{name:"formula.functionList.NORMINV.functionParameter.mean.name",detail:"formula.functionList.NORMINV.functionParameter.mean.detail",example:"40",require:1,repeat:0},{name:"formula.functionList.NORMINV.functionParameter.standardDev.name",detail:"formula.functionList.NORMINV.functionParameter.standardDev.detail",example:"1.5",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.NORMSDIST,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.NORMSDIST.description",abstract:"formula.functionList.NORMSDIST.abstract",functionParameter:[{name:"formula.functionList.NORMSDIST.functionParameter.z.name",detail:"formula.functionList.NORMSDIST.functionParameter.z.detail",example:"1.333333",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.NORMSINV,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.NORMSINV.description",abstract:"formula.functionList.NORMSINV.abstract",functionParameter:[{name:"formula.functionList.NORMSINV.functionParameter.probability.name",detail:"formula.functionList.NORMSINV.functionParameter.probability.detail",example:"0.908789",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.PERCENTILE,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.PERCENTILE.description",abstract:"formula.functionList.PERCENTILE.abstract",functionParameter:[{name:"formula.functionList.PERCENTILE.functionParameter.number1.name",detail:"formula.functionList.PERCENTILE.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.PERCENTILE.functionParameter.number2.name",detail:"formula.functionList.PERCENTILE.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.PERCENTRANK,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.PERCENTRANK.description",abstract:"formula.functionList.PERCENTRANK.abstract",functionParameter:[{name:"formula.functionList.PERCENTRANK.functionParameter.number1.name",detail:"formula.functionList.PERCENTRANK.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.PERCENTRANK.functionParameter.number2.name",detail:"formula.functionList.PERCENTRANK.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.POISSON,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.POISSON.description",abstract:"formula.functionList.POISSON.abstract",functionParameter:[{name:"formula.functionList.POISSON.functionParameter.number1.name",detail:"formula.functionList.POISSON.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.POISSON.functionParameter.number2.name",detail:"formula.functionList.POISSON.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.QUARTILE,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.QUARTILE.description",abstract:"formula.functionList.QUARTILE.abstract",functionParameter:[{name:"formula.functionList.QUARTILE.functionParameter.number1.name",detail:"formula.functionList.QUARTILE.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.QUARTILE.functionParameter.number2.name",detail:"formula.functionList.QUARTILE.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.RANK,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.RANK.description",abstract:"formula.functionList.RANK.abstract",functionParameter:[{name:"formula.functionList.RANK.functionParameter.number.name",detail:"formula.functionList.RANK.functionParameter.number.detail",example:"A3",require:1,repeat:0},{name:"formula.functionList.RANK.functionParameter.ref.name",detail:"formula.functionList.RANK.functionParameter.ref.detail",example:"A2:A6",require:1,repeat:0},{name:"formula.functionList.RANK.functionParameter.order.name",detail:"formula.functionList.RANK.functionParameter.order.detail",example:"1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.STDEV,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.STDEV.description",abstract:"formula.functionList.STDEV.abstract",functionParameter:[{name:"formula.functionList.STDEV.functionParameter.number1.name",detail:"formula.functionList.STDEV.functionParameter.number1.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.STDEV.functionParameter.number2.name",detail:"formula.functionList.STDEV.functionParameter.number2.detail",example:"2",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.STDEVP,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.STDEVP.description",abstract:"formula.functionList.STDEVP.abstract",functionParameter:[{name:"formula.functionList.STDEVP.functionParameter.number1.name",detail:"formula.functionList.STDEVP.functionParameter.number1.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.STDEVP.functionParameter.number2.name",detail:"formula.functionList.STDEVP.functionParameter.number2.detail",example:"2",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.TDIST,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.TDIST.description",abstract:"formula.functionList.TDIST.abstract",functionParameter:[{name:"formula.functionList.TDIST.functionParameter.number1.name",detail:"formula.functionList.TDIST.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.TDIST.functionParameter.number2.name",detail:"formula.functionList.TDIST.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.TINV,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.TINV.description",abstract:"formula.functionList.TINV.abstract",functionParameter:[{name:"formula.functionList.TINV.functionParameter.number1.name",detail:"formula.functionList.TINV.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.TINV.functionParameter.number2.name",detail:"formula.functionList.TINV.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.TTEST,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.TTEST.description",abstract:"formula.functionList.TTEST.abstract",functionParameter:[{name:"formula.functionList.TTEST.functionParameter.number1.name",detail:"formula.functionList.TTEST.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.TTEST.functionParameter.number2.name",detail:"formula.functionList.TTEST.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.VAR,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.VAR.description",abstract:"formula.functionList.VAR.abstract",functionParameter:[{name:"formula.functionList.VAR.functionParameter.number1.name",detail:"formula.functionList.VAR.functionParameter.number1.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.VAR.functionParameter.number2.name",detail:"formula.functionList.VAR.functionParameter.number2.detail",example:"2",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.VARP,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.VARP.description",abstract:"formula.functionList.VARP.abstract",functionParameter:[{name:"formula.functionList.VARP.functionParameter.number1.name",detail:"formula.functionList.VARP.functionParameter.number1.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.VARP.functionParameter.number2.name",detail:"formula.functionList.VARP.functionParameter.number2.detail",example:"2",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.WEIBULL,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.WEIBULL.description",abstract:"formula.functionList.WEIBULL.abstract",functionParameter:[{name:"formula.functionList.WEIBULL.functionParameter.number1.name",detail:"formula.functionList.WEIBULL.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.WEIBULL.functionParameter.number2.name",detail:"formula.functionList.WEIBULL.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_COMPATIBILITY.ZTEST,functionType:engineFormula.FunctionType.Compatibility,description:"formula.functionList.ZTEST.description",abstract:"formula.functionList.ZTEST.abstract",functionParameter:[{name:"formula.functionList.ZTEST.functionParameter.number1.name",detail:"formula.functionList.ZTEST.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.ZTEST.functionParameter.number2.name",detail:"formula.functionList.ZTEST.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]}],FUNCTION_LIST_CUBE=[{functionName:engineFormula.FUNCTION_NAMES_CUBE.CUBEKPIMEMBER,functionType:engineFormula.FunctionType.Cube,description:"formula.functionList.CUBEKPIMEMBER.description",abstract:"formula.functionList.CUBEKPIMEMBER.abstract",functionParameter:[{name:"formula.functionList.CUBEKPIMEMBER.functionParameter.number1.name",detail:"formula.functionList.CUBEKPIMEMBER.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.CUBEKPIMEMBER.functionParameter.number2.name",detail:"formula.functionList.CUBEKPIMEMBER.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_CUBE.CUBEMEMBER,functionType:engineFormula.FunctionType.Cube,description:"formula.functionList.CUBEMEMBER.description",abstract:"formula.functionList.CUBEMEMBER.abstract",functionParameter:[{name:"formula.functionList.CUBEMEMBER.functionParameter.number1.name",detail:"formula.functionList.CUBEMEMBER.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.CUBEMEMBER.functionParameter.number2.name",detail:"formula.functionList.CUBEMEMBER.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_CUBE.CUBEMEMBERPROPERTY,functionType:engineFormula.FunctionType.Cube,description:"formula.functionList.CUBEMEMBERPROPERTY.description",abstract:"formula.functionList.CUBEMEMBERPROPERTY.abstract",functionParameter:[{name:"formula.functionList.CUBEMEMBERPROPERTY.functionParameter.number1.name",detail:"formula.functionList.CUBEMEMBERPROPERTY.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.CUBEMEMBERPROPERTY.functionParameter.number2.name",detail:"formula.functionList.CUBEMEMBERPROPERTY.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_CUBE.CUBERANKEDMEMBER,functionType:engineFormula.FunctionType.Cube,description:"formula.functionList.CUBERANKEDMEMBER.description",abstract:"formula.functionList.CUBERANKEDMEMBER.abstract",functionParameter:[{name:"formula.functionList.CUBERANKEDMEMBER.functionParameter.number1.name",detail:"formula.functionList.CUBERANKEDMEMBER.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.CUBERANKEDMEMBER.functionParameter.number2.name",detail:"formula.functionList.CUBERANKEDMEMBER.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_CUBE.CUBESET,functionType:engineFormula.FunctionType.Cube,description:"formula.functionList.CUBESET.description",abstract:"formula.functionList.CUBESET.abstract",functionParameter:[{name:"formula.functionList.CUBESET.functionParameter.number1.name",detail:"formula.functionList.CUBESET.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.CUBESET.functionParameter.number2.name",detail:"formula.functionList.CUBESET.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_CUBE.CUBESETCOUNT,functionType:engineFormula.FunctionType.Cube,description:"formula.functionList.CUBESETCOUNT.description",abstract:"formula.functionList.CUBESETCOUNT.abstract",functionParameter:[{name:"formula.functionList.CUBESETCOUNT.functionParameter.number1.name",detail:"formula.functionList.CUBESETCOUNT.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.CUBESETCOUNT.functionParameter.number2.name",detail:"formula.functionList.CUBESETCOUNT.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_CUBE.CUBEVALUE,functionType:engineFormula.FunctionType.Cube,description:"formula.functionList.CUBEVALUE.description",abstract:"formula.functionList.CUBEVALUE.abstract",functionParameter:[{name:"formula.functionList.CUBEVALUE.functionParameter.number1.name",detail:"formula.functionList.CUBEVALUE.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.CUBEVALUE.functionParameter.number2.name",detail:"formula.functionList.CUBEVALUE.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]}],FUNCTION_LIST_DATABASE=[{functionName:engineFormula.FUNCTION_NAMES_DATABASE.DAVERAGE,functionType:engineFormula.FunctionType.Database,description:"formula.functionList.DAVERAGE.description",abstract:"formula.functionList.DAVERAGE.abstract",functionParameter:[{name:"formula.functionList.DAVERAGE.functionParameter.number1.name",detail:"formula.functionList.DAVERAGE.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.DAVERAGE.functionParameter.number2.name",detail:"formula.functionList.DAVERAGE.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATABASE.DCOUNT,functionType:engineFormula.FunctionType.Database,description:"formula.functionList.DCOUNT.description",abstract:"formula.functionList.DCOUNT.abstract",functionParameter:[{name:"formula.functionList.DCOUNT.functionParameter.number1.name",detail:"formula.functionList.DCOUNT.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.DCOUNT.functionParameter.number2.name",detail:"formula.functionList.DCOUNT.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATABASE.DCOUNTA,functionType:engineFormula.FunctionType.Database,description:"formula.functionList.DCOUNTA.description",abstract:"formula.functionList.DCOUNTA.abstract",functionParameter:[{name:"formula.functionList.DCOUNTA.functionParameter.number1.name",detail:"formula.functionList.DCOUNTA.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.DCOUNTA.functionParameter.number2.name",detail:"formula.functionList.DCOUNTA.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATABASE.DGET,functionType:engineFormula.FunctionType.Database,description:"formula.functionList.DGET.description",abstract:"formula.functionList.DGET.abstract",functionParameter:[{name:"formula.functionList.DGET.functionParameter.number1.name",detail:"formula.functionList.DGET.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.DGET.functionParameter.number2.name",detail:"formula.functionList.DGET.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATABASE.DMAX,functionType:engineFormula.FunctionType.Database,description:"formula.functionList.DMAX.description",abstract:"formula.functionList.DMAX.abstract",functionParameter:[{name:"formula.functionList.DMAX.functionParameter.number1.name",detail:"formula.functionList.DMAX.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.DMAX.functionParameter.number2.name",detail:"formula.functionList.DMAX.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATABASE.DMIN,functionType:engineFormula.FunctionType.Database,description:"formula.functionList.DMIN.description",abstract:"formula.functionList.DMIN.abstract",functionParameter:[{name:"formula.functionList.DMIN.functionParameter.number1.name",detail:"formula.functionList.DMIN.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.DMIN.functionParameter.number2.name",detail:"formula.functionList.DMIN.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATABASE.DPRODUCT,functionType:engineFormula.FunctionType.Database,description:"formula.functionList.DPRODUCT.description",abstract:"formula.functionList.DPRODUCT.abstract",functionParameter:[{name:"formula.functionList.DPRODUCT.functionParameter.number1.name",detail:"formula.functionList.DPRODUCT.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.DPRODUCT.functionParameter.number2.name",detail:"formula.functionList.DPRODUCT.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATABASE.DSTDEV,functionType:engineFormula.FunctionType.Database,description:"formula.functionList.DSTDEV.description",abstract:"formula.functionList.DSTDEV.abstract",functionParameter:[{name:"formula.functionList.DSTDEV.functionParameter.number1.name",detail:"formula.functionList.DSTDEV.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.DSTDEV.functionParameter.number2.name",detail:"formula.functionList.DSTDEV.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATABASE.DSTDEVP,functionType:engineFormula.FunctionType.Database,description:"formula.functionList.DSTDEVP.description",abstract:"formula.functionList.DSTDEVP.abstract",functionParameter:[{name:"formula.functionList.DSTDEVP.functionParameter.number1.name",detail:"formula.functionList.DSTDEVP.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.DSTDEVP.functionParameter.number2.name",detail:"formula.functionList.DSTDEVP.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATABASE.DSUM,functionType:engineFormula.FunctionType.Database,description:"formula.functionList.DSUM.description",abstract:"formula.functionList.DSUM.abstract",functionParameter:[{name:"formula.functionList.DSUM.functionParameter.number1.name",detail:"formula.functionList.DSUM.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.DSUM.functionParameter.number2.name",detail:"formula.functionList.DSUM.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATABASE.DVAR,functionType:engineFormula.FunctionType.Database,description:"formula.functionList.DVAR.description",abstract:"formula.functionList.DVAR.abstract",functionParameter:[{name:"formula.functionList.DVAR.functionParameter.number1.name",detail:"formula.functionList.DVAR.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.DVAR.functionParameter.number2.name",detail:"formula.functionList.DVAR.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATABASE.DVARP,functionType:engineFormula.FunctionType.Database,description:"formula.functionList.DVARP.description",abstract:"formula.functionList.DVARP.abstract",functionParameter:[{name:"formula.functionList.DVARP.functionParameter.number1.name",detail:"formula.functionList.DVARP.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.DVARP.functionParameter.number2.name",detail:"formula.functionList.DVARP.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]}],FUNCTION_LIST_DATE=[{functionName:engineFormula.FUNCTION_NAMES_DATE.DATE,functionType:engineFormula.FunctionType.Date,description:"formula.functionList.DATE.description",abstract:"formula.functionList.DATE.abstract",functionParameter:[{name:"formula.functionList.DATE.functionParameter.year.name",detail:"formula.functionList.DATE.functionParameter.year.detail",example:"2024",require:1,repeat:0},{name:"formula.functionList.DATE.functionParameter.month.name",detail:"formula.functionList.DATE.functionParameter.month.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.DATE.functionParameter.day.name",detail:"formula.functionList.DATE.functionParameter.day.detail",example:"1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATE.DATEDIF,functionType:engineFormula.FunctionType.Date,description:"formula.functionList.DATEDIF.description",abstract:"formula.functionList.DATEDIF.abstract",functionParameter:[{name:"formula.functionList.DATEDIF.functionParameter.startDate.name",detail:"formula.functionList.DATEDIF.functionParameter.startDate.detail",example:'"2001-6-1"',require:1,repeat:0},{name:"formula.functionList.DATEDIF.functionParameter.endDate.name",detail:"formula.functionList.DATEDIF.functionParameter.endDate.detail",example:'"2002-8-15"',require:1,repeat:0},{name:"formula.functionList.DATEDIF.functionParameter.method.name",detail:"formula.functionList.DATEDIF.functionParameter.method.detail",example:'"D"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATE.DATEVALUE,functionType:engineFormula.FunctionType.Date,description:"formula.functionList.DATEVALUE.description",abstract:"formula.functionList.DATEVALUE.abstract",functionParameter:[{name:"formula.functionList.DATEVALUE.functionParameter.dateText.name",detail:"formula.functionList.DATEVALUE.functionParameter.dateText.detail",example:'"2024-8-8"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATE.DAY,functionType:engineFormula.FunctionType.Date,description:"formula.functionList.DAY.description",abstract:"formula.functionList.DAY.abstract",functionParameter:[{name:"formula.functionList.DAY.functionParameter.serialNumber.name",detail:"formula.functionList.DAY.functionParameter.serialNumber.detail",example:'"1969-7-20"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATE.DAYS,functionType:engineFormula.FunctionType.Date,description:"formula.functionList.DAYS.description",abstract:"formula.functionList.DAYS.abstract",functionParameter:[{name:"formula.functionList.DAYS.functionParameter.endDate.name",detail:"formula.functionList.DAYS.functionParameter.endDate.detail",example:'"2021-12-31"',require:1,repeat:0},{name:"formula.functionList.DAYS.functionParameter.startDate.name",detail:"formula.functionList.DAYS.functionParameter.startDate.detail",example:'"2021-1-1"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATE.DAYS360,functionType:engineFormula.FunctionType.Date,description:"formula.functionList.DAYS360.description",abstract:"formula.functionList.DAYS360.abstract",functionParameter:[{name:"formula.functionList.DAYS360.functionParameter.startDate.name",detail:"formula.functionList.DAYS360.functionParameter.startDate.detail",example:'"2021-1-29"',require:1,repeat:0},{name:"formula.functionList.DAYS360.functionParameter.endDate.name",detail:"formula.functionList.DAYS360.functionParameter.endDate.detail",example:'"2021-3-31"',require:1,repeat:0},{name:"formula.functionList.DAYS360.functionParameter.method.name",detail:"formula.functionList.DAYS360.functionParameter.method.detail",example:"1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATE.EDATE,functionType:engineFormula.FunctionType.Date,description:"formula.functionList.EDATE.description",abstract:"formula.functionList.EDATE.abstract",functionParameter:[{name:"formula.functionList.EDATE.functionParameter.startDate.name",detail:"formula.functionList.EDATE.functionParameter.startDate.detail",example:"A1",require:1,repeat:0},{name:"formula.functionList.EDATE.functionParameter.months.name",detail:"formula.functionList.EDATE.functionParameter.months.detail",example:"1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATE.EOMONTH,functionType:engineFormula.FunctionType.Date,description:"formula.functionList.EOMONTH.description",abstract:"formula.functionList.EOMONTH.abstract",functionParameter:[{name:"formula.functionList.EOMONTH.functionParameter.startDate.name",detail:"formula.functionList.EOMONTH.functionParameter.startDate.detail",example:'"2011-1-1"',require:1,repeat:0},{name:"formula.functionList.EOMONTH.functionParameter.months.name",detail:"formula.functionList.EOMONTH.functionParameter.months.detail",example:"1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATE.HOUR,functionType:engineFormula.FunctionType.Date,description:"formula.functionList.HOUR.description",abstract:"formula.functionList.HOUR.abstract",functionParameter:[{name:"formula.functionList.HOUR.functionParameter.serialNumber.name",detail:"formula.functionList.HOUR.functionParameter.serialNumber.detail",example:'"2011-7-18 7:45"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATE.ISOWEEKNUM,functionType:engineFormula.FunctionType.Date,description:"formula.functionList.ISOWEEKNUM.description",abstract:"formula.functionList.ISOWEEKNUM.abstract",functionParameter:[{name:"formula.functionList.ISOWEEKNUM.functionParameter.date.name",detail:"formula.functionList.ISOWEEKNUM.functionParameter.date.detail",example:'"2012-3-9"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATE.MINUTE,functionType:engineFormula.FunctionType.Date,description:"formula.functionList.MINUTE.description",abstract:"formula.functionList.MINUTE.abstract",functionParameter:[{name:"formula.functionList.MINUTE.functionParameter.serialNumber.name",detail:"formula.functionList.MINUTE.functionParameter.serialNumber.detail",example:'"12:45"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATE.MONTH,functionType:engineFormula.FunctionType.Date,description:"formula.functionList.MONTH.description",abstract:"formula.functionList.MONTH.abstract",functionParameter:[{name:"formula.functionList.MONTH.functionParameter.serialNumber.name",detail:"formula.functionList.MONTH.functionParameter.serialNumber.detail",example:'"1969-7-20"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATE.NETWORKDAYS,functionType:engineFormula.FunctionType.Date,description:"formula.functionList.NETWORKDAYS.description",abstract:"formula.functionList.NETWORKDAYS.abstract",functionParameter:[{name:"formula.functionList.NETWORKDAYS.functionParameter.startDate.name",detail:"formula.functionList.NETWORKDAYS.functionParameter.startDate.detail",example:'"2012-10-1"',require:1,repeat:0},{name:"formula.functionList.NETWORKDAYS.functionParameter.endDate.name",detail:"formula.functionList.NETWORKDAYS.functionParameter.endDate.detail",example:'"2013-3-1"',require:1,repeat:0},{name:"formula.functionList.NETWORKDAYS.functionParameter.holidays.name",detail:"formula.functionList.NETWORKDAYS.functionParameter.holidays.detail",example:'"2012-11-22"',require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATE.NETWORKDAYS_INTL,functionType:engineFormula.FunctionType.Date,description:"formula.functionList.NETWORKDAYS_INTL.description",abstract:"formula.functionList.NETWORKDAYS_INTL.abstract",functionParameter:[{name:"formula.functionList.NETWORKDAYS_INTL.functionParameter.startDate.name",detail:"formula.functionList.NETWORKDAYS_INTL.functionParameter.startDate.detail",example:'"2012-10-1"',require:1,repeat:0},{name:"formula.functionList.NETWORKDAYS_INTL.functionParameter.endDate.name",detail:"formula.functionList.NETWORKDAYS_INTL.functionParameter.endDate.detail",example:'"2013-3-1"',require:1,repeat:0},{name:"formula.functionList.NETWORKDAYS_INTL.functionParameter.weekend.name",detail:"formula.functionList.NETWORKDAYS_INTL.functionParameter.weekend.detail",example:"6",require:0,repeat:0},{name:"formula.functionList.NETWORKDAYS_INTL.functionParameter.holidays.name",detail:"formula.functionList.NETWORKDAYS_INTL.functionParameter.holidays.detail",example:'"2012-11-22"',require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATE.NOW,functionType:engineFormula.FunctionType.Date,description:"formula.functionList.NOW.description",abstract:"formula.functionList.NOW.abstract",functionParameter:[]},{functionName:engineFormula.FUNCTION_NAMES_DATE.SECOND,functionType:engineFormula.FunctionType.Date,description:"formula.functionList.SECOND.description",abstract:"formula.functionList.SECOND.abstract",functionParameter:[{name:"formula.functionList.SECOND.functionParameter.serialNumber.name",detail:"formula.functionList.SECOND.functionParameter.serialNumber.detail",example:'"4:48:18"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATE.TIME,functionType:engineFormula.FunctionType.Date,description:"formula.functionList.TIME.description",abstract:"formula.functionList.TIME.abstract",functionParameter:[{name:"formula.functionList.TIME.functionParameter.hour.name",detail:"formula.functionList.TIME.functionParameter.hour.detail",example:"15",require:1,repeat:0},{name:"formula.functionList.TIME.functionParameter.minute.name",detail:"formula.functionList.TIME.functionParameter.minute.detail",example:"20",require:1,repeat:0},{name:"formula.functionList.TIME.functionParameter.second.name",detail:"formula.functionList.TIME.functionParameter.second.detail",example:"59",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATE.TIMEVALUE,functionType:engineFormula.FunctionType.Date,description:"formula.functionList.TIMEVALUE.description",abstract:"formula.functionList.TIMEVALUE.abstract",functionParameter:[{name:"formula.functionList.TIMEVALUE.functionParameter.timeText.name",detail:"formula.functionList.TIMEVALUE.functionParameter.timeText.detail",example:'"15:20:59"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATE.TODAY,functionType:engineFormula.FunctionType.Date,description:"formula.functionList.TODAY.description",abstract:"formula.functionList.TODAY.abstract",functionParameter:[]},{functionName:engineFormula.FUNCTION_NAMES_DATE.WEEKDAY,functionType:engineFormula.FunctionType.Date,description:"formula.functionList.WEEKDAY.description",abstract:"formula.functionList.WEEKDAY.abstract",functionParameter:[{name:"formula.functionList.WEEKDAY.functionParameter.serialNumber.name",detail:"formula.functionList.WEEKDAY.functionParameter.serialNumber.detail",example:'"2008-2-14"',require:1,repeat:0},{name:"formula.functionList.WEEKDAY.functionParameter.returnType.name",detail:"formula.functionList.WEEKDAY.functionParameter.returnType.detail",example:"2",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATE.WEEKNUM,functionType:engineFormula.FunctionType.Date,description:"formula.functionList.WEEKNUM.description",abstract:"formula.functionList.WEEKNUM.abstract",functionParameter:[{name:"formula.functionList.WEEKNUM.functionParameter.serialNumber.name",detail:"formula.functionList.WEEKNUM.functionParameter.serialNumber.detail",example:'"2012-3-9"',require:1,repeat:0},{name:"formula.functionList.WEEKNUM.functionParameter.returnType.name",detail:"formula.functionList.WEEKNUM.functionParameter.returnType.detail",example:"2",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATE.WORKDAY,functionType:engineFormula.FunctionType.Date,description:"formula.functionList.WORKDAY.description",abstract:"formula.functionList.WORKDAY.abstract",functionParameter:[{name:"formula.functionList.WORKDAY.functionParameter.startDate.name",detail:"formula.functionList.WORKDAY.functionParameter.startDate.detail",example:'"2008-10-1"',require:1,repeat:0},{name:"formula.functionList.WORKDAY.functionParameter.days.name",detail:"formula.functionList.WORKDAY.functionParameter.days.detail",example:"151",require:1,repeat:0},{name:"formula.functionList.WORKDAY.functionParameter.holidays.name",detail:"formula.functionList.WORKDAY.functionParameter.holidays.detail",example:'"2008-11-26"',require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATE.WORKDAY_INTL,functionType:engineFormula.FunctionType.Date,description:"formula.functionList.WORKDAY_INTL.description",abstract:"formula.functionList.WORKDAY_INTL.abstract",functionParameter:[{name:"formula.functionList.WORKDAY_INTL.functionParameter.startDate.name",detail:"formula.functionList.WORKDAY_INTL.functionParameter.startDate.detail",example:'"2008-10-1"',require:1,repeat:0},{name:"formula.functionList.WORKDAY_INTL.functionParameter.days.name",detail:"formula.functionList.WORKDAY_INTL.functionParameter.days.detail",example:"151",require:1,repeat:0},{name:"formula.functionList.WORKDAY_INTL.functionParameter.weekend.name",detail:"formula.functionList.WORKDAY_INTL.functionParameter.weekend.detail",example:"6",require:0,repeat:0},{name:"formula.functionList.WORKDAY_INTL.functionParameter.holidays.name",detail:"formula.functionList.WORKDAY_INTL.functionParameter.holidays.detail",example:'"2008-11-26"',require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATE.YEAR,functionType:engineFormula.FunctionType.Date,description:"formula.functionList.YEAR.description",abstract:"formula.functionList.YEAR.abstract",functionParameter:[{name:"formula.functionList.YEAR.functionParameter.serialNumber.name",detail:"formula.functionList.YEAR.functionParameter.serialNumber.detail",example:'"1969-7-20"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_DATE.YEARFRAC,functionType:engineFormula.FunctionType.Date,description:"formula.functionList.YEARFRAC.description",abstract:"formula.functionList.YEARFRAC.abstract",functionParameter:[{name:"formula.functionList.YEARFRAC.functionParameter.startDate.name",detail:"formula.functionList.YEARFRAC.functionParameter.startDate.detail",example:'"2012-1-1"',require:1,repeat:0},{name:"formula.functionList.YEARFRAC.functionParameter.endDate.name",detail:"formula.functionList.YEARFRAC.functionParameter.endDate.detail",example:'"2012-7-30"',require:1,repeat:0},{name:"formula.functionList.YEARFRAC.functionParameter.basis.name",detail:"formula.functionList.YEARFRAC.functionParameter.basis.detail",example:"1",require:0,repeat:0}]}],FUNCTION_LIST_ENGINEERING=[{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.BESSELI,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.BESSELI.description",abstract:"formula.functionList.BESSELI.abstract",functionParameter:[{name:"formula.functionList.BESSELI.functionParameter.x.name",detail:"formula.functionList.BESSELI.functionParameter.x.detail",example:"1.5",require:1,repeat:0},{name:"formula.functionList.BESSELI.functionParameter.n.name",detail:"formula.functionList.BESSELI.functionParameter.n.detail",example:"1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.BESSELJ,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.BESSELJ.description",abstract:"formula.functionList.BESSELJ.abstract",functionParameter:[{name:"formula.functionList.BESSELJ.functionParameter.x.name",detail:"formula.functionList.BESSELJ.functionParameter.x.detail",example:"1.5",require:1,repeat:0},{name:"formula.functionList.BESSELJ.functionParameter.n.name",detail:"formula.functionList.BESSELJ.functionParameter.n.detail",example:"1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.BESSELK,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.BESSELK.description",abstract:"formula.functionList.BESSELK.abstract",functionParameter:[{name:"formula.functionList.BESSELK.functionParameter.x.name",detail:"formula.functionList.BESSELK.functionParameter.x.detail",example:"1.5",require:1,repeat:0},{name:"formula.functionList.BESSELK.functionParameter.n.name",detail:"formula.functionList.BESSELK.functionParameter.n.detail",example:"1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.BESSELY,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.BESSELY.description",abstract:"formula.functionList.BESSELY.abstract",functionParameter:[{name:"formula.functionList.BESSELY.functionParameter.x.name",detail:"formula.functionList.BESSELY.functionParameter.x.detail",example:"1.5",require:1,repeat:0},{name:"formula.functionList.BESSELY.functionParameter.n.name",detail:"formula.functionList.BESSELY.functionParameter.n.detail",example:"1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.BIN2DEC,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.BIN2DEC.description",abstract:"formula.functionList.BIN2DEC.abstract",functionParameter:[{name:"formula.functionList.BIN2DEC.functionParameter.number.name",detail:"formula.functionList.BIN2DEC.functionParameter.number.detail",example:"1100100",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.BIN2HEX,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.BIN2HEX.description",abstract:"formula.functionList.BIN2HEX.abstract",functionParameter:[{name:"formula.functionList.BIN2HEX.functionParameter.number.name",detail:"formula.functionList.BIN2HEX.functionParameter.number.detail",example:"11111011",require:1,repeat:0},{name:"formula.functionList.BIN2HEX.functionParameter.places.name",detail:"formula.functionList.BIN2HEX.functionParameter.places.detail",example:"4",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.BIN2OCT,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.BIN2OCT.description",abstract:"formula.functionList.BIN2OCT.abstract",functionParameter:[{name:"formula.functionList.BIN2OCT.functionParameter.number.name",detail:"formula.functionList.BIN2OCT.functionParameter.number.detail",example:"1001",require:1,repeat:0},{name:"formula.functionList.BIN2OCT.functionParameter.places.name",detail:"formula.functionList.BIN2OCT.functionParameter.places.detail",example:"3",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.BITAND,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.BITAND.description",abstract:"formula.functionList.BITAND.abstract",functionParameter:[{name:"formula.functionList.BITAND.functionParameter.number1.name",detail:"formula.functionList.BITAND.functionParameter.number1.detail",example:"13",require:1,repeat:0},{name:"formula.functionList.BITAND.functionParameter.number2.name",detail:"formula.functionList.BITAND.functionParameter.number2.detail",example:"25",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.BITLSHIFT,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.BITLSHIFT.description",abstract:"formula.functionList.BITLSHIFT.abstract",functionParameter:[{name:"formula.functionList.BITLSHIFT.functionParameter.number.name",detail:"formula.functionList.BITLSHIFT.functionParameter.number.detail",example:"4",require:1,repeat:0},{name:"formula.functionList.BITLSHIFT.functionParameter.shiftAmount.name",detail:"formula.functionList.BITLSHIFT.functionParameter.shiftAmount.detail",example:"2",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.BITOR,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.BITOR.description",abstract:"formula.functionList.BITOR.abstract",functionParameter:[{name:"formula.functionList.BITOR.functionParameter.number1.name",detail:"formula.functionList.BITOR.functionParameter.number1.detail",example:"23",require:1,repeat:0},{name:"formula.functionList.BITOR.functionParameter.number2.name",detail:"formula.functionList.BITOR.functionParameter.number2.detail",example:"10",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.BITRSHIFT,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.BITRSHIFT.description",abstract:"formula.functionList.BITRSHIFT.abstract",functionParameter:[{name:"formula.functionList.BITRSHIFT.functionParameter.number.name",detail:"formula.functionList.BITRSHIFT.functionParameter.number.detail",example:"13",require:1,repeat:0},{name:"formula.functionList.BITRSHIFT.functionParameter.shiftAmount.name",detail:"formula.functionList.BITRSHIFT.functionParameter.shiftAmount.detail",example:"2",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.BITXOR,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.BITXOR.description",abstract:"formula.functionList.BITXOR.abstract",functionParameter:[{name:"formula.functionList.BITXOR.functionParameter.number1.name",detail:"formula.functionList.BITXOR.functionParameter.number1.detail",example:"5",require:1,repeat:0},{name:"formula.functionList.BITXOR.functionParameter.number2.name",detail:"formula.functionList.BITXOR.functionParameter.number2.detail",example:"3",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.COMPLEX,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.COMPLEX.description",abstract:"formula.functionList.COMPLEX.abstract",functionParameter:[{name:"formula.functionList.COMPLEX.functionParameter.realNum.name",detail:"formula.functionList.COMPLEX.functionParameter.realNum.detail",example:"3",require:1,repeat:0},{name:"formula.functionList.COMPLEX.functionParameter.iNum.name",detail:"formula.functionList.COMPLEX.functionParameter.iNum.detail",example:"4",require:1,repeat:0},{name:"formula.functionList.COMPLEX.functionParameter.suffix.name",detail:"formula.functionList.COMPLEX.functionParameter.suffix.detail",example:'"i"',require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.CONVERT,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.CONVERT.description",abstract:"formula.functionList.CONVERT.abstract",functionParameter:[{name:"formula.functionList.CONVERT.functionParameter.number.name",detail:"formula.functionList.CONVERT.functionParameter.number.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.CONVERT.functionParameter.fromUnit.name",detail:"formula.functionList.CONVERT.functionParameter.fromUnit.detail",example:'"lbm"',require:1,repeat:0},{name:"formula.functionList.CONVERT.functionParameter.toUnit.name",detail:"formula.functionList.CONVERT.functionParameter.toUnit.detail",example:'"kg"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.DEC2BIN,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.DEC2BIN.description",abstract:"formula.functionList.DEC2BIN.abstract",functionParameter:[{name:"formula.functionList.DEC2BIN.functionParameter.number.name",detail:"formula.functionList.DEC2BIN.functionParameter.number.detail",example:"9",require:1,repeat:0},{name:"formula.functionList.DEC2BIN.functionParameter.places.name",detail:"formula.functionList.DEC2BIN.functionParameter.places.detail",example:"4",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.DEC2HEX,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.DEC2HEX.description",abstract:"formula.functionList.DEC2HEX.abstract",functionParameter:[{name:"formula.functionList.DEC2HEX.functionParameter.number.name",detail:"formula.functionList.DEC2HEX.functionParameter.number.detail",example:"100",require:1,repeat:0},{name:"formula.functionList.DEC2HEX.functionParameter.places.name",detail:"formula.functionList.DEC2HEX.functionParameter.places.detail",example:"4",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.DEC2OCT,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.DEC2OCT.description",abstract:"formula.functionList.DEC2OCT.abstract",functionParameter:[{name:"formula.functionList.DEC2OCT.functionParameter.number.name",detail:"formula.functionList.DEC2OCT.functionParameter.number.detail",example:"58",require:1,repeat:0},{name:"formula.functionList.DEC2OCT.functionParameter.places.name",detail:"formula.functionList.DEC2OCT.functionParameter.places.detail",example:"3",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.DELTA,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.DELTA.description",abstract:"formula.functionList.DELTA.abstract",functionParameter:[{name:"formula.functionList.DELTA.functionParameter.number1.name",detail:"formula.functionList.DELTA.functionParameter.number1.detail",example:"5",require:1,repeat:0},{name:"formula.functionList.DELTA.functionParameter.number2.name",detail:"formula.functionList.DELTA.functionParameter.number2.detail",example:"4",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.ERF,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.ERF.description",abstract:"formula.functionList.ERF.abstract",functionParameter:[{name:"formula.functionList.ERF.functionParameter.lowerLimit.name",detail:"formula.functionList.ERF.functionParameter.lowerLimit.detail",example:"0.745",require:1,repeat:0},{name:"formula.functionList.ERF.functionParameter.upperLimit.name",detail:"formula.functionList.ERF.functionParameter.upperLimit.detail",example:"2",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.ERF_PRECISE,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.ERF_PRECISE.description",abstract:"formula.functionList.ERF_PRECISE.abstract",functionParameter:[{name:"formula.functionList.ERF_PRECISE.functionParameter.x.name",detail:"formula.functionList.ERF_PRECISE.functionParameter.x.detail",example:"1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.ERFC,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.ERFC.description",abstract:"formula.functionList.ERFC.abstract",functionParameter:[{name:"formula.functionList.ERFC.functionParameter.x.name",detail:"formula.functionList.ERFC.functionParameter.x.detail",example:"1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.ERFC_PRECISE,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.ERFC_PRECISE.description",abstract:"formula.functionList.ERFC_PRECISE.abstract",functionParameter:[{name:"formula.functionList.ERFC_PRECISE.functionParameter.x.name",detail:"formula.functionList.ERFC_PRECISE.functionParameter.x.detail",example:"1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.GESTEP,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.GESTEP.description",abstract:"formula.functionList.GESTEP.abstract",functionParameter:[{name:"formula.functionList.GESTEP.functionParameter.number.name",detail:"formula.functionList.GESTEP.functionParameter.number.detail",example:"5",require:1,repeat:0},{name:"formula.functionList.GESTEP.functionParameter.step.name",detail:"formula.functionList.GESTEP.functionParameter.step.detail",example:"4",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.HEX2BIN,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.HEX2BIN.description",abstract:"formula.functionList.HEX2BIN.abstract",functionParameter:[{name:"formula.functionList.HEX2BIN.functionParameter.number.name",detail:"formula.functionList.HEX2BIN.functionParameter.number.detail",example:'"F"',require:1,repeat:0},{name:"formula.functionList.HEX2BIN.functionParameter.places.name",detail:"formula.functionList.HEX2BIN.functionParameter.places.detail",example:"8",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.HEX2DEC,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.HEX2DEC.description",abstract:"formula.functionList.HEX2DEC.abstract",functionParameter:[{name:"formula.functionList.HEX2DEC.functionParameter.number.name",detail:"formula.functionList.HEX2DEC.functionParameter.number.detail",example:'"A5"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.HEX2OCT,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.HEX2OCT.description",abstract:"formula.functionList.HEX2OCT.abstract",functionParameter:[{name:"formula.functionList.HEX2OCT.functionParameter.number.name",detail:"formula.functionList.HEX2OCT.functionParameter.number.detail",example:'"F"',require:1,repeat:0},{name:"formula.functionList.HEX2OCT.functionParameter.places.name",detail:"formula.functionList.HEX2OCT.functionParameter.places.detail",example:"3",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.IMABS,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.IMABS.description",abstract:"formula.functionList.IMABS.abstract",functionParameter:[{name:"formula.functionList.IMABS.functionParameter.inumber.name",detail:"formula.functionList.IMABS.functionParameter.inumber.detail",example:'"5+12i"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.IMAGINARY,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.IMAGINARY.description",abstract:"formula.functionList.IMAGINARY.abstract",functionParameter:[{name:"formula.functionList.IMAGINARY.functionParameter.inumber.name",detail:"formula.functionList.IMAGINARY.functionParameter.inumber.detail",example:'"3+4i"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.IMARGUMENT,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.IMARGUMENT.description",abstract:"formula.functionList.IMARGUMENT.abstract",functionParameter:[{name:"formula.functionList.IMARGUMENT.functionParameter.inumber.name",detail:"formula.functionList.IMARGUMENT.functionParameter.inumber.detail",example:'"3+4i"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.IMCONJUGATE,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.IMCONJUGATE.description",abstract:"formula.functionList.IMCONJUGATE.abstract",functionParameter:[{name:"formula.functionList.IMCONJUGATE.functionParameter.inumber.name",detail:"formula.functionList.IMCONJUGATE.functionParameter.inumber.detail",example:'"3+4i"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.IMCOS,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.IMCOS.description",abstract:"formula.functionList.IMCOS.abstract",functionParameter:[{name:"formula.functionList.IMCOS.functionParameter.inumber.name",detail:"formula.functionList.IMCOS.functionParameter.inumber.detail",example:'"1+i"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.IMCOSH,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.IMCOSH.description",abstract:"formula.functionList.IMCOSH.abstract",functionParameter:[{name:"formula.functionList.IMCOSH.functionParameter.inumber.name",detail:"formula.functionList.IMCOSH.functionParameter.inumber.detail",example:'"4+3i"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.IMCOT,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.IMCOT.description",abstract:"formula.functionList.IMCOT.abstract",functionParameter:[{name:"formula.functionList.IMCOT.functionParameter.inumber.name",detail:"formula.functionList.IMCOT.functionParameter.inumber.detail",example:'"4+3i"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.IMCSC,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.IMCSC.description",abstract:"formula.functionList.IMCSC.abstract",functionParameter:[{name:"formula.functionList.IMCSC.functionParameter.inumber.name",detail:"formula.functionList.IMCSC.functionParameter.inumber.detail",example:'"4+3i"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.IMCSCH,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.IMCSCH.description",abstract:"formula.functionList.IMCSCH.abstract",functionParameter:[{name:"formula.functionList.IMCSCH.functionParameter.inumber.name",detail:"formula.functionList.IMCSCH.functionParameter.inumber.detail",example:'"4+3i"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.IMDIV,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.IMDIV.description",abstract:"formula.functionList.IMDIV.abstract",functionParameter:[{name:"formula.functionList.IMDIV.functionParameter.inumber1.name",detail:"formula.functionList.IMDIV.functionParameter.inumber1.detail",example:'"-238+240i"',require:1,repeat:0},{name:"formula.functionList.IMDIV.functionParameter.inumber2.name",detail:"formula.functionList.IMDIV.functionParameter.inumber2.detail",example:'"10+24i"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.IMEXP,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.IMEXP.description",abstract:"formula.functionList.IMEXP.abstract",functionParameter:[{name:"formula.functionList.IMEXP.functionParameter.inumber.name",detail:"formula.functionList.IMEXP.functionParameter.inumber.detail",example:'"1+i"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.IMLN,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.IMLN.description",abstract:"formula.functionList.IMLN.abstract",functionParameter:[{name:"formula.functionList.IMLN.functionParameter.inumber.name",detail:"formula.functionList.IMLN.functionParameter.inumber.detail",example:'"3+4i"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.IMLOG10,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.IMLOG10.description",abstract:"formula.functionList.IMLOG10.abstract",functionParameter:[{name:"formula.functionList.IMLOG10.functionParameter.inumber.name",detail:"formula.functionList.IMLOG10.functionParameter.inumber.detail",example:'"3+4i"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.IMLOG2,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.IMLOG2.description",abstract:"formula.functionList.IMLOG2.abstract",functionParameter:[{name:"formula.functionList.IMLOG2.functionParameter.inumber.name",detail:"formula.functionList.IMLOG2.functionParameter.inumber.detail",example:'"3+4i"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.IMPOWER,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.IMPOWER.description",abstract:"formula.functionList.IMPOWER.abstract",functionParameter:[{name:"formula.functionList.IMPOWER.functionParameter.inumber.name",detail:"formula.functionList.IMPOWER.functionParameter.inumber.detail",example:'"2+3i"',require:1,repeat:0},{name:"formula.functionList.IMPOWER.functionParameter.number.name",detail:"formula.functionList.IMPOWER.functionParameter.number.detail",example:"3",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.IMPRODUCT,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.IMPRODUCT.description",abstract:"formula.functionList.IMPRODUCT.abstract",functionParameter:[{name:"formula.functionList.IMPRODUCT.functionParameter.inumber1.name",detail:"formula.functionList.IMPRODUCT.functionParameter.inumber1.detail",example:'"3+4i"',require:1,repeat:0},{name:"formula.functionList.IMPRODUCT.functionParameter.inumber2.name",detail:"formula.functionList.IMPRODUCT.functionParameter.inumber2.detail",example:'"5-3i"',require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.IMREAL,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.IMREAL.description",abstract:"formula.functionList.IMREAL.abstract",functionParameter:[{name:"formula.functionList.IMREAL.functionParameter.inumber.name",detail:"formula.functionList.IMREAL.functionParameter.inumber.detail",example:'"6-9i"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.IMSEC,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.IMSEC.description",abstract:"formula.functionList.IMSEC.abstract",functionParameter:[{name:"formula.functionList.IMSEC.functionParameter.inumber.name",detail:"formula.functionList.IMSEC.functionParameter.inumber.detail",example:'"4+3i"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.IMSECH,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.IMSECH.description",abstract:"formula.functionList.IMSECH.abstract",functionParameter:[{name:"formula.functionList.IMSECH.functionParameter.inumber.name",detail:"formula.functionList.IMSECH.functionParameter.inumber.detail",example:'"4+3i"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.IMSIN,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.IMSIN.description",abstract:"formula.functionList.IMSIN.abstract",functionParameter:[{name:"formula.functionList.IMSIN.functionParameter.inumber.name",detail:"formula.functionList.IMSIN.functionParameter.inumber.detail",example:'"4+3i"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.IMSINH,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.IMSINH.description",abstract:"formula.functionList.IMSINH.abstract",functionParameter:[{name:"formula.functionList.IMSINH.functionParameter.inumber.name",detail:"formula.functionList.IMSINH.functionParameter.inumber.detail",example:'"4+3i"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.IMSQRT,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.IMSQRT.description",abstract:"formula.functionList.IMSQRT.abstract",functionParameter:[{name:"formula.functionList.IMSQRT.functionParameter.inumber.name",detail:"formula.functionList.IMSQRT.functionParameter.inumber.detail",example:'"1+i"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.IMSUB,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.IMSUB.description",abstract:"formula.functionList.IMSUB.abstract",functionParameter:[{name:"formula.functionList.IMSUB.functionParameter.inumber1.name",detail:"formula.functionList.IMSUB.functionParameter.inumber1.detail",example:'"13+4i"',require:1,repeat:0},{name:"formula.functionList.IMSUB.functionParameter.inumber2.name",detail:"formula.functionList.IMSUB.functionParameter.inumber2.detail",example:'"5+3i"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.IMSUM,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.IMSUM.description",abstract:"formula.functionList.IMSUM.abstract",functionParameter:[{name:"formula.functionList.IMSUM.functionParameter.inumber1.name",detail:"formula.functionList.IMSUM.functionParameter.inumber1.detail",example:'"3+4i"',require:1,repeat:0},{name:"formula.functionList.IMSUM.functionParameter.inumber2.name",detail:"formula.functionList.IMSUM.functionParameter.inumber2.detail",example:'"5-3i"',require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.IMTAN,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.IMTAN.description",abstract:"formula.functionList.IMTAN.abstract",functionParameter:[{name:"formula.functionList.IMTAN.functionParameter.inumber.name",detail:"formula.functionList.IMTAN.functionParameter.inumber.detail",example:'"4+3i"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.OCT2BIN,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.OCT2BIN.description",abstract:"formula.functionList.OCT2BIN.abstract",functionParameter:[{name:"formula.functionList.OCT2BIN.functionParameter.number.name",detail:"formula.functionList.OCT2BIN.functionParameter.number.detail",example:"3",require:1,repeat:0},{name:"formula.functionList.OCT2BIN.functionParameter.places.name",detail:"formula.functionList.OCT2BIN.functionParameter.places.detail",example:"3",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.OCT2DEC,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.OCT2DEC.description",abstract:"formula.functionList.OCT2DEC.abstract",functionParameter:[{name:"formula.functionList.OCT2DEC.functionParameter.number.name",detail:"formula.functionList.OCT2DEC.functionParameter.number.detail",example:"54",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_ENGINEERING.OCT2HEX,functionType:engineFormula.FunctionType.Engineering,description:"formula.functionList.OCT2HEX.description",abstract:"formula.functionList.OCT2HEX.abstract",functionParameter:[{name:"formula.functionList.OCT2HEX.functionParameter.number.name",detail:"formula.functionList.OCT2HEX.functionParameter.number.detail",example:"100",require:1,repeat:0},{name:"formula.functionList.OCT2HEX.functionParameter.places.name",detail:"formula.functionList.OCT2HEX.functionParameter.places.detail",example:"4",require:0,repeat:0}]}],FUNCTION_LIST_FINANCIAL=[{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.ACCRINT,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.ACCRINT.description",abstract:"formula.functionList.ACCRINT.abstract",functionParameter:[{name:"formula.functionList.ACCRINT.functionParameter.issue.name",detail:"formula.functionList.ACCRINT.functionParameter.issue.detail",example:"39508",require:1,repeat:0},{name:"formula.functionList.ACCRINT.functionParameter.firstInterest.name",detail:"formula.functionList.ACCRINT.functionParameter.firstInterest.detail",example:"39691",require:1,repeat:0},{name:"formula.functionList.ACCRINT.functionParameter.settlement.name",detail:"formula.functionList.ACCRINT.functionParameter.settlement.detail",example:"39569",require:1,repeat:0},{name:"formula.functionList.ACCRINT.functionParameter.rate.name",detail:"formula.functionList.ACCRINT.functionParameter.rate.detail",example:"0.1",require:1,repeat:0},{name:"formula.functionList.ACCRINT.functionParameter.par.name",detail:"formula.functionList.ACCRINT.functionParameter.par.detail",example:"1000",require:1,repeat:0},{name:"formula.functionList.ACCRINT.functionParameter.frequency.name",detail:"formula.functionList.ACCRINT.functionParameter.frequency.detail",example:"2",require:1,repeat:0},{name:"formula.functionList.ACCRINT.functionParameter.basis.name",detail:"formula.functionList.ACCRINT.functionParameter.basis.detail",example:"0",require:0,repeat:0},{name:"formula.functionList.ACCRINT.functionParameter.calcMethod.name",detail:"formula.functionList.ACCRINT.functionParameter.calcMethod.detail",example:"true",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.ACCRINTM,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.ACCRINTM.description",abstract:"formula.functionList.ACCRINTM.abstract",functionParameter:[{name:"formula.functionList.ACCRINTM.functionParameter.issue.name",detail:"formula.functionList.ACCRINTM.functionParameter.issue.detail",example:'"2008-4-1"',require:1,repeat:0},{name:"formula.functionList.ACCRINTM.functionParameter.settlement.name",detail:"formula.functionList.ACCRINTM.functionParameter.settlement.detail",example:'"2008-6-15"',require:1,repeat:0},{name:"formula.functionList.ACCRINTM.functionParameter.rate.name",detail:"formula.functionList.ACCRINTM.functionParameter.rate.detail",example:"0.1",require:1,repeat:0},{name:"formula.functionList.ACCRINTM.functionParameter.par.name",detail:"formula.functionList.ACCRINTM.functionParameter.par.detail",example:"1000",require:1,repeat:0},{name:"formula.functionList.ACCRINTM.functionParameter.basis.name",detail:"formula.functionList.ACCRINTM.functionParameter.basis.detail",example:"3",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.AMORDEGRC,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.AMORDEGRC.description",abstract:"formula.functionList.AMORDEGRC.abstract",functionParameter:[{name:"formula.functionList.AMORDEGRC.functionParameter.number1.name",detail:"formula.functionList.AMORDEGRC.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.AMORDEGRC.functionParameter.number2.name",detail:"formula.functionList.AMORDEGRC.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.AMORLINC,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.AMORLINC.description",abstract:"formula.functionList.AMORLINC.abstract",functionParameter:[{name:"formula.functionList.AMORLINC.functionParameter.cost.name",detail:"formula.functionList.AMORLINC.functionParameter.cost.detail",example:"2400",require:1,repeat:0},{name:"formula.functionList.AMORLINC.functionParameter.datePurchased.name",detail:"formula.functionList.AMORLINC.functionParameter.datePurchased.detail",example:"39679",require:1,repeat:0},{name:"formula.functionList.AMORLINC.functionParameter.firstPeriod.name",detail:"formula.functionList.AMORLINC.functionParameter.firstPeriod.detail",example:"39813",require:1,repeat:0},{name:"formula.functionList.AMORLINC.functionParameter.salvage.name",detail:"formula.functionList.AMORLINC.functionParameter.salvage.detail",example:"300",require:1,repeat:0},{name:"formula.functionList.AMORLINC.functionParameter.period.name",detail:"formula.functionList.AMORLINC.functionParameter.period.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.AMORLINC.functionParameter.rate.name",detail:"formula.functionList.AMORLINC.functionParameter.rate.detail",example:"0.15",require:1,repeat:0},{name:"formula.functionList.AMORLINC.functionParameter.basis.name",detail:"formula.functionList.AMORLINC.functionParameter.basis.detail",example:"0",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.COUPDAYBS,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.COUPDAYBS.description",abstract:"formula.functionList.COUPDAYBS.abstract",functionParameter:[{name:"formula.functionList.COUPDAYBS.functionParameter.settlement.name",detail:"formula.functionList.COUPDAYBS.functionParameter.settlement.detail",example:'"2011-1-25"',require:1,repeat:0},{name:"formula.functionList.COUPDAYBS.functionParameter.maturity.name",detail:"formula.functionList.COUPDAYBS.functionParameter.maturity.detail",example:'"2011-11-15"',require:1,repeat:0},{name:"formula.functionList.COUPDAYBS.functionParameter.frequency.name",detail:"formula.functionList.COUPDAYBS.functionParameter.frequency.detail",example:"2",require:1,repeat:0},{name:"formula.functionList.COUPDAYBS.functionParameter.basis.name",detail:"formula.functionList.COUPDAYBS.functionParameter.basis.detail",example:"1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.COUPDAYS,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.COUPDAYS.description",abstract:"formula.functionList.COUPDAYS.abstract",functionParameter:[{name:"formula.functionList.COUPDAYS.functionParameter.settlement.name",detail:"formula.functionList.COUPDAYS.functionParameter.settlement.detail",example:'"2011-1-25"',require:1,repeat:0},{name:"formula.functionList.COUPDAYS.functionParameter.maturity.name",detail:"formula.functionList.COUPDAYS.functionParameter.maturity.detail",example:'"2011-11-15"',require:1,repeat:0},{name:"formula.functionList.COUPDAYS.functionParameter.frequency.name",detail:"formula.functionList.COUPDAYS.functionParameter.frequency.detail",example:"2",require:1,repeat:0},{name:"formula.functionList.COUPDAYS.functionParameter.basis.name",detail:"formula.functionList.COUPDAYS.functionParameter.basis.detail",example:"1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.COUPDAYSNC,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.COUPDAYSNC.description",abstract:"formula.functionList.COUPDAYSNC.abstract",functionParameter:[{name:"formula.functionList.COUPDAYSNC.functionParameter.settlement.name",detail:"formula.functionList.COUPDAYSNC.functionParameter.settlement.detail",example:'"2011-1-25"',require:1,repeat:0},{name:"formula.functionList.COUPDAYSNC.functionParameter.maturity.name",detail:"formula.functionList.COUPDAYSNC.functionParameter.maturity.detail",example:'"2011-11-15"',require:1,repeat:0},{name:"formula.functionList.COUPDAYSNC.functionParameter.frequency.name",detail:"formula.functionList.COUPDAYSNC.functionParameter.frequency.detail",example:"2",require:1,repeat:0},{name:"formula.functionList.COUPDAYSNC.functionParameter.basis.name",detail:"formula.functionList.COUPDAYSNC.functionParameter.basis.detail",example:"1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.COUPNCD,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.COUPNCD.description",abstract:"formula.functionList.COUPNCD.abstract",functionParameter:[{name:"formula.functionList.COUPNCD.functionParameter.settlement.name",detail:"formula.functionList.COUPNCD.functionParameter.settlement.detail",example:'"2011-1-25"',require:1,repeat:0},{name:"formula.functionList.COUPNCD.functionParameter.maturity.name",detail:"formula.functionList.COUPNCD.functionParameter.maturity.detail",example:'"2011-11-15"',require:1,repeat:0},{name:"formula.functionList.COUPNCD.functionParameter.frequency.name",detail:"formula.functionList.COUPNCD.functionParameter.frequency.detail",example:"2",require:1,repeat:0},{name:"formula.functionList.COUPNCD.functionParameter.basis.name",detail:"formula.functionList.COUPNCD.functionParameter.basis.detail",example:"1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.COUPNUM,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.COUPNUM.description",abstract:"formula.functionList.COUPNUM.abstract",functionParameter:[{name:"formula.functionList.COUPNUM.functionParameter.settlement.name",detail:"formula.functionList.COUPNUM.functionParameter.settlement.detail",example:'"2011-1-25"',require:1,repeat:0},{name:"formula.functionList.COUPNUM.functionParameter.maturity.name",detail:"formula.functionList.COUPNUM.functionParameter.maturity.detail",example:'"2011-11-15"',require:1,repeat:0},{name:"formula.functionList.COUPNUM.functionParameter.frequency.name",detail:"formula.functionList.COUPNUM.functionParameter.frequency.detail",example:"2",require:1,repeat:0},{name:"formula.functionList.COUPNUM.functionParameter.basis.name",detail:"formula.functionList.COUPNUM.functionParameter.basis.detail",example:"1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.COUPPCD,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.COUPPCD.description",abstract:"formula.functionList.COUPPCD.abstract",functionParameter:[{name:"formula.functionList.COUPPCD.functionParameter.settlement.name",detail:"formula.functionList.COUPPCD.functionParameter.settlement.detail",example:'"2011-1-25"',require:1,repeat:0},{name:"formula.functionList.COUPPCD.functionParameter.maturity.name",detail:"formula.functionList.COUPPCD.functionParameter.maturity.detail",example:'"2011-11-15"',require:1,repeat:0},{name:"formula.functionList.COUPPCD.functionParameter.frequency.name",detail:"formula.functionList.COUPPCD.functionParameter.frequency.detail",example:"2",require:1,repeat:0},{name:"formula.functionList.COUPPCD.functionParameter.basis.name",detail:"formula.functionList.COUPPCD.functionParameter.basis.detail",example:"1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.CUMIPMT,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.CUMIPMT.description",abstract:"formula.functionList.CUMIPMT.abstract",functionParameter:[{name:"formula.functionList.CUMIPMT.functionParameter.rate.name",detail:"formula.functionList.CUMIPMT.functionParameter.rate.detail",example:"0.09/12",require:1,repeat:0},{name:"formula.functionList.CUMIPMT.functionParameter.nper.name",detail:"formula.functionList.CUMIPMT.functionParameter.nper.detail",example:"30*12",require:1,repeat:0},{name:"formula.functionList.CUMIPMT.functionParameter.pv.name",detail:"formula.functionList.CUMIPMT.functionParameter.pv.detail",example:"125000",require:1,repeat:0},{name:"formula.functionList.CUMIPMT.functionParameter.startPeriod.name",detail:"formula.functionList.CUMIPMT.functionParameter.startPeriod.detail",example:"13",require:1,repeat:0},{name:"formula.functionList.CUMIPMT.functionParameter.endPeriod.name",detail:"formula.functionList.CUMIPMT.functionParameter.endPeriod.detail",example:"24",require:1,repeat:0},{name:"formula.functionList.CUMIPMT.functionParameter.type.name",detail:"formula.functionList.CUMIPMT.functionParameter.type.detail",example:"0",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.CUMPRINC,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.CUMPRINC.description",abstract:"formula.functionList.CUMPRINC.abstract",functionParameter:[{name:"formula.functionList.CUMPRINC.functionParameter.rate.name",detail:"formula.functionList.CUMPRINC.functionParameter.rate.detail",example:"0.09/12",require:1,repeat:0},{name:"formula.functionList.CUMPRINC.functionParameter.nper.name",detail:"formula.functionList.CUMPRINC.functionParameter.nper.detail",example:"30*12",require:1,repeat:0},{name:"formula.functionList.CUMPRINC.functionParameter.pv.name",detail:"formula.functionList.CUMPRINC.functionParameter.pv.detail",example:"125000",require:1,repeat:0},{name:"formula.functionList.CUMPRINC.functionParameter.startPeriod.name",detail:"formula.functionList.CUMPRINC.functionParameter.startPeriod.detail",example:"13",require:1,repeat:0},{name:"formula.functionList.CUMPRINC.functionParameter.endPeriod.name",detail:"formula.functionList.CUMPRINC.functionParameter.endPeriod.detail",example:"24",require:1,repeat:0},{name:"formula.functionList.CUMPRINC.functionParameter.type.name",detail:"formula.functionList.CUMPRINC.functionParameter.type.detail",example:"0",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.DB,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.DB.description",abstract:"formula.functionList.DB.abstract",functionParameter:[{name:"formula.functionList.DB.functionParameter.cost.name",detail:"formula.functionList.DB.functionParameter.cost.detail",example:"10000000",require:1,repeat:0},{name:"formula.functionList.DB.functionParameter.salvage.name",detail:"formula.functionList.DB.functionParameter.salvage.detail",example:"1000000",require:1,repeat:0},{name:"formula.functionList.DB.functionParameter.life.name",detail:"formula.functionList.DB.functionParameter.life.detail",example:"6",require:1,repeat:0},{name:"formula.functionList.DB.functionParameter.period.name",detail:"formula.functionList.DB.functionParameter.period.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.DB.functionParameter.month.name",detail:"formula.functionList.DB.functionParameter.month.detail",example:"7",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.DDB,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.DDB.description",abstract:"formula.functionList.DDB.abstract",functionParameter:[{name:"formula.functionList.DDB.functionParameter.cost.name",detail:"formula.functionList.DDB.functionParameter.cost.detail",example:"24000",require:1,repeat:0},{name:"formula.functionList.DDB.functionParameter.salvage.name",detail:"formula.functionList.DDB.functionParameter.salvage.detail",example:"3000",require:1,repeat:0},{name:"formula.functionList.DDB.functionParameter.life.name",detail:"formula.functionList.DDB.functionParameter.life.detail",example:"10",require:1,repeat:0},{name:"formula.functionList.DDB.functionParameter.period.name",detail:"formula.functionList.DDB.functionParameter.period.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.DDB.functionParameter.factor.name",detail:"formula.functionList.DDB.functionParameter.factor.detail",example:"2",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.DISC,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.DISC.description",abstract:"formula.functionList.DISC.abstract",functionParameter:[{name:"formula.functionList.DISC.functionParameter.settlement.name",detail:"formula.functionList.DISC.functionParameter.settlement.detail",example:'"2018-7-1"',require:1,repeat:0},{name:"formula.functionList.DISC.functionParameter.maturity.name",detail:"formula.functionList.DISC.functionParameter.maturity.detail",example:'"2048-1-1"',require:1,repeat:0},{name:"formula.functionList.DISC.functionParameter.pr.name",detail:"formula.functionList.DISC.functionParameter.pr.detail",example:"97.975",require:1,repeat:0},{name:"formula.functionList.DISC.functionParameter.redemption.name",detail:"formula.functionList.DISC.functionParameter.redemption.detail",example:"100",require:1,repeat:0},{name:"formula.functionList.DISC.functionParameter.basis.name",detail:"formula.functionList.DISC.functionParameter.basis.detail",example:"1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.DOLLARDE,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.DOLLARDE.description",abstract:"formula.functionList.DOLLARDE.abstract",functionParameter:[{name:"formula.functionList.DOLLARDE.functionParameter.fractionalDollar.name",detail:"formula.functionList.DOLLARDE.functionParameter.fractionalDollar.detail",example:"1.02",require:1,repeat:0},{name:"formula.functionList.DOLLARDE.functionParameter.fraction.name",detail:"formula.functionList.DOLLARDE.functionParameter.fraction.detail",example:"16",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.DOLLARFR,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.DOLLARFR.description",abstract:"formula.functionList.DOLLARFR.abstract",functionParameter:[{name:"formula.functionList.DOLLARFR.functionParameter.decimalDollar.name",detail:"formula.functionList.DOLLARFR.functionParameter.decimalDollar.detail",example:"1.125",require:1,repeat:0},{name:"formula.functionList.DOLLARFR.functionParameter.fraction.name",detail:"formula.functionList.DOLLARFR.functionParameter.fraction.detail",example:"16",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.DURATION,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.DURATION.description",abstract:"formula.functionList.DURATION.abstract",functionParameter:[{name:"formula.functionList.DURATION.functionParameter.settlement.name",detail:"formula.functionList.DURATION.functionParameter.settlement.detail",example:'"2018-7-1"',require:1,repeat:0},{name:"formula.functionList.DURATION.functionParameter.maturity.name",detail:"formula.functionList.DURATION.functionParameter.maturity.detail",example:'"2048-1-1"',require:1,repeat:0},{name:"formula.functionList.DURATION.functionParameter.coupon.name",detail:"formula.functionList.DURATION.functionParameter.coupon.detail",example:"0.08",require:1,repeat:0},{name:"formula.functionList.DURATION.functionParameter.yld.name",detail:"formula.functionList.DURATION.functionParameter.yld.detail",example:"0.09",require:1,repeat:0},{name:"formula.functionList.DURATION.functionParameter.frequency.name",detail:"formula.functionList.DURATION.functionParameter.frequency.detail",example:"2",require:1,repeat:0},{name:"formula.functionList.DURATION.functionParameter.basis.name",detail:"formula.functionList.DURATION.functionParameter.basis.detail",example:"1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.EFFECT,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.EFFECT.description",abstract:"formula.functionList.EFFECT.abstract",functionParameter:[{name:"formula.functionList.EFFECT.functionParameter.nominalRate.name",detail:"formula.functionList.EFFECT.functionParameter.nominalRate.detail",example:"0.0525",require:1,repeat:0},{name:"formula.functionList.EFFECT.functionParameter.npery.name",detail:"formula.functionList.EFFECT.functionParameter.npery.detail",example:"4",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.FV,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.FV.description",abstract:"formula.functionList.FV.abstract",functionParameter:[{name:"formula.functionList.FV.functionParameter.rate.name",detail:"formula.functionList.FV.functionParameter.rate.detail",example:"0.06/12",require:1,repeat:0},{name:"formula.functionList.FV.functionParameter.nper.name",detail:"formula.functionList.FV.functionParameter.nper.detail",example:"10",require:1,repeat:0},{name:"formula.functionList.FV.functionParameter.pmt.name",detail:"formula.functionList.FV.functionParameter.pmt.detail",example:"-200",require:1,repeat:0},{name:"formula.functionList.FV.functionParameter.pv.name",detail:"formula.functionList.FV.functionParameter.pv.detail",example:"-500",require:0,repeat:0},{name:"formula.functionList.FV.functionParameter.type.name",detail:"formula.functionList.FV.functionParameter.type.detail",example:"1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.FVSCHEDULE,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.FVSCHEDULE.description",abstract:"formula.functionList.FVSCHEDULE.abstract",functionParameter:[{name:"formula.functionList.FVSCHEDULE.functionParameter.principal.name",detail:"formula.functionList.FVSCHEDULE.functionParameter.principal.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.FVSCHEDULE.functionParameter.schedule.name",detail:"formula.functionList.FVSCHEDULE.functionParameter.schedule.detail",example:"{0.09,0.11,0.1}",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.INTRATE,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.INTRATE.description",abstract:"formula.functionList.INTRATE.abstract",functionParameter:[{name:"formula.functionList.INTRATE.functionParameter.settlement.name",detail:"formula.functionList.INTRATE.functionParameter.settlement.detail",example:'"2008-2-15"',require:1,repeat:0},{name:"formula.functionList.INTRATE.functionParameter.maturity.name",detail:"formula.functionList.INTRATE.functionParameter.maturity.detail",example:'"2008-5-15"',require:1,repeat:0},{name:"formula.functionList.INTRATE.functionParameter.investment.name",detail:"formula.functionList.INTRATE.functionParameter.investment.detail",example:"10000000",require:1,repeat:0},{name:"formula.functionList.INTRATE.functionParameter.redemption.name",detail:"formula.functionList.INTRATE.functionParameter.redemption.detail",example:"10144200",require:1,repeat:0},{name:"formula.functionList.INTRATE.functionParameter.basis.name",detail:"formula.functionList.INTRATE.functionParameter.basis.detail",example:"2",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.IPMT,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.IPMT.description",abstract:"formula.functionList.IPMT.abstract",functionParameter:[{name:"formula.functionList.IPMT.functionParameter.rate.name",detail:"formula.functionList.IPMT.functionParameter.rate.detail",example:"0.1/12",require:1,repeat:0},{name:"formula.functionList.IPMT.functionParameter.per.name",detail:"formula.functionList.IPMT.functionParameter.per.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.IPMT.functionParameter.nper.name",detail:"formula.functionList.IPMT.functionParameter.nper.detail",example:"3*12",require:1,repeat:0},{name:"formula.functionList.IPMT.functionParameter.pv.name",detail:"formula.functionList.IPMT.functionParameter.pv.detail",example:"80000",require:1,repeat:0},{name:"formula.functionList.IPMT.functionParameter.fv.name",detail:"formula.functionList.IPMT.functionParameter.fv.detail",example:"0",require:0,repeat:0},{name:"formula.functionList.IPMT.functionParameter.type.name",detail:"formula.functionList.IPMT.functionParameter.type.detail",example:"0",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.IRR,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.IRR.description",abstract:"formula.functionList.IRR.abstract",functionParameter:[{name:"formula.functionList.IRR.functionParameter.values.name",detail:"formula.functionList.IRR.functionParameter.values.detail",example:"{-700000,120000,150000,180000,210000,260000}",require:1,repeat:0},{name:"formula.functionList.IRR.functionParameter.guess.name",detail:"formula.functionList.IRR.functionParameter.guess.detail",example:"0.1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.ISPMT,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.ISPMT.description",abstract:"formula.functionList.ISPMT.abstract",functionParameter:[{name:"formula.functionList.ISPMT.functionParameter.rate.name",detail:"formula.functionList.ISPMT.functionParameter.rate.detail",example:"0.1",require:1,repeat:0},{name:"formula.functionList.ISPMT.functionParameter.per.name",detail:"formula.functionList.ISPMT.functionParameter.per.detail",example:"2",require:1,repeat:0},{name:"formula.functionList.ISPMT.functionParameter.nper.name",detail:"formula.functionList.ISPMT.functionParameter.nper.detail",example:"5",require:1,repeat:0},{name:"formula.functionList.ISPMT.functionParameter.pv.name",detail:"formula.functionList.ISPMT.functionParameter.pv.detail",example:"1000",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.MDURATION,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.MDURATION.description",abstract:"formula.functionList.MDURATION.abstract",functionParameter:[{name:"formula.functionList.MDURATION.functionParameter.settlement.name",detail:"formula.functionList.MDURATION.functionParameter.settlement.detail",example:'"2018-7-1"',require:1,repeat:0},{name:"formula.functionList.MDURATION.functionParameter.maturity.name",detail:"formula.functionList.MDURATION.functionParameter.maturity.detail",example:'"2048-1-1"',require:1,repeat:0},{name:"formula.functionList.MDURATION.functionParameter.coupon.name",detail:"formula.functionList.MDURATION.functionParameter.coupon.detail",example:"0.08",require:1,repeat:0},{name:"formula.functionList.MDURATION.functionParameter.yld.name",detail:"formula.functionList.MDURATION.functionParameter.yld.detail",example:"0.09",require:1,repeat:0},{name:"formula.functionList.MDURATION.functionParameter.frequency.name",detail:"formula.functionList.MDURATION.functionParameter.frequency.detail",example:"2",require:1,repeat:0},{name:"formula.functionList.MDURATION.functionParameter.basis.name",detail:"formula.functionList.MDURATION.functionParameter.basis.detail",example:"1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.MIRR,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.MIRR.description",abstract:"formula.functionList.MIRR.abstract",functionParameter:[{name:"formula.functionList.MIRR.functionParameter.values.name",detail:"formula.functionList.MIRR.functionParameter.values.detail",example:"{-120000,39000,30000,21000,37000,46000}",require:1,repeat:0},{name:"formula.functionList.MIRR.functionParameter.financeRate.name",detail:"formula.functionList.MIRR.functionParameter.financeRate.detail",example:"0.1",require:1,repeat:0},{name:"formula.functionList.MIRR.functionParameter.reinvestRate.name",detail:"formula.functionList.MIRR.functionParameter.reinvestRate.detail",example:"0.12",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.NOMINAL,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.NOMINAL.description",abstract:"formula.functionList.NOMINAL.abstract",functionParameter:[{name:"formula.functionList.NOMINAL.functionParameter.effectRate.name",detail:"formula.functionList.NOMINAL.functionParameter.effectRate.detail",example:"0.053543",require:1,repeat:0},{name:"formula.functionList.NOMINAL.functionParameter.npery.name",detail:"formula.functionList.NOMINAL.functionParameter.npery.detail",example:"4",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.NPER,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.NPER.description",abstract:"formula.functionList.NPER.abstract",functionParameter:[{name:"formula.functionList.NPER.functionParameter.rate.name",detail:"formula.functionList.NPER.functionParameter.rate.detail",example:"0.12/12",require:1,repeat:0},{name:"formula.functionList.NPER.functionParameter.pmt.name",detail:"formula.functionList.NPER.functionParameter.pmt.detail",example:"-100",require:1,repeat:0},{name:"formula.functionList.NPER.functionParameter.pv.name",detail:"formula.functionList.NPER.functionParameter.pv.detail",example:"-1000",require:1,repeat:0},{name:"formula.functionList.NPER.functionParameter.fv.name",detail:"formula.functionList.NPER.functionParameter.fv.detail",example:"10000",require:0,repeat:0},{name:"formula.functionList.NPER.functionParameter.type.name",detail:"formula.functionList.NPER.functionParameter.type.detail",example:"1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.NPV,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.NPV.description",abstract:"formula.functionList.NPV.abstract",functionParameter:[{name:"formula.functionList.NPV.functionParameter.rate.name",detail:"formula.functionList.NPV.functionParameter.rate.detail",example:"0.1",require:1,repeat:0},{name:"formula.functionList.NPV.functionParameter.value1.name",detail:"formula.functionList.NPV.functionParameter.value1.detail",example:"{-10000,3000,4200,6800}",require:1,repeat:0},{name:"formula.functionList.NPV.functionParameter.value2.name",detail:"formula.functionList.NPV.functionParameter.value2.detail",example:"-9000",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.ODDFPRICE,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.ODDFPRICE.description",abstract:"formula.functionList.ODDFPRICE.abstract",functionParameter:[{name:"formula.functionList.ODDFPRICE.functionParameter.settlement.name",detail:"formula.functionList.ODDFPRICE.functionParameter.settlement.detail",example:'"2008-11-11"',require:1,repeat:0},{name:"formula.functionList.ODDFPRICE.functionParameter.maturity.name",detail:"formula.functionList.ODDFPRICE.functionParameter.maturity.detail",example:'"2021-3-1"',require:1,repeat:0},{name:"formula.functionList.ODDFPRICE.functionParameter.issue.name",detail:"formula.functionList.ODDFPRICE.functionParameter.issue.detail",example:'"2008-10-15"',require:1,repeat:0},{name:"formula.functionList.ODDFPRICE.functionParameter.firstCoupon.name",detail:"formula.functionList.ODDFPRICE.functionParameter.firstCoupon.detail",example:'"2009-3-1"',require:1,repeat:0},{name:"formula.functionList.ODDFPRICE.functionParameter.rate.name",detail:"formula.functionList.ODDFPRICE.functionParameter.rate.detail",example:"0.0785",require:1,repeat:0},{name:"formula.functionList.ODDFPRICE.functionParameter.yld.name",detail:"formula.functionList.ODDFPRICE.functionParameter.yld.detail",example:"0.0625",require:1,repeat:0},{name:"formula.functionList.ODDFPRICE.functionParameter.redemption.name",detail:"formula.functionList.ODDFPRICE.functionParameter.redemption.detail",example:"100",require:1,repeat:0},{name:"formula.functionList.ODDFPRICE.functionParameter.frequency.name",detail:"formula.functionList.ODDFPRICE.functionParameter.frequency.detail",example:"2",require:1,repeat:0},{name:"formula.functionList.ODDFPRICE.functionParameter.basis.name",detail:"formula.functionList.ODDFPRICE.functionParameter.basis.detail",example:"1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.ODDFYIELD,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.ODDFYIELD.description",abstract:"formula.functionList.ODDFYIELD.abstract",functionParameter:[{name:"formula.functionList.ODDFYIELD.functionParameter.settlement.name",detail:"formula.functionList.ODDFYIELD.functionParameter.settlement.detail",example:'"2008-11-11"',require:1,repeat:0},{name:"formula.functionList.ODDFYIELD.functionParameter.maturity.name",detail:"formula.functionList.ODDFYIELD.functionParameter.maturity.detail",example:'"2021-3-1"',require:1,repeat:0},{name:"formula.functionList.ODDFYIELD.functionParameter.issue.name",detail:"formula.functionList.ODDFYIELD.functionParameter.issue.detail",example:'"2008-10-15"',require:1,repeat:0},{name:"formula.functionList.ODDFYIELD.functionParameter.firstCoupon.name",detail:"formula.functionList.ODDFYIELD.functionParameter.firstCoupon.detail",example:'"2009-3-1"',require:1,repeat:0},{name:"formula.functionList.ODDFYIELD.functionParameter.rate.name",detail:"formula.functionList.ODDFYIELD.functionParameter.rate.detail",example:"0.0575",require:1,repeat:0},{name:"formula.functionList.ODDFYIELD.functionParameter.pr.name",detail:"formula.functionList.ODDFYIELD.functionParameter.pr.detail",example:"84.5",require:1,repeat:0},{name:"formula.functionList.ODDFYIELD.functionParameter.redemption.name",detail:"formula.functionList.ODDFYIELD.functionParameter.redemption.detail",example:"100",require:1,repeat:0},{name:"formula.functionList.ODDFYIELD.functionParameter.frequency.name",detail:"formula.functionList.ODDFYIELD.functionParameter.frequency.detail",example:"2",require:1,repeat:0},{name:"formula.functionList.ODDFYIELD.functionParameter.basis.name",detail:"formula.functionList.ODDFYIELD.functionParameter.basis.detail",example:"0",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.ODDLPRICE,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.ODDLPRICE.description",abstract:"formula.functionList.ODDLPRICE.abstract",functionParameter:[{name:"formula.functionList.ODDLPRICE.functionParameter.settlement.name",detail:"formula.functionList.ODDLPRICE.functionParameter.settlement.detail",example:'"2008-11-11"',require:1,repeat:0},{name:"formula.functionList.ODDLPRICE.functionParameter.maturity.name",detail:"formula.functionList.ODDLPRICE.functionParameter.maturity.detail",example:'"2021-3-1"',require:1,repeat:0},{name:"formula.functionList.ODDLPRICE.functionParameter.lastInterest.name",detail:"formula.functionList.ODDLPRICE.functionParameter.lastInterest.detail",example:'"2009-3-1"',require:1,repeat:0},{name:"formula.functionList.ODDLPRICE.functionParameter.rate.name",detail:"formula.functionList.ODDLPRICE.functionParameter.rate.detail",example:"0.0785",require:1,repeat:0},{name:"formula.functionList.ODDLPRICE.functionParameter.yld.name",detail:"formula.functionList.ODDLPRICE.functionParameter.yld.detail",example:"0.0625",require:1,repeat:0},{name:"formula.functionList.ODDLPRICE.functionParameter.redemption.name",detail:"formula.functionList.ODDLPRICE.functionParameter.redemption.detail",example:"100",require:1,repeat:0},{name:"formula.functionList.ODDLPRICE.functionParameter.frequency.name",detail:"formula.functionList.ODDLPRICE.functionParameter.frequency.detail",example:"2",require:1,repeat:0},{name:"formula.functionList.ODDLPRICE.functionParameter.basis.name",detail:"formula.functionList.ODDLPRICE.functionParameter.basis.detail",example:"1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.ODDLYIELD,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.ODDLYIELD.description",abstract:"formula.functionList.ODDLYIELD.abstract",functionParameter:[{name:"formula.functionList.ODDLYIELD.functionParameter.settlement.name",detail:"formula.functionList.ODDLYIELD.functionParameter.settlement.detail",example:'"2008-11-11"',require:1,repeat:0},{name:"formula.functionList.ODDLYIELD.functionParameter.maturity.name",detail:"formula.functionList.ODDLYIELD.functionParameter.maturity.detail",example:'"2021-3-1"',require:1,repeat:0},{name:"formula.functionList.ODDLYIELD.functionParameter.lastInterest.name",detail:"formula.functionList.ODDLYIELD.functionParameter.lastInterest.detail",example:'"2008-10-15"',require:1,repeat:0},{name:"formula.functionList.ODDLYIELD.functionParameter.rate.name",detail:"formula.functionList.ODDLYIELD.functionParameter.rate.detail",example:"0.0575",require:1,repeat:0},{name:"formula.functionList.ODDLYIELD.functionParameter.pr.name",detail:"formula.functionList.ODDLYIELD.functionParameter.pr.detail",example:"84.5",require:1,repeat:0},{name:"formula.functionList.ODDLYIELD.functionParameter.redemption.name",detail:"formula.functionList.ODDLYIELD.functionParameter.redemption.detail",example:"100",require:1,repeat:0},{name:"formula.functionList.ODDLYIELD.functionParameter.frequency.name",detail:"formula.functionList.ODDLYIELD.functionParameter.frequency.detail",example:"2",require:1,repeat:0},{name:"formula.functionList.ODDLYIELD.functionParameter.basis.name",detail:"formula.functionList.ODDLYIELD.functionParameter.basis.detail",example:"0",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.PDURATION,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.PDURATION.description",abstract:"formula.functionList.PDURATION.abstract",functionParameter:[{name:"formula.functionList.PDURATION.functionParameter.rate.name",detail:"formula.functionList.PDURATION.functionParameter.rate.detail",example:"0.025",require:1,repeat:0},{name:"formula.functionList.PDURATION.functionParameter.pv.name",detail:"formula.functionList.PDURATION.functionParameter.pv.detail",example:"2000",require:1,repeat:0},{name:"formula.functionList.PDURATION.functionParameter.fv.name",detail:"formula.functionList.PDURATION.functionParameter.fv.detail",example:"2200",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.PMT,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.PMT.description",abstract:"formula.functionList.PMT.abstract",functionParameter:[{name:"formula.functionList.PMT.functionParameter.rate.name",detail:"formula.functionList.PMT.functionParameter.rate.detail",example:"0.08/12",require:1,repeat:0},{name:"formula.functionList.PMT.functionParameter.nper.name",detail:"formula.functionList.PMT.functionParameter.nper.detail",example:"10",require:1,repeat:0},{name:"formula.functionList.PMT.functionParameter.pv.name",detail:"formula.functionList.PMT.functionParameter.pv.detail",example:"10000",require:1,repeat:0},{name:"formula.functionList.PMT.functionParameter.fv.name",detail:"formula.functionList.PMT.functionParameter.fv.detail",example:"0",require:0,repeat:0},{name:"formula.functionList.PMT.functionParameter.type.name",detail:"formula.functionList.PMT.functionParameter.type.detail",example:"0",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.PPMT,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.PPMT.description",abstract:"formula.functionList.PPMT.abstract",functionParameter:[{name:"formula.functionList.PPMT.functionParameter.rate.name",detail:"formula.functionList.PPMT.functionParameter.rate.detail",example:"0.1/12",require:1,repeat:0},{name:"formula.functionList.PPMT.functionParameter.per.name",detail:"formula.functionList.PPMT.functionParameter.per.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.PPMT.functionParameter.nper.name",detail:"formula.functionList.PPMT.functionParameter.nper.detail",example:"3*12",require:1,repeat:0},{name:"formula.functionList.PPMT.functionParameter.pv.name",detail:"formula.functionList.PPMT.functionParameter.pv.detail",example:"80000",require:1,repeat:0},{name:"formula.functionList.PPMT.functionParameter.fv.name",detail:"formula.functionList.PPMT.functionParameter.fv.detail",example:"0",require:0,repeat:0},{name:"formula.functionList.PPMT.functionParameter.type.name",detail:"formula.functionList.PPMT.functionParameter.type.detail",example:"0",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.PRICE,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.PRICE.description",abstract:"formula.functionList.PRICE.abstract",functionParameter:[{name:"formula.functionList.PRICE.functionParameter.settlement.name",detail:"formula.functionList.PRICE.functionParameter.settlement.detail",example:'"2008-11-11"',require:1,repeat:0},{name:"formula.functionList.PRICE.functionParameter.maturity.name",detail:"formula.functionList.PRICE.functionParameter.maturity.detail",example:'"2021-3-1"',require:1,repeat:0},{name:"formula.functionList.PRICE.functionParameter.rate.name",detail:"formula.functionList.PRICE.functionParameter.rate.detail",example:"0.0785",require:1,repeat:0},{name:"formula.functionList.PRICE.functionParameter.yld.name",detail:"formula.functionList.PRICE.functionParameter.yld.detail",example:"0.0625",require:1,repeat:0},{name:"formula.functionList.PRICE.functionParameter.redemption.name",detail:"formula.functionList.PRICE.functionParameter.redemption.detail",example:"100",require:1,repeat:0},{name:"formula.functionList.PRICE.functionParameter.frequency.name",detail:"formula.functionList.PRICE.functionParameter.frequency.detail",example:"2",require:1,repeat:0},{name:"formula.functionList.PRICE.functionParameter.basis.name",detail:"formula.functionList.PRICE.functionParameter.basis.detail",example:"1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.PRICEDISC,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.PRICEDISC.description",abstract:"formula.functionList.PRICEDISC.abstract",functionParameter:[{name:"formula.functionList.PRICEDISC.functionParameter.settlement.name",detail:"formula.functionList.PRICEDISC.functionParameter.settlement.detail",example:'"2008-11-11"',require:1,repeat:0},{name:"formula.functionList.PRICEDISC.functionParameter.maturity.name",detail:"formula.functionList.PRICEDISC.functionParameter.maturity.detail",example:'"2021-3-1"',require:1,repeat:0},{name:"formula.functionList.PRICEDISC.functionParameter.discount.name",detail:"formula.functionList.PRICEDISC.functionParameter.discount.detail",example:"0.0625",require:1,repeat:0},{name:"formula.functionList.PRICEDISC.functionParameter.redemption.name",detail:"formula.functionList.PRICEDISC.functionParameter.redemption.detail",example:"100",require:1,repeat:0},{name:"formula.functionList.PRICEDISC.functionParameter.basis.name",detail:"formula.functionList.PRICEDISC.functionParameter.basis.detail",example:"1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.PRICEMAT,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.PRICEMAT.description",abstract:"formula.functionList.PRICEMAT.abstract",functionParameter:[{name:"formula.functionList.PRICEMAT.functionParameter.settlement.name",detail:"formula.functionList.PRICEMAT.functionParameter.settlement.detail",example:'"2008-11-11"',require:1,repeat:0},{name:"formula.functionList.PRICEMAT.functionParameter.maturity.name",detail:"formula.functionList.PRICEMAT.functionParameter.maturity.detail",example:'"2021-3-1"',require:1,repeat:0},{name:"formula.functionList.PRICEMAT.functionParameter.issue.name",detail:"formula.functionList.PRICEMAT.functionParameter.issue.detail",example:'"2008-10-15"',require:1,repeat:0},{name:"formula.functionList.PRICEMAT.functionParameter.rate.name",detail:"formula.functionList.PRICEMAT.functionParameter.rate.detail",example:"0.0785",require:1,repeat:0},{name:"formula.functionList.PRICEMAT.functionParameter.yld.name",detail:"formula.functionList.PRICEMAT.functionParameter.yld.detail",example:"0.0625",require:1,repeat:0},{name:"formula.functionList.PRICEMAT.functionParameter.basis.name",detail:"formula.functionList.PRICEMAT.functionParameter.basis.detail",example:"1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.PV,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.PV.description",abstract:"formula.functionList.PV.abstract",functionParameter:[{name:"formula.functionList.PV.functionParameter.rate.name",detail:"formula.functionList.PV.functionParameter.rate.detail",example:"0.02",require:1,repeat:0},{name:"formula.functionList.PV.functionParameter.nper.name",detail:"formula.functionList.PV.functionParameter.nper.detail",example:"12",require:1,repeat:0},{name:"formula.functionList.PV.functionParameter.pmt.name",detail:"formula.functionList.PV.functionParameter.pmt.detail",example:"100",require:1,repeat:0},{name:"formula.functionList.PV.functionParameter.fv.name",detail:"formula.functionList.PV.functionParameter.fv.detail",example:"0",require:0,repeat:0},{name:"formula.functionList.PV.functionParameter.type.name",detail:"formula.functionList.PV.functionParameter.type.detail",example:"0",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.RATE,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.RATE.description",abstract:"formula.functionList.RATE.abstract",functionParameter:[{name:"formula.functionList.RATE.functionParameter.nper.name",detail:"formula.functionList.RATE.functionParameter.nper.detail",example:"4*12",require:1,repeat:0},{name:"formula.functionList.RATE.functionParameter.pmt.name",detail:"formula.functionList.RATE.functionParameter.pmt.detail",example:"-200",require:1,repeat:0},{name:"formula.functionList.RATE.functionParameter.pv.name",detail:"formula.functionList.RATE.functionParameter.pv.detail",example:"8000",require:1,repeat:0},{name:"formula.functionList.RATE.functionParameter.fv.name",detail:"formula.functionList.RATE.functionParameter.fv.detail",example:"0",require:0,repeat:0},{name:"formula.functionList.RATE.functionParameter.type.name",detail:"formula.functionList.RATE.functionParameter.type.detail",example:"0",require:0,repeat:0},{name:"formula.functionList.RATE.functionParameter.guess.name",detail:"formula.functionList.RATE.functionParameter.guess.detail",example:"0.1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.RECEIVED,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.RECEIVED.description",abstract:"formula.functionList.RECEIVED.abstract",functionParameter:[{name:"formula.functionList.RECEIVED.functionParameter.settlement.name",detail:"formula.functionList.RECEIVED.functionParameter.settlement.detail",example:'"2008-2-15"',require:1,repeat:0},{name:"formula.functionList.RECEIVED.functionParameter.maturity.name",detail:"formula.functionList.RECEIVED.functionParameter.maturity.detail",example:'"2008-3-15"',require:1,repeat:0},{name:"formula.functionList.RECEIVED.functionParameter.investment.name",detail:"formula.functionList.RECEIVED.functionParameter.investment.detail",example:"10000000",require:1,repeat:0},{name:"formula.functionList.RECEIVED.functionParameter.discount.name",detail:"formula.functionList.RECEIVED.functionParameter.discount.detail",example:"0.0575",require:1,repeat:0},{name:"formula.functionList.RECEIVED.functionParameter.basis.name",detail:"formula.functionList.RECEIVED.functionParameter.basis.detail",example:"2",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.RRI,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.RRI.description",abstract:"formula.functionList.RRI.abstract",functionParameter:[{name:"formula.functionList.RRI.functionParameter.nper.name",detail:"formula.functionList.RRI.functionParameter.nper.detail",example:"96",require:1,repeat:0},{name:"formula.functionList.RRI.functionParameter.pv.name",detail:"formula.functionList.RRI.functionParameter.pv.detail",example:"10000",require:1,repeat:0},{name:"formula.functionList.RRI.functionParameter.fv.name",detail:"formula.functionList.RRI.functionParameter.fv.detail",example:"11000",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.SLN,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.SLN.description",abstract:"formula.functionList.SLN.abstract",functionParameter:[{name:"formula.functionList.SLN.functionParameter.cost.name",detail:"formula.functionList.SLN.functionParameter.cost.detail",example:"300000",require:1,repeat:0},{name:"formula.functionList.SLN.functionParameter.salvage.name",detail:"formula.functionList.SLN.functionParameter.salvage.detail",example:"75000",require:1,repeat:0},{name:"formula.functionList.SLN.functionParameter.life.name",detail:"formula.functionList.SLN.functionParameter.life.detail",example:"10",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.SYD,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.SYD.description",abstract:"formula.functionList.SYD.abstract",functionParameter:[{name:"formula.functionList.SYD.functionParameter.cost.name",detail:"formula.functionList.SYD.functionParameter.cost.detail",example:"300000",require:1,repeat:0},{name:"formula.functionList.SYD.functionParameter.salvage.name",detail:"formula.functionList.SYD.functionParameter.salvage.detail",example:"75000",require:1,repeat:0},{name:"formula.functionList.SYD.functionParameter.life.name",detail:"formula.functionList.SYD.functionParameter.life.detail",example:"10",require:1,repeat:0},{name:"formula.functionList.SYD.functionParameter.per.name",detail:"formula.functionList.SYD.functionParameter.per.detail",example:"10",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.TBILLEQ,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.TBILLEQ.description",abstract:"formula.functionList.TBILLEQ.abstract",functionParameter:[{name:"formula.functionList.TBILLEQ.functionParameter.settlement.name",detail:"formula.functionList.TBILLEQ.functionParameter.settlement.detail",example:'"2008-3-31"',require:1,repeat:0},{name:"formula.functionList.TBILLEQ.functionParameter.maturity.name",detail:"formula.functionList.TBILLEQ.functionParameter.maturity.detail",example:'"2008-6-1"',require:1,repeat:0},{name:"formula.functionList.TBILLEQ.functionParameter.discount.name",detail:"formula.functionList.TBILLEQ.functionParameter.discount.detail",example:"0.0914",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.TBILLPRICE,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.TBILLPRICE.description",abstract:"formula.functionList.TBILLPRICE.abstract",functionParameter:[{name:"formula.functionList.TBILLPRICE.functionParameter.settlement.name",detail:"formula.functionList.TBILLPRICE.functionParameter.settlement.detail",example:'"2008-3-31"',require:1,repeat:0},{name:"formula.functionList.TBILLPRICE.functionParameter.maturity.name",detail:"formula.functionList.TBILLPRICE.functionParameter.maturity.detail",example:'"2008-6-1"',require:1,repeat:0},{name:"formula.functionList.TBILLPRICE.functionParameter.discount.name",detail:"formula.functionList.TBILLPRICE.functionParameter.discount.detail",example:"0.0914",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.TBILLYIELD,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.TBILLYIELD.description",abstract:"formula.functionList.TBILLYIELD.abstract",functionParameter:[{name:"formula.functionList.TBILLYIELD.functionParameter.settlement.name",detail:"formula.functionList.TBILLYIELD.functionParameter.settlement.detail",example:'"2008-3-31"',require:1,repeat:0},{name:"formula.functionList.TBILLYIELD.functionParameter.maturity.name",detail:"formula.functionList.TBILLYIELD.functionParameter.maturity.detail",example:'"2008-6-1"',require:1,repeat:0},{name:"formula.functionList.TBILLYIELD.functionParameter.pr.name",detail:"formula.functionList.TBILLYIELD.functionParameter.pr.detail",example:"98.45",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.VDB,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.VDB.description",abstract:"formula.functionList.VDB.abstract",functionParameter:[{name:"formula.functionList.VDB.functionParameter.cost.name",detail:"formula.functionList.VDB.functionParameter.cost.detail",example:"2400",require:1,repeat:0},{name:"formula.functionList.VDB.functionParameter.salvage.name",detail:"formula.functionList.VDB.functionParameter.salvage.detail",example:"300",require:1,repeat:0},{name:"formula.functionList.VDB.functionParameter.life.name",detail:"formula.functionList.VDB.functionParameter.life.detail",example:"10",require:1,repeat:0},{name:"formula.functionList.VDB.functionParameter.startPeriod.name",detail:"formula.functionList.VDB.functionParameter.startPeriod.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.VDB.functionParameter.endPeriod.name",detail:"formula.functionList.VDB.functionParameter.endPeriod.detail",example:"2",require:1,repeat:0},{name:"formula.functionList.VDB.functionParameter.factor.name",detail:"formula.functionList.VDB.functionParameter.factor.detail",example:"2",require:0,repeat:0},{name:"formula.functionList.VDB.functionParameter.noSwitch.name",detail:"formula.functionList.VDB.functionParameter.noSwitch.detail",example:"false",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.XIRR,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.XIRR.description",abstract:"formula.functionList.XIRR.abstract",functionParameter:[{name:"formula.functionList.XIRR.functionParameter.values.name",detail:"formula.functionList.XIRR.functionParameter.values.detail",example:"{-10000,2750,4250,3250,2750}",require:1,repeat:0},{name:"formula.functionList.XIRR.functionParameter.dates.name",detail:"formula.functionList.XIRR.functionParameter.dates.detail",example:"{39448,39508,39751,39859,39904}",require:1,repeat:0},{name:"formula.functionList.XIRR.functionParameter.guess.name",detail:"formula.functionList.XIRR.functionParameter.guess.detail",example:"0.1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.XNPV,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.XNPV.description",abstract:"formula.functionList.XNPV.abstract",functionParameter:[{name:"formula.functionList.XNPV.functionParameter.rate.name",detail:"formula.functionList.XNPV.functionParameter.rate.detail",example:"0.1",require:1,repeat:0},{name:"formula.functionList.XNPV.functionParameter.values.name",detail:"formula.functionList.XNPV.functionParameter.values.detail",example:"{-10000,2750,4250,3250,2750}",require:1,repeat:0},{name:"formula.functionList.XNPV.functionParameter.dates.name",detail:"formula.functionList.XNPV.functionParameter.dates.detail",example:"{39448,39508,39751,39859,39904}",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.YIELD,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.YIELD.description",abstract:"formula.functionList.YIELD.abstract",functionParameter:[{name:"formula.functionList.YIELD.functionParameter.settlement.name",detail:"formula.functionList.YIELD.functionParameter.settlement.detail",example:'"2008-11-11"',require:1,repeat:0},{name:"formula.functionList.YIELD.functionParameter.maturity.name",detail:"formula.functionList.YIELD.functionParameter.maturity.detail",example:'"2021-3-1"',require:1,repeat:0},{name:"formula.functionList.YIELD.functionParameter.rate.name",detail:"formula.functionList.YIELD.functionParameter.rate.detail",example:"0.0785",require:1,repeat:0},{name:"formula.functionList.YIELD.functionParameter.pr.name",detail:"formula.functionList.YIELD.functionParameter.pr.detail",example:"98.45",require:1,repeat:0},{name:"formula.functionList.YIELD.functionParameter.redemption.name",detail:"formula.functionList.YIELD.functionParameter.redemption.detail",example:"100",require:1,repeat:0},{name:"formula.functionList.YIELD.functionParameter.frequency.name",detail:"formula.functionList.YIELD.functionParameter.frequency.detail",example:"2",require:1,repeat:0},{name:"formula.functionList.YIELD.functionParameter.basis.name",detail:"formula.functionList.YIELD.functionParameter.basis.detail",example:"1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.YIELDDISC,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.YIELDDISC.description",abstract:"formula.functionList.YIELDDISC.abstract",functionParameter:[{name:"formula.functionList.YIELDDISC.functionParameter.settlement.name",detail:"formula.functionList.YIELDDISC.functionParameter.settlement.detail",example:'"2008-11-11"',require:1,repeat:0},{name:"formula.functionList.YIELDDISC.functionParameter.maturity.name",detail:"formula.functionList.YIELDDISC.functionParameter.maturity.detail",example:'"2021-3-1"',require:1,repeat:0},{name:"formula.functionList.YIELDDISC.functionParameter.pr.name",detail:"formula.functionList.YIELDDISC.functionParameter.pr.detail",example:"98.45",require:1,repeat:0},{name:"formula.functionList.YIELDDISC.functionParameter.redemption.name",detail:"formula.functionList.YIELDDISC.functionParameter.redemption.detail",example:"100",require:1,repeat:0},{name:"formula.functionList.YIELDDISC.functionParameter.basis.name",detail:"formula.functionList.YIELDDISC.functionParameter.basis.detail",example:"1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_FINANCIAL.YIELDMAT,functionType:engineFormula.FunctionType.Financial,description:"formula.functionList.YIELDMAT.description",abstract:"formula.functionList.YIELDMAT.abstract",functionParameter:[{name:"formula.functionList.YIELDMAT.functionParameter.settlement.name",detail:"formula.functionList.YIELDMAT.functionParameter.settlement.detail",example:'"2008-11-11"',require:1,repeat:0},{name:"formula.functionList.YIELDMAT.functionParameter.maturity.name",detail:"formula.functionList.YIELDMAT.functionParameter.maturity.detail",example:'"2021-3-1"',require:1,repeat:0},{name:"formula.functionList.YIELDMAT.functionParameter.issue.name",detail:"formula.functionList.YIELDMAT.functionParameter.issue.detail",example:'"2008-10-15"',require:1,repeat:0},{name:"formula.functionList.YIELDMAT.functionParameter.rate.name",detail:"formula.functionList.YIELDMAT.functionParameter.rate.detail",example:"0.0785",require:1,repeat:0},{name:"formula.functionList.YIELDMAT.functionParameter.pr.name",detail:"formula.functionList.YIELDMAT.functionParameter.pr.detail",example:"98.45",require:1,repeat:0},{name:"formula.functionList.YIELDMAT.functionParameter.basis.name",detail:"formula.functionList.YIELDMAT.functionParameter.basis.detail",example:"1",require:0,repeat:0}]}],FUNCTION_LIST_INFORMATION=[{functionName:engineFormula.FUNCTION_NAMES_INFORMATION.CELL,functionType:engineFormula.FunctionType.Information,description:"formula.functionList.CELL.description",abstract:"formula.functionList.CELL.abstract",functionParameter:[{name:"formula.functionList.CELL.functionParameter.infoType.name",detail:"formula.functionList.CELL.functionParameter.infoType.detail",example:'"type"',require:1,repeat:0},{name:"formula.functionList.CELL.functionParameter.reference.name",detail:"formula.functionList.CELL.functionParameter.reference.detail",example:"A1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_INFORMATION.ERROR_TYPE,functionType:engineFormula.FunctionType.Information,description:"formula.functionList.ERROR_TYPE.description",abstract:"formula.functionList.ERROR_TYPE.abstract",functionParameter:[{name:"formula.functionList.ERROR_TYPE.functionParameter.errorVal.name",detail:"formula.functionList.ERROR_TYPE.functionParameter.errorVal.detail",example:'"#NULL!"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_INFORMATION.INFO,functionType:engineFormula.FunctionType.Information,description:"formula.functionList.INFO.description",abstract:"formula.functionList.INFO.abstract",functionParameter:[{name:"formula.functionList.INFO.functionParameter.number1.name",detail:"formula.functionList.INFO.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.INFO.functionParameter.number2.name",detail:"formula.functionList.INFO.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_INFORMATION.ISBLANK,functionType:engineFormula.FunctionType.Information,description:"formula.functionList.ISBLANK.description",abstract:"formula.functionList.ISBLANK.abstract",functionParameter:[{name:"formula.functionList.ISBLANK.functionParameter.value.name",detail:"formula.functionList.ISBLANK.functionParameter.value.detail",example:"A1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_INFORMATION.ISERR,functionType:engineFormula.FunctionType.Information,description:"formula.functionList.ISERR.description",abstract:"formula.functionList.ISERR.abstract",functionParameter:[{name:"formula.functionList.ISERR.functionParameter.value.name",detail:"formula.functionList.ISERR.functionParameter.value.detail",example:"A1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_INFORMATION.ISERROR,functionType:engineFormula.FunctionType.Information,description:"formula.functionList.ISERROR.description",abstract:"formula.functionList.ISERROR.abstract",functionParameter:[{name:"formula.functionList.ISERROR.functionParameter.value.name",detail:"formula.functionList.ISERROR.functionParameter.value.detail",example:"A1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_INFORMATION.ISEVEN,functionType:engineFormula.FunctionType.Information,description:"formula.functionList.ISEVEN.description",abstract:"formula.functionList.ISEVEN.abstract",functionParameter:[{name:"formula.functionList.ISEVEN.functionParameter.value.name",detail:"formula.functionList.ISEVEN.functionParameter.value.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_INFORMATION.ISFORMULA,functionType:engineFormula.FunctionType.Information,description:"formula.functionList.ISFORMULA.description",abstract:"formula.functionList.ISFORMULA.abstract",functionParameter:[{name:"formula.functionList.ISFORMULA.functionParameter.reference.name",detail:"formula.functionList.ISFORMULA.functionParameter.reference.detail",example:"A1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_INFORMATION.ISLOGICAL,functionType:engineFormula.FunctionType.Information,description:"formula.functionList.ISLOGICAL.description",abstract:"formula.functionList.ISLOGICAL.abstract",functionParameter:[{name:"formula.functionList.ISLOGICAL.functionParameter.value.name",detail:"formula.functionList.ISLOGICAL.functionParameter.value.detail",example:"A1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_INFORMATION.ISNA,functionType:engineFormula.FunctionType.Information,description:"formula.functionList.ISNA.description",abstract:"formula.functionList.ISNA.abstract",functionParameter:[{name:"formula.functionList.ISNA.functionParameter.value.name",detail:"formula.functionList.ISNA.functionParameter.value.detail",example:"A1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_INFORMATION.ISNONTEXT,functionType:engineFormula.FunctionType.Information,description:"formula.functionList.ISNONTEXT.description",abstract:"formula.functionList.ISNONTEXT.abstract",functionParameter:[{name:"formula.functionList.ISNONTEXT.functionParameter.value.name",detail:"formula.functionList.ISNONTEXT.functionParameter.value.detail",example:"A1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_INFORMATION.ISNUMBER,functionType:engineFormula.FunctionType.Information,description:"formula.functionList.ISNUMBER.description",abstract:"formula.functionList.ISNUMBER.abstract",functionParameter:[{name:"formula.functionList.ISNUMBER.functionParameter.value.name",detail:"formula.functionList.ISNUMBER.functionParameter.value.detail",example:"A1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_INFORMATION.ISODD,functionType:engineFormula.FunctionType.Information,description:"formula.functionList.ISODD.description",abstract:"formula.functionList.ISODD.abstract",functionParameter:[{name:"formula.functionList.ISODD.functionParameter.value.name",detail:"formula.functionList.ISODD.functionParameter.value.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_INFORMATION.ISOMITTED,functionType:engineFormula.FunctionType.Information,description:"formula.functionList.ISOMITTED.description",abstract:"formula.functionList.ISOMITTED.abstract",functionParameter:[{name:"formula.functionList.ISOMITTED.functionParameter.number1.name",detail:"formula.functionList.ISOMITTED.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.ISOMITTED.functionParameter.number2.name",detail:"formula.functionList.ISOMITTED.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_INFORMATION.ISREF,functionType:engineFormula.FunctionType.Information,description:"formula.functionList.ISREF.description",abstract:"formula.functionList.ISREF.abstract",functionParameter:[{name:"formula.functionList.ISREF.functionParameter.value.name",detail:"formula.functionList.ISREF.functionParameter.value.detail",example:"A1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_INFORMATION.ISTEXT,functionType:engineFormula.FunctionType.Information,description:"formula.functionList.ISTEXT.description",abstract:"formula.functionList.ISTEXT.abstract",functionParameter:[{name:"formula.functionList.ISTEXT.functionParameter.value.name",detail:"formula.functionList.ISTEXT.functionParameter.value.detail",example:"A1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_INFORMATION.N,functionType:engineFormula.FunctionType.Information,description:"formula.functionList.N.description",abstract:"formula.functionList.N.abstract",functionParameter:[{name:"formula.functionList.N.functionParameter.value.name",detail:"formula.functionList.N.functionParameter.value.detail",example:"7",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_INFORMATION.NA,functionType:engineFormula.FunctionType.Information,description:"formula.functionList.NA.description",abstract:"formula.functionList.NA.abstract",functionParameter:[]},{functionName:engineFormula.FUNCTION_NAMES_INFORMATION.SHEET,functionType:engineFormula.FunctionType.Information,description:"formula.functionList.SHEET.description",abstract:"formula.functionList.SHEET.abstract",functionParameter:[{name:"formula.functionList.SHEET.functionParameter.number1.name",detail:"formula.functionList.SHEET.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.SHEET.functionParameter.number2.name",detail:"formula.functionList.SHEET.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_INFORMATION.SHEETS,functionType:engineFormula.FunctionType.Information,description:"formula.functionList.SHEETS.description",abstract:"formula.functionList.SHEETS.abstract",functionParameter:[{name:"formula.functionList.SHEETS.functionParameter.number1.name",detail:"formula.functionList.SHEETS.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.SHEETS.functionParameter.number2.name",detail:"formula.functionList.SHEETS.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_INFORMATION.TYPE,functionType:engineFormula.FunctionType.Information,description:"formula.functionList.TYPE.description",abstract:"formula.functionList.TYPE.abstract",functionParameter:[{name:"formula.functionList.TYPE.functionParameter.value.name",detail:"formula.functionList.TYPE.functionParameter.value.detail",example:"A2",require:1,repeat:0}]}],FUNCTION_LIST_LOGICAL=[{functionName:engineFormula.FUNCTION_NAMES_LOGICAL.AND,functionType:engineFormula.FunctionType.Logical,description:"formula.functionList.AND.description",abstract:"formula.functionList.AND.abstract",functionParameter:[{name:"formula.functionList.AND.functionParameter.logical1.name",detail:"formula.functionList.AND.functionParameter.logical1.detail",example:"A1=1",require:1,repeat:0},{name:"formula.functionList.AND.functionParameter.logical2.name",detail:"formula.functionList.AND.functionParameter.logical2.detail",example:"A2=2",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_LOGICAL.BYCOL,functionType:engineFormula.FunctionType.Logical,description:"formula.functionList.BYCOL.description",abstract:"formula.functionList.BYCOL.abstract",functionParameter:[{name:"formula.functionList.BYCOL.functionParameter.array.name",detail:"formula.functionList.BYCOL.functionParameter.array.detail",example:"A1:C2",require:1,repeat:0},{name:"formula.functionList.BYCOL.functionParameter.lambda.name",detail:"formula.functionList.BYCOL.functionParameter.lambda.detail",example:"LAMBDA(array, MAX(array))",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOGICAL.BYROW,functionType:engineFormula.FunctionType.Logical,description:"formula.functionList.BYROW.description",abstract:"formula.functionList.BYROW.abstract",functionParameter:[{name:"formula.functionList.BYROW.functionParameter.array.name",detail:"formula.functionList.BYROW.functionParameter.array.detail",example:"A1:C2",require:1,repeat:0},{name:"formula.functionList.BYROW.functionParameter.lambda.name",detail:"formula.functionList.BYROW.functionParameter.lambda.detail",example:"LAMBDA(array, MAX(array))",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOGICAL.FALSE,functionType:engineFormula.FunctionType.Logical,description:"formula.functionList.FALSE.description",abstract:"formula.functionList.FALSE.abstract",functionParameter:[]},{functionName:engineFormula.FUNCTION_NAMES_LOGICAL.IF,functionType:engineFormula.FunctionType.Logical,description:"formula.functionList.IF.description",abstract:"formula.functionList.IF.abstract",functionParameter:[{name:"formula.functionList.IF.functionParameter.logicalTest.name",detail:"formula.functionList.IF.functionParameter.logicalTest.detail",example:'A2 = "foo"',require:1,repeat:0},{name:"formula.functionList.IF.functionParameter.valueIfTrue.name",detail:"formula.functionList.IF.functionParameter.valueIfTrue.detail",example:'"A2 is foo"',require:1,repeat:0},{name:"formula.functionList.IF.functionParameter.valueIfFalse.name",detail:"formula.functionList.IF.functionParameter.valueIfFalse.detail",example:'"A2 is not foo"',require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOGICAL.IFERROR,functionType:engineFormula.FunctionType.Logical,description:"formula.functionList.IFERROR.description",abstract:"formula.functionList.IFERROR.abstract",functionParameter:[{name:"formula.functionList.IFERROR.functionParameter.value.name",detail:"formula.functionList.IFERROR.functionParameter.value.detail",example:"A2/B2",require:1,repeat:0},{name:"formula.functionList.IFERROR.functionParameter.valueIfError.name",detail:"formula.functionList.IFERROR.functionParameter.valueIfError.detail",example:"Error in calculation",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOGICAL.IFNA,functionType:engineFormula.FunctionType.Logical,description:"formula.functionList.IFNA.description",abstract:"formula.functionList.IFNA.abstract",functionParameter:[{name:"formula.functionList.IFNA.functionParameter.value.name",detail:"formula.functionList.IFNA.functionParameter.value.detail",example:"VLOOKUP(C3,C6:D11,2,FALSE)",require:1,repeat:0},{name:"formula.functionList.IFNA.functionParameter.valueIfNa.name",detail:"formula.functionList.IFNA.functionParameter.valueIfNa.detail",example:'"Not Found"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOGICAL.IFS,functionType:engineFormula.FunctionType.Logical,description:"formula.functionList.IFS.description",abstract:"formula.functionList.IFS.abstract",functionParameter:[{name:"formula.functionList.IFS.functionParameter.logicalTest1.name",detail:"formula.functionList.IFS.functionParameter.logicalTest1.detail",example:'A2 = "foo"',require:1,repeat:0},{name:"formula.functionList.IFS.functionParameter.valueIfTrue1.name",detail:"formula.functionList.IFS.functionParameter.valueIfTrue1.detail",example:'"A2 is foo"',require:1,repeat:0},{name:"formula.functionList.IFS.functionParameter.logicalTest2.name",detail:"formula.functionList.IFS.functionParameter.logicalTest2.detail",example:"F2=1",require:0,repeat:1},{name:"formula.functionList.IFS.functionParameter.valueIfTrue2.name",detail:"formula.functionList.IFS.functionParameter.valueIfTrue2.detail",example:"D2",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_LOGICAL.LAMBDA,functionType:engineFormula.FunctionType.Logical,description:"formula.functionList.LAMBDA.description",abstract:"formula.functionList.LAMBDA.abstract",functionParameter:[{name:"formula.functionList.LAMBDA.functionParameter.parameter.name",detail:"formula.functionList.LAMBDA.functionParameter.parameter.detail",example:"[x, y, …,]",require:0,repeat:1},{name:"formula.functionList.LAMBDA.functionParameter.calculation.name",detail:"formula.functionList.LAMBDA.functionParameter.calculation.detail",example:"x+y",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOGICAL.LET,functionType:engineFormula.FunctionType.Logical,description:"formula.functionList.LET.description",abstract:"formula.functionList.LET.abstract",functionParameter:[{name:"formula.functionList.LET.functionParameter.name1.name",detail:"formula.functionList.LET.functionParameter.name1.detail",example:"x",require:1,repeat:0},{name:"formula.functionList.LET.functionParameter.nameValue1.name",detail:"formula.functionList.LET.functionParameter.nameValue1.detail",example:"5",require:1,repeat:0},{name:"formula.functionList.LET.functionParameter.calculationOrName2.name",detail:"formula.functionList.LET.functionParameter.calculationOrName2.detail",example:"y",require:1,repeat:0},{name:"formula.functionList.LET.functionParameter.nameValue2.name",detail:"formula.functionList.LET.functionParameter.nameValue2.detail",example:"6",require:0,repeat:1},{name:"formula.functionList.LET.functionParameter.calculationOrName3.name",detail:"formula.functionList.LET.functionParameter.calculationOrName3.detail",example:"SUM(x,y)",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_LOGICAL.MAKEARRAY,aliasFunctionName:"formula.functionList.MAKEARRAY.aliasFunctionName",functionType:engineFormula.FunctionType.Logical,description:"formula.functionList.MAKEARRAY.description",abstract:"formula.functionList.MAKEARRAY.abstract",functionParameter:[{name:"formula.functionList.MAKEARRAY.functionParameter.number1.name",detail:"formula.functionList.MAKEARRAY.functionParameter.number1.detail",example:"8",require:1,repeat:0},{name:"formula.functionList.MAKEARRAY.functionParameter.number2.name",detail:"formula.functionList.MAKEARRAY.functionParameter.number2.detail",example:"7",require:1,repeat:0},{name:"formula.functionList.MAKEARRAY.functionParameter.value3.name",detail:"formula.functionList.MAKEARRAY.functionParameter.value3.detail",example:"LAMBDA(r,c, r*c)",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOGICAL.MAP,functionType:engineFormula.FunctionType.Logical,description:"formula.functionList.MAP.description",abstract:"formula.functionList.MAP.abstract",functionParameter:[{name:"formula.functionList.MAP.functionParameter.array1.name",detail:"formula.functionList.MAP.functionParameter.array1.detail",example:"D2:D11",require:1,repeat:0},{name:"formula.functionList.MAP.functionParameter.array2.name",detail:"formula.functionList.MAP.functionParameter.array2.detail",example:"E2:E11",require:0,repeat:1},{name:"formula.functionList.MAP.functionParameter.lambda.name",detail:"formula.functionList.MAP.functionParameter.lambda.detail",example:'LAMBDA(s,c,AND(s="Large",c="Red"))',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOGICAL.NOT,functionType:engineFormula.FunctionType.Logical,description:"formula.functionList.NOT.description",abstract:"formula.functionList.NOT.abstract",functionParameter:[{name:"formula.functionList.NOT.functionParameter.logical.name",detail:"formula.functionList.NOT.functionParameter.logical.detail",example:"A2>100",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOGICAL.OR,functionType:engineFormula.FunctionType.Logical,description:"formula.functionList.OR.description",abstract:"formula.functionList.OR.abstract",functionParameter:[{name:"formula.functionList.OR.functionParameter.logical1.name",detail:"formula.functionList.OR.functionParameter.logical1.detail",example:"A1=1",require:1,repeat:0},{name:"formula.functionList.OR.functionParameter.logical2.name",detail:"formula.functionList.OR.functionParameter.logical2.detail",example:"A2=2",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_LOGICAL.REDUCE,functionType:engineFormula.FunctionType.Logical,description:"formula.functionList.REDUCE.description",abstract:"formula.functionList.REDUCE.abstract",functionParameter:[{name:"formula.functionList.REDUCE.functionParameter.initialValue.name",detail:"formula.functionList.REDUCE.functionParameter.initialValue.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.REDUCE.functionParameter.array.name",detail:"formula.functionList.REDUCE.functionParameter.array.detail",example:"A1:C2",require:1,repeat:0},{name:"formula.functionList.REDUCE.functionParameter.lambda.name",detail:"formula.functionList.REDUCE.functionParameter.lambda.detail",example:"LAMBDA(a,b,a+b^2)",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOGICAL.SCAN,functionType:engineFormula.FunctionType.Logical,description:"formula.functionList.SCAN.description",abstract:"formula.functionList.SCAN.abstract",functionParameter:[{name:"formula.functionList.SCAN.functionParameter.initialValue.name",detail:"formula.functionList.SCAN.functionParameter.initialValue.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.SCAN.functionParameter.array.name",detail:"formula.functionList.SCAN.functionParameter.array.detail",example:"A1:C2",require:1,repeat:0},{name:"formula.functionList.SCAN.functionParameter.lambda.name",detail:"formula.functionList.SCAN.functionParameter.lambda.detail",example:"LAMBDA(a,b,a+b^2)",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOGICAL.SWITCH,functionType:engineFormula.FunctionType.Logical,description:"formula.functionList.SWITCH.description",abstract:"formula.functionList.SWITCH.abstract",functionParameter:[{name:"formula.functionList.SWITCH.functionParameter.expression.name",detail:"formula.functionList.SWITCH.functionParameter.expression.detail",example:"WEEKDAY(A2)",require:1,repeat:0},{name:"formula.functionList.SWITCH.functionParameter.value1.name",detail:"formula.functionList.SWITCH.functionParameter.value1.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.SWITCH.functionParameter.result1.name",detail:"formula.functionList.SWITCH.functionParameter.result1.detail",example:'"Sunday"',require:1,repeat:0},{name:"formula.functionList.SWITCH.functionParameter.defaultOrValue2.name",detail:"formula.functionList.SWITCH.functionParameter.defaultOrValue2.detail",example:"2",require:0,repeat:1},{name:"formula.functionList.SWITCH.functionParameter.result2.name",detail:"formula.functionList.SWITCH.functionParameter.result2.detail",example:'"Monday"',require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_LOGICAL.TRUE,functionType:engineFormula.FunctionType.Logical,description:"formula.functionList.TRUE.description",abstract:"formula.functionList.TRUE.abstract",functionParameter:[]},{functionName:engineFormula.FUNCTION_NAMES_LOGICAL.XOR,functionType:engineFormula.FunctionType.Logical,description:"formula.functionList.XOR.description",abstract:"formula.functionList.XOR.abstract",functionParameter:[{name:"formula.functionList.XOR.functionParameter.logical1.name",detail:"formula.functionList.XOR.functionParameter.logical1.detail",example:"3>0",require:1,repeat:0},{name:"formula.functionList.XOR.functionParameter.logical2.name",detail:"formula.functionList.XOR.functionParameter.logical2.detail",example:"2<9",require:0,repeat:1}]}],FUNCTION_LIST_LOOKUP=[{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.ADDRESS,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.ADDRESS.description",abstract:"formula.functionList.ADDRESS.abstract",functionParameter:[{name:"formula.functionList.ADDRESS.functionParameter.row_num.name",detail:"formula.functionList.ADDRESS.functionParameter.row_num.detail",example:"2",require:1,repeat:0},{name:"formula.functionList.ADDRESS.functionParameter.column_num.name",detail:"formula.functionList.ADDRESS.functionParameter.column_num.detail",example:"2",require:1,repeat:0},{name:"formula.functionList.ADDRESS.functionParameter.abs_num.name",detail:"formula.functionList.ADDRESS.functionParameter.abs_num.detail",example:"1",require:0,repeat:0},{name:"formula.functionList.ADDRESS.functionParameter.a1.name",detail:"formula.functionList.ADDRESS.functionParameter.a1.detail",example:"TRUE",require:0,repeat:0},{name:"formula.functionList.ADDRESS.functionParameter.sheet_text.name",detail:"formula.functionList.ADDRESS.functionParameter.sheet_text.detail",example:'"Sheet2"',require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.AREAS,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.AREAS.description",abstract:"formula.functionList.AREAS.abstract",functionParameter:[{name:"formula.functionList.AREAS.functionParameter.reference.name",detail:"formula.functionList.AREAS.functionParameter.reference.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.CHOOSE,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.CHOOSE.description",abstract:"formula.functionList.CHOOSE.abstract",functionParameter:[{name:"formula.functionList.CHOOSE.functionParameter.indexNum.name",detail:"formula.functionList.CHOOSE.functionParameter.indexNum.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.CHOOSE.functionParameter.value1.name",detail:"formula.functionList.CHOOSE.functionParameter.value1.detail",example:'"Hello"',require:1,repeat:0},{name:"formula.functionList.CHOOSE.functionParameter.value2.name",detail:"formula.functionList.CHOOSE.functionParameter.value2.detail",example:'"Univer"',require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.CHOOSECOLS,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.CHOOSECOLS.description",abstract:"formula.functionList.CHOOSECOLS.abstract",functionParameter:[{name:"formula.functionList.CHOOSECOLS.functionParameter.array.name",detail:"formula.functionList.CHOOSECOLS.functionParameter.array.detail",example:"{1,2,3;2,3,4}",require:1,repeat:0},{name:"formula.functionList.CHOOSECOLS.functionParameter.colNum1.name",detail:"formula.functionList.CHOOSECOLS.functionParameter.colNum1.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.CHOOSECOLS.functionParameter.colNum2.name",detail:"formula.functionList.CHOOSECOLS.functionParameter.colNum2.detail",example:"2",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.CHOOSEROWS,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.CHOOSEROWS.description",abstract:"formula.functionList.CHOOSEROWS.abstract",functionParameter:[{name:"formula.functionList.CHOOSEROWS.functionParameter.array.name",detail:"formula.functionList.CHOOSEROWS.functionParameter.array.detail",example:"{1,2,3;2,3,4}",require:1,repeat:0},{name:"formula.functionList.CHOOSEROWS.functionParameter.rowNum1.name",detail:"formula.functionList.CHOOSEROWS.functionParameter.rowNum1.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.CHOOSEROWS.functionParameter.rowNum2.name",detail:"formula.functionList.CHOOSEROWS.functionParameter.rowNum2.detail",example:"2",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.COLUMN,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.COLUMN.description",abstract:"formula.functionList.COLUMN.abstract",functionParameter:[{name:"formula.functionList.COLUMN.functionParameter.reference.name",detail:"formula.functionList.COLUMN.functionParameter.reference.detail",example:"A1:A20",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.COLUMNS,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.COLUMNS.description",abstract:"formula.functionList.COLUMNS.abstract",functionParameter:[{name:"formula.functionList.COLUMNS.functionParameter.array.name",detail:"formula.functionList.COLUMNS.functionParameter.array.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.DROP,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.DROP.description",abstract:"formula.functionList.DROP.abstract",functionParameter:[{name:"formula.functionList.DROP.functionParameter.array.name",detail:"formula.functionList.DROP.functionParameter.array.detail",example:"A2:C4",require:1,repeat:0},{name:"formula.functionList.DROP.functionParameter.rows.name",detail:"formula.functionList.DROP.functionParameter.rows.detail",example:"2",require:1,repeat:0},{name:"formula.functionList.DROP.functionParameter.columns.name",detail:"formula.functionList.DROP.functionParameter.columns.detail",example:"2",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.EXPAND,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.EXPAND.description",abstract:"formula.functionList.EXPAND.abstract",functionParameter:[{name:"formula.functionList.EXPAND.functionParameter.array.name",detail:"formula.functionList.EXPAND.functionParameter.array.detail",example:"A2",require:1,repeat:0},{name:"formula.functionList.EXPAND.functionParameter.rows.name",detail:"formula.functionList.EXPAND.functionParameter.rows.detail",example:"3",require:1,repeat:0},{name:"formula.functionList.EXPAND.functionParameter.columns.name",detail:"formula.functionList.EXPAND.functionParameter.columns.detail",example:"3",require:0,repeat:0},{name:"formula.functionList.EXPAND.functionParameter.padWith.name",detail:"formula.functionList.EXPAND.functionParameter.padWith.detail",example:'"-"',require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.FILTER,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.FILTER.description",abstract:"formula.functionList.FILTER.abstract",functionParameter:[{name:"formula.functionList.FILTER.functionParameter.array.name",detail:"formula.functionList.FILTER.functionParameter.array.detail",example:"A5:D20",require:1,repeat:0},{name:"formula.functionList.FILTER.functionParameter.include.name",detail:"formula.functionList.FILTER.functionParameter.include.detail",example:'(C5:C20="Apple")*(A5:A20="East")',require:1,repeat:0},{name:"formula.functionList.FILTER.functionParameter.ifEmpty.name",detail:"formula.functionList.FILTER.functionParameter.ifEmpty.detail",example:'""',require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.FORMULATEXT,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.FORMULATEXT.description",abstract:"formula.functionList.FORMULATEXT.abstract",functionParameter:[{name:"formula.functionList.FORMULATEXT.functionParameter.number1.name",detail:"formula.functionList.FORMULATEXT.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.FORMULATEXT.functionParameter.number2.name",detail:"formula.functionList.FORMULATEXT.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.GETPIVOTDATA,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.GETPIVOTDATA.description",abstract:"formula.functionList.GETPIVOTDATA.abstract",functionParameter:[{name:"formula.functionList.GETPIVOTDATA.functionParameter.number1.name",detail:"formula.functionList.GETPIVOTDATA.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.GETPIVOTDATA.functionParameter.number2.name",detail:"formula.functionList.GETPIVOTDATA.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.HLOOKUP,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.HLOOKUP.description",abstract:"formula.functionList.HLOOKUP.abstract",functionParameter:[{name:"formula.functionList.HLOOKUP.functionParameter.lookupValue.name",detail:"formula.functionList.HLOOKUP.functionParameter.lookupValue.detail",example:"A1",require:1,repeat:0},{name:"formula.functionList.HLOOKUP.functionParameter.tableArray.name",detail:"formula.functionList.HLOOKUP.functionParameter.tableArray.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.HLOOKUP.functionParameter.rowIndexNum.name",detail:"formula.functionList.HLOOKUP.functionParameter.rowIndexNum.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.HLOOKUP.functionParameter.rangeLookup.name",detail:"formula.functionList.HLOOKUP.functionParameter.rangeLookup.detail",example:"false",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.HSTACK,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.HSTACK.description",abstract:"formula.functionList.HSTACK.abstract",functionParameter:[{name:"formula.functionList.HSTACK.functionParameter.array1.name",detail:"formula.functionList.HSTACK.functionParameter.array1.detail",example:"A2:C3",require:1,repeat:0},{name:"formula.functionList.HSTACK.functionParameter.array2.name",detail:"formula.functionList.HSTACK.functionParameter.array2.detail",example:"E2:G3",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.HYPERLINK,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.HYPERLINK.description",abstract:"formula.functionList.HYPERLINK.abstract",functionParameter:[{name:"formula.functionList.HYPERLINK.functionParameter.number1.name",detail:"formula.functionList.HYPERLINK.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.HYPERLINK.functionParameter.number2.name",detail:"formula.functionList.HYPERLINK.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.IMAGE,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.IMAGE.description",abstract:"formula.functionList.IMAGE.abstract",functionParameter:[{name:"formula.functionList.IMAGE.functionParameter.number1.name",detail:"formula.functionList.IMAGE.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.IMAGE.functionParameter.number2.name",detail:"formula.functionList.IMAGE.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.INDEX,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.INDEX.description",abstract:"formula.functionList.INDEX.abstract",functionParameter:[{name:"formula.functionList.INDEX.functionParameter.reference.name",detail:"formula.functionList.INDEX.functionParameter.reference.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.INDEX.functionParameter.rowNum.name",detail:"formula.functionList.INDEX.functionParameter.rowNum.detail",example:"1",require:0,repeat:0},{name:"formula.functionList.INDEX.functionParameter.columnNum.name",detail:"formula.functionList.INDEX.functionParameter.columnNum.detail",example:"1",require:0,repeat:0},{name:"formula.functionList.INDEX.functionParameter.areaNum.name",detail:"formula.functionList.INDEX.functionParameter.areaNum.detail",example:"2",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.INDIRECT,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.INDIRECT.description",abstract:"formula.functionList.INDIRECT.abstract",functionParameter:[{name:"formula.functionList.INDIRECT.functionParameter.refText.name",detail:"formula.functionList.INDIRECT.functionParameter.refText.detail",example:'"A1"',require:1,repeat:0},{name:"formula.functionList.INDIRECT.functionParameter.a1.name",detail:"formula.functionList.INDIRECT.functionParameter.a1.detail",example:"TRUE",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.LOOKUP,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.LOOKUP.description",abstract:"formula.functionList.LOOKUP.abstract",functionParameter:[{name:"formula.functionList.LOOKUP.functionParameter.lookupValue.name",detail:"formula.functionList.LOOKUP.functionParameter.lookupValue.detail",example:"A1",require:1,repeat:0},{name:"formula.functionList.LOOKUP.functionParameter.lookupVectorOrArray.name",detail:"formula.functionList.LOOKUP.functionParameter.lookupVectorOrArray.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.LOOKUP.functionParameter.resultVector.name",detail:"formula.functionList.LOOKUP.functionParameter.resultVector.detail",example:"A1:A20",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.MATCH,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.MATCH.description",abstract:"formula.functionList.MATCH.abstract",functionParameter:[{name:"formula.functionList.MATCH.functionParameter.lookupValue.name",detail:"formula.functionList.MATCH.functionParameter.lookupValue.detail",example:"10",require:1,repeat:0},{name:"formula.functionList.MATCH.functionParameter.lookupArray.name",detail:"formula.functionList.MATCH.functionParameter.lookupArray.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.MATCH.functionParameter.matchType.name",detail:"formula.functionList.MATCH.functionParameter.matchType.detail",example:"1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.OFFSET,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.OFFSET.description",abstract:"formula.functionList.OFFSET.abstract",functionParameter:[{name:"formula.functionList.OFFSET.functionParameter.reference.name",detail:"formula.functionList.OFFSET.functionParameter.reference.detail",example:"A1",require:1,repeat:0},{name:"formula.functionList.OFFSET.functionParameter.rows.name",detail:"formula.functionList.OFFSET.functionParameter.rows.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.OFFSET.functionParameter.cols.name",detail:"formula.functionList.OFFSET.functionParameter.cols.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.OFFSET.functionParameter.height.name",detail:"formula.functionList.OFFSET.functionParameter.height.detail",example:"1",require:0,repeat:0},{name:"formula.functionList.OFFSET.functionParameter.width.name",detail:"formula.functionList.OFFSET.functionParameter.width.detail",example:"1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.ROW,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.ROW.description",abstract:"formula.functionList.ROW.abstract",functionParameter:[{name:"formula.functionList.ROW.functionParameter.reference.name",detail:"formula.functionList.ROW.functionParameter.reference.detail",example:"A1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.ROWS,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.ROWS.description",abstract:"formula.functionList.ROWS.abstract",functionParameter:[{name:"formula.functionList.ROWS.functionParameter.array.name",detail:"formula.functionList.ROWS.functionParameter.array.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.RTD,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.RTD.description",abstract:"formula.functionList.RTD.abstract",functionParameter:[{name:"formula.functionList.RTD.functionParameter.number1.name",detail:"formula.functionList.RTD.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.RTD.functionParameter.number2.name",detail:"formula.functionList.RTD.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.SORT,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.SORT.description",abstract:"formula.functionList.SORT.abstract",functionParameter:[{name:"formula.functionList.SORT.functionParameter.array.name",detail:"formula.functionList.SORT.functionParameter.array.detail",example:"A2:A17",require:1,repeat:0},{name:"formula.functionList.SORT.functionParameter.sortIndex.name",detail:"formula.functionList.SORT.functionParameter.sortIndex.detail",example:"1",require:0,repeat:0},{name:"formula.functionList.SORT.functionParameter.sortOrder.name",detail:"formula.functionList.SORT.functionParameter.sortOrder.detail",example:"1",require:0,repeat:0},{name:"formula.functionList.SORT.functionParameter.byCol.name",detail:"formula.functionList.SORT.functionParameter.byCol.detail",example:"false",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.SORTBY,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.SORTBY.description",abstract:"formula.functionList.SORTBY.abstract",functionParameter:[{name:"formula.functionList.SORTBY.functionParameter.array.name",detail:"formula.functionList.SORTBY.functionParameter.array.detail",example:"D2:D9",require:1,repeat:0},{name:"formula.functionList.SORTBY.functionParameter.byArray1.name",detail:"formula.functionList.SORTBY.functionParameter.byArray1.detail",example:"E2:E9",require:1,repeat:0},{name:"formula.functionList.SORTBY.functionParameter.sortOrder1.name",detail:"formula.functionList.SORTBY.functionParameter.sortOrder1.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.SORTBY.functionParameter.byArray2.name",detail:"formula.functionList.SORTBY.functionParameter.byArray2.detail",example:"E2:E9",require:0,repeat:1},{name:"formula.functionList.SORTBY.functionParameter.sortOrder2.name",detail:"formula.functionList.SORTBY.functionParameter.sortOrder2.detail",example:"1",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.TAKE,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.TAKE.description",abstract:"formula.functionList.TAKE.abstract",functionParameter:[{name:"formula.functionList.TAKE.functionParameter.array.name",detail:"formula.functionList.TAKE.functionParameter.array.detail",example:"A2:C4",require:1,repeat:0},{name:"formula.functionList.TAKE.functionParameter.rows.name",detail:"formula.functionList.TAKE.functionParameter.rows.detail",example:"2",require:1,repeat:0},{name:"formula.functionList.TAKE.functionParameter.columns.name",detail:"formula.functionList.TAKE.functionParameter.columns.detail",example:"2",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.TOCOL,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.TOCOL.description",abstract:"formula.functionList.TOCOL.abstract",functionParameter:[{name:"formula.functionList.TOCOL.functionParameter.array.name",detail:"formula.functionList.TOCOL.functionParameter.array.detail",example:"A2:D4",require:1,repeat:0},{name:"formula.functionList.TOCOL.functionParameter.ignore.name",detail:"formula.functionList.TOCOL.functionParameter.ignore.detail",example:"1",require:0,repeat:0},{name:"formula.functionList.TOCOL.functionParameter.scanByColumn.name",detail:"formula.functionList.TOCOL.functionParameter.scanByColumn.detail",example:"TRUE",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.TOROW,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.TOROW.description",abstract:"formula.functionList.TOROW.abstract",functionParameter:[{name:"formula.functionList.TOROW.functionParameter.array.name",detail:"formula.functionList.TOROW.functionParameter.array.detail",example:"A2:D4",require:1,repeat:0},{name:"formula.functionList.TOROW.functionParameter.ignore.name",detail:"formula.functionList.TOROW.functionParameter.ignore.detail",example:"1",require:0,repeat:0},{name:"formula.functionList.TOROW.functionParameter.scanByColumn.name",detail:"formula.functionList.TOROW.functionParameter.scanByColumn.detail",example:"TRUE",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.TRANSPOSE,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.TRANSPOSE.description",abstract:"formula.functionList.TRANSPOSE.abstract",functionParameter:[{name:"formula.functionList.TRANSPOSE.functionParameter.array.name",detail:"formula.functionList.TRANSPOSE.functionParameter.array.detail",example:"A2:F9",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.UNIQUE,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.UNIQUE.description",abstract:"formula.functionList.UNIQUE.abstract",functionParameter:[{name:"formula.functionList.UNIQUE.functionParameter.array.name",detail:"formula.functionList.UNIQUE.functionParameter.array.detail",example:"A2:A12",require:1,repeat:0},{name:"formula.functionList.UNIQUE.functionParameter.byCol.name",detail:"formula.functionList.UNIQUE.functionParameter.byCol.detail",example:"false",require:0,repeat:0},{name:"formula.functionList.UNIQUE.functionParameter.exactlyOnce.name",detail:"formula.functionList.UNIQUE.functionParameter.exactlyOnce.detail",example:"false",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.VLOOKUP,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.VLOOKUP.description",abstract:"formula.functionList.VLOOKUP.abstract",functionParameter:[{name:"formula.functionList.VLOOKUP.functionParameter.lookupValue.name",detail:"formula.functionList.VLOOKUP.functionParameter.lookupValue.detail",example:"B2",require:1,repeat:0},{name:"formula.functionList.VLOOKUP.functionParameter.tableArray.name",detail:"formula.functionList.VLOOKUP.functionParameter.tableArray.detail",example:"C2:E7",require:1,repeat:0},{name:"formula.functionList.VLOOKUP.functionParameter.colIndexNum.name",detail:"formula.functionList.VLOOKUP.functionParameter.colIndexNum.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.VLOOKUP.functionParameter.rangeLookup.name",detail:"formula.functionList.VLOOKUP.functionParameter.rangeLookup.detail",example:"TRUE",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.VSTACK,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.VSTACK.description",abstract:"formula.functionList.VSTACK.abstract",functionParameter:[{name:"formula.functionList.VSTACK.functionParameter.array1.name",detail:"formula.functionList.VSTACK.functionParameter.array1.detail",example:"A2:C3",require:1,repeat:0},{name:"formula.functionList.VSTACK.functionParameter.array2.name",detail:"formula.functionList.VSTACK.functionParameter.array2.detail",example:"E2:G3",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.WRAPCOLS,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.WRAPCOLS.description",abstract:"formula.functionList.WRAPCOLS.abstract",functionParameter:[{name:"formula.functionList.WRAPCOLS.functionParameter.vector.name",detail:"formula.functionList.WRAPCOLS.functionParameter.vector.detail",example:"A2:G2",require:1,repeat:0},{name:"formula.functionList.WRAPCOLS.functionParameter.wrapCount.name",detail:"formula.functionList.WRAPCOLS.functionParameter.wrapCount.detail",example:"3",require:1,repeat:0},{name:"formula.functionList.WRAPCOLS.functionParameter.padWith.name",detail:"formula.functionList.WRAPCOLS.functionParameter.padWith.detail",example:'"x"',require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.WRAPROWS,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.WRAPROWS.description",abstract:"formula.functionList.WRAPROWS.abstract",functionParameter:[{name:"formula.functionList.WRAPROWS.functionParameter.vector.name",detail:"formula.functionList.WRAPROWS.functionParameter.vector.detail",example:"A2:G2",require:1,repeat:0},{name:"formula.functionList.WRAPROWS.functionParameter.wrapCount.name",detail:"formula.functionList.WRAPROWS.functionParameter.wrapCount.detail",example:"3",require:1,repeat:0},{name:"formula.functionList.WRAPROWS.functionParameter.padWith.name",detail:"formula.functionList.WRAPROWS.functionParameter.padWith.detail",example:'"x"',require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.XLOOKUP,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.XLOOKUP.description",abstract:"formula.functionList.XLOOKUP.abstract",functionParameter:[{name:"formula.functionList.XLOOKUP.functionParameter.lookupValue.name",detail:"formula.functionList.XLOOKUP.functionParameter.lookupValue.detail",example:"A1",require:1,repeat:0},{name:"formula.functionList.XLOOKUP.functionParameter.lookupArray.name",detail:"formula.functionList.XLOOKUP.functionParameter.lookupArray.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.XLOOKUP.functionParameter.returnArray.name",detail:"formula.functionList.XLOOKUP.functionParameter.returnArray.detail",example:"B1:B20",require:1,repeat:0},{name:"formula.functionList.XLOOKUP.functionParameter.ifNotFound.name",detail:"formula.functionList.XLOOKUP.functionParameter.ifNotFound.detail",example:"default",require:0,repeat:0},{name:"formula.functionList.XLOOKUP.functionParameter.matchMode.name",detail:"formula.functionList.XLOOKUP.functionParameter.matchMode.detail",example:"0",require:0,repeat:0},{name:"formula.functionList.XLOOKUP.functionParameter.searchMode.name",detail:"formula.functionList.XLOOKUP.functionParameter.searchMode.detail",example:"1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_LOOKUP.XMATCH,functionType:engineFormula.FunctionType.Lookup,description:"formula.functionList.XMATCH.description",abstract:"formula.functionList.XMATCH.abstract",functionParameter:[{name:"formula.functionList.XMATCH.functionParameter.lookupValue.name",detail:"formula.functionList.XMATCH.functionParameter.lookupValue.detail",example:"B1",require:1,repeat:0},{name:"formula.functionList.XMATCH.functionParameter.lookupArray.name",detail:"formula.functionList.XMATCH.functionParameter.lookupArray.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.XMATCH.functionParameter.matchMode.name",detail:"formula.functionList.XMATCH.functionParameter.matchMode.detail",example:"0",require:0,repeat:0},{name:"formula.functionList.XMATCH.functionParameter.searchMode.name",detail:"formula.functionList.XMATCH.functionParameter.searchMode.detail",example:"1",require:0,repeat:0}]}],FUNCTION_LIST_MATH=[{functionName:engineFormula.FUNCTION_NAMES_MATH.ABS,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.ABS.description",abstract:"formula.functionList.ABS.abstract",functionParameter:[{name:"formula.functionList.ABS.functionParameter.number.name",detail:"formula.functionList.ABS.functionParameter.number.detail",example:"-2",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.ACOS,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.ACOS.description",abstract:"formula.functionList.ACOS.abstract",functionParameter:[{name:"formula.functionList.ACOS.functionParameter.number.name",detail:"formula.functionList.ACOS.functionParameter.number.detail",example:"0",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.ACOSH,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.ACOSH.description",abstract:"formula.functionList.ACOSH.abstract",functionParameter:[{name:"formula.functionList.ACOSH.functionParameter.number.name",detail:"formula.functionList.ACOSH.functionParameter.number.detail",example:"2",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.ACOT,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.ACOT.description",abstract:"formula.functionList.ACOT.abstract",functionParameter:[{name:"formula.functionList.ACOT.functionParameter.number.name",detail:"formula.functionList.ACOT.functionParameter.number.detail",example:"0",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.ACOTH,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.ACOTH.description",abstract:"formula.functionList.ACOTH.abstract",functionParameter:[{name:"formula.functionList.ACOTH.functionParameter.number.name",detail:"formula.functionList.ACOTH.functionParameter.number.detail",example:"6",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.AGGREGATE,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.AGGREGATE.description",abstract:"formula.functionList.AGGREGATE.abstract",functionParameter:[{name:"formula.functionList.AGGREGATE.functionParameter.number1.name",detail:"formula.functionList.AGGREGATE.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.AGGREGATE.functionParameter.number2.name",detail:"formula.functionList.AGGREGATE.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.ARABIC,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.ARABIC.description",abstract:"formula.functionList.ARABIC.abstract",functionParameter:[{name:"formula.functionList.ARABIC.functionParameter.number1.name",detail:"formula.functionList.ARABIC.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.ARABIC.functionParameter.number2.name",detail:"formula.functionList.ARABIC.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.ASIN,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.ASIN.description",abstract:"formula.functionList.ASIN.abstract",functionParameter:[{name:"formula.functionList.ASIN.functionParameter.number.name",detail:"formula.functionList.ASIN.functionParameter.number.detail",example:"0",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.ASINH,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.ASINH.description",abstract:"formula.functionList.ASINH.abstract",functionParameter:[{name:"formula.functionList.ASINH.functionParameter.number.name",detail:"formula.functionList.ASINH.functionParameter.number.detail",example:"10",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.ATAN,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.ATAN.description",abstract:"formula.functionList.ATAN.abstract",functionParameter:[{name:"formula.functionList.ATAN.functionParameter.number.name",detail:"formula.functionList.ATAN.functionParameter.number.detail",example:"1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.ATAN2,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.ATAN2.description",abstract:"formula.functionList.ATAN2.abstract",functionParameter:[{name:"formula.functionList.ATAN2.functionParameter.xNum.name",detail:"formula.functionList.ATAN2.functionParameter.xNum.detail",example:"4",require:1,repeat:0},{name:"formula.functionList.ATAN2.functionParameter.yNum.name",detail:"formula.functionList.ATAN2.functionParameter.yNum.detail",example:"3",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.ATANH,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.ATANH.description",abstract:"formula.functionList.ATANH.abstract",functionParameter:[{name:"formula.functionList.ATANH.functionParameter.number.name",detail:"formula.functionList.ATANH.functionParameter.number.detail",example:"0.1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.BASE,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.BASE.description",abstract:"formula.functionList.BASE.abstract",functionParameter:[{name:"formula.functionList.BASE.functionParameter.number.name",detail:"formula.functionList.BASE.functionParameter.number.detail",example:"15",require:1,repeat:0},{name:"formula.functionList.BASE.functionParameter.radix.name",detail:"formula.functionList.BASE.functionParameter.radix.detail",example:"2",require:1,repeat:0},{name:"formula.functionList.BASE.functionParameter.minLength.name",detail:"formula.functionList.BASE.functionParameter.minLength.detail",example:"10",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.CEILING,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.CEILING.description",abstract:"formula.functionList.CEILING.abstract",functionParameter:[{name:"formula.functionList.CEILING.functionParameter.number.name",detail:"formula.functionList.CEILING.functionParameter.number.detail",example:"2.5",require:1,repeat:0},{name:"formula.functionList.CEILING.functionParameter.significance.name",detail:"formula.functionList.CEILING.functionParameter.significance.detail",example:"1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.CEILING_MATH,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.CEILING_MATH.description",abstract:"formula.functionList.CEILING_MATH.abstract",functionParameter:[{name:"formula.functionList.CEILING_MATH.functionParameter.number.name",detail:"formula.functionList.CEILING_MATH.functionParameter.number.detail",example:"-5.5",require:1,repeat:0},{name:"formula.functionList.CEILING_MATH.functionParameter.significance.name",detail:"formula.functionList.CEILING_MATH.functionParameter.significance.detail",example:"2",require:0,repeat:0},{name:"formula.functionList.CEILING_MATH.functionParameter.mode.name",detail:"formula.functionList.CEILING_MATH.functionParameter.mode.detail",example:"-1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.CEILING_PRECISE,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.CEILING_PRECISE.description",abstract:"formula.functionList.CEILING_PRECISE.abstract",functionParameter:[{name:"formula.functionList.CEILING_PRECISE.functionParameter.number.name",detail:"formula.functionList.CEILING_PRECISE.functionParameter.number.detail",example:"4.3",require:1,repeat:0},{name:"formula.functionList.CEILING_PRECISE.functionParameter.significance.name",detail:"formula.functionList.CEILING_PRECISE.functionParameter.significance.detail",example:"2",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.COMBIN,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.COMBIN.description",abstract:"formula.functionList.COMBIN.abstract",functionParameter:[{name:"formula.functionList.COMBIN.functionParameter.number.name",detail:"formula.functionList.COMBIN.functionParameter.number.detail",example:"8",require:1,repeat:0},{name:"formula.functionList.COMBIN.functionParameter.numberChosen.name",detail:"formula.functionList.COMBIN.functionParameter.numberChosen.detail",example:"2",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.COMBINA,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.COMBINA.description",abstract:"formula.functionList.COMBINA.abstract",functionParameter:[{name:"formula.functionList.COMBINA.functionParameter.number.name",detail:"formula.functionList.COMBINA.functionParameter.number.detail",example:"8",require:1,repeat:0},{name:"formula.functionList.COMBINA.functionParameter.numberChosen.name",detail:"formula.functionList.COMBINA.functionParameter.numberChosen.detail",example:"2",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.COS,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.COS.description",abstract:"formula.functionList.COS.abstract",functionParameter:[{name:"formula.functionList.COS.functionParameter.number.name",detail:"formula.functionList.COS.functionParameter.number.detail",example:"1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.COSH,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.COSH.description",abstract:"formula.functionList.COSH.abstract",functionParameter:[{name:"formula.functionList.COSH.functionParameter.number.name",detail:"formula.functionList.COSH.functionParameter.number.detail",example:"4",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.COT,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.COT.description",abstract:"formula.functionList.COT.abstract",functionParameter:[{name:"formula.functionList.COT.functionParameter.number.name",detail:"formula.functionList.COT.functionParameter.number.detail",example:"30",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.COTH,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.COTH.description",abstract:"formula.functionList.COTH.abstract",functionParameter:[{name:"formula.functionList.COTH.functionParameter.number.name",detail:"formula.functionList.COTH.functionParameter.number.detail",example:"2",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.CSC,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.CSC.description",abstract:"formula.functionList.CSC.abstract",functionParameter:[{name:"formula.functionList.CSC.functionParameter.number.name",detail:"formula.functionList.CSC.functionParameter.number.detail",example:"15",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.CSCH,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.CSCH.description",abstract:"formula.functionList.CSCH.abstract",functionParameter:[{name:"formula.functionList.CSCH.functionParameter.number.name",detail:"formula.functionList.CSCH.functionParameter.number.detail",example:"1.5",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.DECIMAL,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.DECIMAL.description",abstract:"formula.functionList.DECIMAL.abstract",functionParameter:[{name:"formula.functionList.DECIMAL.functionParameter.text.name",detail:"formula.functionList.DECIMAL.functionParameter.text.detail",example:'"FF"',require:1,repeat:0},{name:"formula.functionList.DECIMAL.functionParameter.radix.name",detail:"formula.functionList.DECIMAL.functionParameter.radix.detail",example:"16",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.DEGREES,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.DEGREES.description",abstract:"formula.functionList.DEGREES.abstract",functionParameter:[{name:"formula.functionList.DEGREES.functionParameter.angle.name",detail:"formula.functionList.DEGREES.functionParameter.angle.detail",example:"PI()",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.EVEN,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.EVEN.description",abstract:"formula.functionList.EVEN.abstract",functionParameter:[{name:"formula.functionList.EVEN.functionParameter.number.name",detail:"formula.functionList.EVEN.functionParameter.number.detail",example:"1.5",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.EXP,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.EXP.description",abstract:"formula.functionList.EXP.abstract",functionParameter:[{name:"formula.functionList.EXP.functionParameter.number.name",detail:"formula.functionList.EXP.functionParameter.number.detail",example:"2",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.FACT,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.FACT.description",abstract:"formula.functionList.FACT.abstract",functionParameter:[{name:"formula.functionList.FACT.functionParameter.number.name",detail:"formula.functionList.FACT.functionParameter.number.detail",example:"5",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.FACTDOUBLE,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.FACTDOUBLE.description",abstract:"formula.functionList.FACTDOUBLE.abstract",functionParameter:[{name:"formula.functionList.FACTDOUBLE.functionParameter.number.name",detail:"formula.functionList.FACTDOUBLE.functionParameter.number.detail",example:"6",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.FLOOR,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.FLOOR.description",abstract:"formula.functionList.FLOOR.abstract",functionParameter:[{name:"formula.functionList.FLOOR.functionParameter.number.name",detail:"formula.functionList.FLOOR.functionParameter.number.detail",example:"3.7",require:1,repeat:0},{name:"formula.functionList.FLOOR.functionParameter.significance.name",detail:"formula.functionList.FLOOR.functionParameter.significance.detail",example:"2",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.FLOOR_MATH,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.FLOOR_MATH.description",abstract:"formula.functionList.FLOOR_MATH.abstract",functionParameter:[{name:"formula.functionList.FLOOR_MATH.functionParameter.number.name",detail:"formula.functionList.FLOOR_MATH.functionParameter.number.detail",example:"-5.5",require:1,repeat:0},{name:"formula.functionList.FLOOR_MATH.functionParameter.significance.name",detail:"formula.functionList.FLOOR_MATH.functionParameter.significance.detail",example:"2",require:0,repeat:0},{name:"formula.functionList.FLOOR_MATH.functionParameter.mode.name",detail:"formula.functionList.FLOOR_MATH.functionParameter.mode.detail",example:"-1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.FLOOR_PRECISE,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.FLOOR_PRECISE.description",abstract:"formula.functionList.FLOOR_PRECISE.abstract",functionParameter:[{name:"formula.functionList.FLOOR_PRECISE.functionParameter.number.name",detail:"formula.functionList.FLOOR_PRECISE.functionParameter.number.detail",example:"-3.2",require:1,repeat:0},{name:"formula.functionList.FLOOR_PRECISE.functionParameter.significance.name",detail:"formula.functionList.FLOOR_PRECISE.functionParameter.significance.detail",example:"-1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.GCD,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.GCD.description",abstract:"formula.functionList.GCD.abstract",functionParameter:[{name:"formula.functionList.GCD.functionParameter.number1.name",detail:"formula.functionList.GCD.functionParameter.number1.detail",example:"5",require:1,repeat:0},{name:"formula.functionList.GCD.functionParameter.number2.name",detail:"formula.functionList.GCD.functionParameter.number2.detail",example:"2",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.INT,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.INT.description",abstract:"formula.functionList.INT.abstract",functionParameter:[{name:"formula.functionList.INT.functionParameter.number.name",detail:"formula.functionList.INT.functionParameter.number.detail",example:"8.9",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.ISO_CEILING,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.ISO_CEILING.description",abstract:"formula.functionList.ISO_CEILING.abstract",functionParameter:[{name:"formula.functionList.ISO_CEILING.functionParameter.number1.name",detail:"formula.functionList.ISO_CEILING.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.ISO_CEILING.functionParameter.number2.name",detail:"formula.functionList.ISO_CEILING.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.LCM,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.LCM.description",abstract:"formula.functionList.LCM.abstract",functionParameter:[{name:"formula.functionList.LCM.functionParameter.number1.name",detail:"formula.functionList.LCM.functionParameter.number1.detail",example:"5",require:1,repeat:0},{name:"formula.functionList.LCM.functionParameter.number2.name",detail:"formula.functionList.LCM.functionParameter.number2.detail",example:"2",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.LET,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.LET.description",abstract:"formula.functionList.LET.abstract",functionParameter:[{name:"formula.functionList.LET.functionParameter.number1.name",detail:"formula.functionList.LET.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.LET.functionParameter.number2.name",detail:"formula.functionList.LET.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.LN,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.LN.description",abstract:"formula.functionList.LN.abstract",functionParameter:[{name:"formula.functionList.LN.functionParameter.number.name",detail:"formula.functionList.LN.functionParameter.number.detail",example:"EXP(3)",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.LOG,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.LOG.description",abstract:"formula.functionList.LOG.abstract",functionParameter:[{name:"formula.functionList.LOG.functionParameter.number.name",detail:"formula.functionList.LOG.functionParameter.number.detail",example:"8",require:1,repeat:0},{name:"formula.functionList.LOG.functionParameter.base.name",detail:"formula.functionList.LOG.functionParameter.base.detail",example:"2",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.LOG10,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.LOG10.description",abstract:"formula.functionList.LOG10.abstract",functionParameter:[{name:"formula.functionList.LOG10.functionParameter.number.name",detail:"formula.functionList.LOG10.functionParameter.number.detail",example:"100000",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.MDETERM,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.MDETERM.description",abstract:"formula.functionList.MDETERM.abstract",functionParameter:[{name:"formula.functionList.MDETERM.functionParameter.array.name",detail:"formula.functionList.MDETERM.functionParameter.array.detail",example:"{3,6,1;1,1,0;3,10,2}",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.MINVERSE,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.MINVERSE.description",abstract:"formula.functionList.MINVERSE.abstract",functionParameter:[{name:"formula.functionList.MINVERSE.functionParameter.array.name",detail:"formula.functionList.MINVERSE.functionParameter.array.detail",example:"{3,6,1;1,1,0;3,10,2}",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.MMULT,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.MMULT.description",abstract:"formula.functionList.MMULT.abstract",functionParameter:[{name:"formula.functionList.MMULT.functionParameter.array1.name",detail:"formula.functionList.MMULT.functionParameter.array1.detail",example:"A2:B3",require:1,repeat:0},{name:"formula.functionList.MMULT.functionParameter.array2.name",detail:"formula.functionList.MMULT.functionParameter.array2.detail",example:"A5:B6",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.MOD,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.MOD.description",abstract:"formula.functionList.MOD.abstract",functionParameter:[{name:"formula.functionList.MOD.functionParameter.number.name",detail:"formula.functionList.MOD.functionParameter.number.detail",example:"3",require:1,repeat:0},{name:"formula.functionList.MOD.functionParameter.divisor.name",detail:"formula.functionList.MOD.functionParameter.divisor.detail",example:"2",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.MROUND,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.MROUND.description",abstract:"formula.functionList.MROUND.abstract",functionParameter:[{name:"formula.functionList.MROUND.functionParameter.number.name",detail:"formula.functionList.MROUND.functionParameter.number.detail",example:"10",require:1,repeat:0},{name:"formula.functionList.MROUND.functionParameter.multiple.name",detail:"formula.functionList.MROUND.functionParameter.multiple.detail",example:"3",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.MULTINOMIAL,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.MULTINOMIAL.description",abstract:"formula.functionList.MULTINOMIAL.abstract",functionParameter:[{name:"formula.functionList.MULTINOMIAL.functionParameter.number1.name",detail:"formula.functionList.MULTINOMIAL.functionParameter.number1.detail",example:"5",require:1,repeat:0},{name:"formula.functionList.MULTINOMIAL.functionParameter.number2.name",detail:"formula.functionList.MULTINOMIAL.functionParameter.number2.detail",example:"2",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.MUNIT,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.MUNIT.description",abstract:"formula.functionList.MUNIT.abstract",functionParameter:[{name:"formula.functionList.MUNIT.functionParameter.dimension.name",detail:"formula.functionList.MUNIT.functionParameter.dimension.detail",example:"3",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.ODD,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.ODD.description",abstract:"formula.functionList.ODD.abstract",functionParameter:[{name:"formula.functionList.ODD.functionParameter.number.name",detail:"formula.functionList.ODD.functionParameter.number.detail",example:"1.5",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.PI,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.PI.description",abstract:"formula.functionList.PI.abstract",functionParameter:[]},{functionName:engineFormula.FUNCTION_NAMES_MATH.POWER,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.POWER.description",abstract:"formula.functionList.POWER.abstract",functionParameter:[{name:"formula.functionList.POWER.functionParameter.number.name",detail:"formula.functionList.POWER.functionParameter.number.detail",example:"5",require:1,repeat:0},{name:"formula.functionList.POWER.functionParameter.power.name",detail:"formula.functionList.POWER.functionParameter.power.detail",example:"2",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.PRODUCT,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.PRODUCT.description",abstract:"formula.functionList.PRODUCT.abstract",functionParameter:[{name:"formula.functionList.PRODUCT.functionParameter.number1.name",detail:"formula.functionList.PRODUCT.functionParameter.number1.detail",example:"A1",require:1,repeat:0},{name:"formula.functionList.PRODUCT.functionParameter.number2.name",detail:"formula.functionList.PRODUCT.functionParameter.number2.detail",example:"A2",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.QUOTIENT,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.QUOTIENT.description",abstract:"formula.functionList.QUOTIENT.abstract",functionParameter:[{name:"formula.functionList.QUOTIENT.functionParameter.numerator.name",detail:"formula.functionList.QUOTIENT.functionParameter.numerator.detail",example:"5",require:1,repeat:0},{name:"formula.functionList.QUOTIENT.functionParameter.denominator.name",detail:"formula.functionList.QUOTIENT.functionParameter.denominator.detail",example:"2",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.RADIANS,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.RADIANS.description",abstract:"formula.functionList.RADIANS.abstract",functionParameter:[{name:"formula.functionList.RADIANS.functionParameter.angle.name",detail:"formula.functionList.RADIANS.functionParameter.angle.detail",example:"270",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.RAND,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.RAND.description",abstract:"formula.functionList.RAND.abstract",functionParameter:[]},{functionName:engineFormula.FUNCTION_NAMES_MATH.RANDARRAY,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.RANDARRAY.description",abstract:"formula.functionList.RANDARRAY.abstract",functionParameter:[{name:"formula.functionList.RANDARRAY.functionParameter.rows.name",detail:"formula.functionList.RANDARRAY.functionParameter.rows.detail",example:"5",require:0,repeat:0},{name:"formula.functionList.RANDARRAY.functionParameter.columns.name",detail:"formula.functionList.RANDARRAY.functionParameter.columns.detail",example:"3",require:0,repeat:0},{name:"formula.functionList.RANDARRAY.functionParameter.min.name",detail:"formula.functionList.RANDARRAY.functionParameter.min.detail",example:"1",require:0,repeat:0},{name:"formula.functionList.RANDARRAY.functionParameter.max.name",detail:"formula.functionList.RANDARRAY.functionParameter.max.detail",example:"100",require:0,repeat:0},{name:"formula.functionList.RANDARRAY.functionParameter.wholeNumber.name",detail:"formula.functionList.RANDARRAY.functionParameter.wholeNumber.detail",example:"TRUE",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.RANDBETWEEN,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.RANDBETWEEN.description",abstract:"formula.functionList.RANDBETWEEN.abstract",functionParameter:[{name:"formula.functionList.RANDBETWEEN.functionParameter.bottom.name",detail:"formula.functionList.RANDBETWEEN.functionParameter.bottom.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.RANDBETWEEN.functionParameter.top.name",detail:"formula.functionList.RANDBETWEEN.functionParameter.top.detail",example:"100",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.ROMAN,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.ROMAN.description",abstract:"formula.functionList.ROMAN.abstract",functionParameter:[{name:"formula.functionList.ROMAN.functionParameter.number1.name",detail:"formula.functionList.ROMAN.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.ROMAN.functionParameter.number2.name",detail:"formula.functionList.ROMAN.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.ROUND,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.ROUND.description",abstract:"formula.functionList.ROUND.abstract",functionParameter:[{name:"formula.functionList.ROUND.functionParameter.number.name",detail:"formula.functionList.ROUND.functionParameter.number.detail",example:"2.15",require:1,repeat:0},{name:"formula.functionList.ROUND.functionParameter.numDigits.name",detail:"formula.functionList.ROUND.functionParameter.numDigits.detail",example:"1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.ROUNDDOWN,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.ROUNDDOWN.description",abstract:"formula.functionList.ROUNDDOWN.abstract",functionParameter:[{name:"formula.functionList.ROUNDDOWN.functionParameter.number.name",detail:"formula.functionList.ROUNDDOWN.functionParameter.number.detail",example:"3.2",require:1,repeat:0},{name:"formula.functionList.ROUNDDOWN.functionParameter.numDigits.name",detail:"formula.functionList.ROUNDDOWN.functionParameter.numDigits.detail",example:"0",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.ROUNDUP,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.ROUNDUP.description",abstract:"formula.functionList.ROUNDUP.abstract",functionParameter:[{name:"formula.functionList.ROUNDUP.functionParameter.number.name",detail:"formula.functionList.ROUNDUP.functionParameter.number.detail",example:"3.2",require:1,repeat:0},{name:"formula.functionList.ROUNDUP.functionParameter.numDigits.name",detail:"formula.functionList.ROUNDUP.functionParameter.numDigits.detail",example:"0",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.SEC,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.SEC.description",abstract:"formula.functionList.SEC.abstract",functionParameter:[{name:"formula.functionList.SEC.functionParameter.number.name",detail:"formula.functionList.SEC.functionParameter.number.detail",example:"30",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.SECH,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.SECH.description",abstract:"formula.functionList.SECH.abstract",functionParameter:[{name:"formula.functionList.SECH.functionParameter.number.name",detail:"formula.functionList.SECH.functionParameter.number.detail",example:"30",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.SERIESSUM,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.SERIESSUM.description",abstract:"formula.functionList.SERIESSUM.abstract",functionParameter:[{name:"formula.functionList.SERIESSUM.functionParameter.x.name",detail:"formula.functionList.SERIESSUM.functionParameter.x.detail",example:"0.785398163",require:1,repeat:0},{name:"formula.functionList.SERIESSUM.functionParameter.n.name",detail:"formula.functionList.SERIESSUM.functionParameter.n.detail",example:"0",require:1,repeat:0},{name:"formula.functionList.SERIESSUM.functionParameter.m.name",detail:"formula.functionList.SERIESSUM.functionParameter.m.detail",example:"2",require:1,repeat:0},{name:"formula.functionList.SERIESSUM.functionParameter.coefficients.name",detail:"formula.functionList.SERIESSUM.functionParameter.coefficients.detail",example:"{1,-0.5,0.041666667,-0.001388889}",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.SEQUENCE,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.SEQUENCE.description",abstract:"formula.functionList.SEQUENCE.abstract",functionParameter:[{name:"formula.functionList.SEQUENCE.functionParameter.rows.name",detail:"formula.functionList.SEQUENCE.functionParameter.rows.detail",example:"4",require:1,repeat:0},{name:"formula.functionList.SEQUENCE.functionParameter.columns.name",detail:"formula.functionList.SEQUENCE.functionParameter.columns.detail",example:"5",require:0,repeat:0},{name:"formula.functionList.SEQUENCE.functionParameter.start.name",detail:"formula.functionList.SEQUENCE.functionParameter.start.detail",example:"1",require:0,repeat:0},{name:"formula.functionList.SEQUENCE.functionParameter.step.name",detail:"formula.functionList.SEQUENCE.functionParameter.step.detail",example:"1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.SIGN,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.SIGN.description",abstract:"formula.functionList.SIGN.abstract",functionParameter:[{name:"formula.functionList.SIGN.functionParameter.number.name",detail:"formula.functionList.SIGN.functionParameter.number.detail",example:"10",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.SIN,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.SIN.description",abstract:"formula.functionList.SIN.abstract",functionParameter:[{name:"formula.functionList.SIN.functionParameter.number.name",detail:"formula.functionList.SIN.functionParameter.number.detail",example:"30*PI()/180",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.SINH,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.SINH.description",abstract:"formula.functionList.SINH.abstract",functionParameter:[{name:"formula.functionList.SINH.functionParameter.number.name",detail:"formula.functionList.SINH.functionParameter.number.detail",example:"0.0342*1.03",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.SQRT,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.SQRT.description",abstract:"formula.functionList.SQRT.abstract",functionParameter:[{name:"formula.functionList.SQRT.functionParameter.number.name",detail:"formula.functionList.SQRT.functionParameter.number.detail",example:"16",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.SQRTPI,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.SQRTPI.description",abstract:"formula.functionList.SQRTPI.abstract",functionParameter:[{name:"formula.functionList.SQRTPI.functionParameter.number.name",detail:"formula.functionList.SQRTPI.functionParameter.number.detail",example:"1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.SUBTOTAL,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.SUBTOTAL.description",abstract:"formula.functionList.SUBTOTAL.abstract",functionParameter:[{name:"formula.functionList.SUBTOTAL.functionParameter.functionNum.name",detail:"formula.functionList.SUBTOTAL.functionParameter.functionNum.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.SUBTOTAL.functionParameter.ref1.name",detail:"formula.functionList.SUBTOTAL.functionParameter.ref1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.SUBTOTAL.functionParameter.ref2.name",detail:"formula.functionList.SUBTOTAL.functionParameter.ref2.detail",example:"B1:B20",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.SUM,aliasFunctionName:"formula.functionList.SUM.aliasFunctionName",functionType:engineFormula.FunctionType.Math,description:"formula.functionList.SUM.description",abstract:"formula.functionList.SUM.abstract",functionParameter:[{name:"formula.functionList.SUM.functionParameter.number1.name",detail:"formula.functionList.SUM.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.SUM.functionParameter.number2.name",detail:"formula.functionList.SUM.functionParameter.number2.detail",example:"B2:B10",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.SUMIF,aliasFunctionName:"formula.functionList.SUMIF.aliasFunctionName",functionType:engineFormula.FunctionType.Math,description:"formula.functionList.SUMIF.description",abstract:"formula.functionList.SUMIF.abstract",functionParameter:[{name:"formula.functionList.SUMIF.functionParameter.range.name",detail:"formula.functionList.SUMIF.functionParameter.range.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.SUMIF.functionParameter.criteria.name",detail:"formula.functionList.SUMIF.functionParameter.criteria.detail",example:'">5"',require:1,repeat:0},{name:"formula.functionList.SUMIF.functionParameter.sumRange.name",detail:"formula.functionList.SUMIF.functionParameter.sumRange.detail",example:"B1:B20",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.SUMIFS,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.SUMIFS.description",abstract:"formula.functionList.SUMIFS.abstract",functionParameter:[{name:"formula.functionList.SUMIFS.functionParameter.sumRange.name",detail:"formula.functionList.SUMIFS.functionParameter.sumRange.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.SUMIFS.functionParameter.criteriaRange1.name",detail:"formula.functionList.SUMIFS.functionParameter.criteriaRange1.detail",example:"B1:B20",require:1,repeat:0},{name:"formula.functionList.SUMIFS.functionParameter.criteria1.name",detail:"formula.functionList.SUMIFS.functionParameter.criteria1.detail",example:'">10"',require:1,repeat:0},{name:"formula.functionList.SUMIFS.functionParameter.criteriaRange2.name",detail:"formula.functionList.SUMIFS.functionParameter.criteriaRange2.detail",example:"C1:C20",require:0,repeat:1},{name:"formula.functionList.SUMIFS.functionParameter.criteria2.name",detail:"formula.functionList.SUMIFS.functionParameter.criteria2.detail",example:'"<20"',require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.SUMPRODUCT,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.SUMPRODUCT.description",abstract:"formula.functionList.SUMPRODUCT.abstract",functionParameter:[{name:"formula.functionList.SUMPRODUCT.functionParameter.array1.name",detail:"formula.functionList.SUMPRODUCT.functionParameter.array1.detail",example:"C2:C5",require:1,repeat:0},{name:"formula.functionList.SUMPRODUCT.functionParameter.array2.name",detail:"formula.functionList.SUMPRODUCT.functionParameter.array2.detail",example:"D2:D5",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.SUMSQ,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.SUMSQ.description",abstract:"formula.functionList.SUMSQ.abstract",functionParameter:[{name:"formula.functionList.SUMSQ.functionParameter.number1.name",detail:"formula.functionList.SUMSQ.functionParameter.number1.detail",example:"3",require:1,repeat:0},{name:"formula.functionList.SUMSQ.functionParameter.number2.name",detail:"formula.functionList.SUMSQ.functionParameter.number2.detail",example:"4",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.SUMX2MY2,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.SUMX2MY2.description",abstract:"formula.functionList.SUMX2MY2.abstract",functionParameter:[{name:"formula.functionList.SUMX2MY2.functionParameter.arrayX.name",detail:"formula.functionList.SUMX2MY2.functionParameter.arrayX.detail",example:"A2:A8",require:1,repeat:0},{name:"formula.functionList.SUMX2MY2.functionParameter.arrayY.name",detail:"formula.functionList.SUMX2MY2.functionParameter.arrayY.detail",example:"B2:B8",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.SUMX2PY2,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.SUMX2PY2.description",abstract:"formula.functionList.SUMX2PY2.abstract",functionParameter:[{name:"formula.functionList.SUMX2PY2.functionParameter.arrayX.name",detail:"formula.functionList.SUMX2PY2.functionParameter.arrayX.detail",example:"A2:A8",require:1,repeat:0},{name:"formula.functionList.SUMX2PY2.functionParameter.arrayY.name",detail:"formula.functionList.SUMX2PY2.functionParameter.arrayY.detail",example:"B2:B8",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.SUMXMY2,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.SUMXMY2.description",abstract:"formula.functionList.SUMXMY2.abstract",functionParameter:[{name:"formula.functionList.SUMXMY2.functionParameter.arrayX.name",detail:"formula.functionList.SUMXMY2.functionParameter.arrayX.detail",example:"A2:A8",require:1,repeat:0},{name:"formula.functionList.SUMXMY2.functionParameter.arrayY.name",detail:"formula.functionList.SUMXMY2.functionParameter.arrayY.detail",example:"B2:B8",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.TAN,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.TAN.description",abstract:"formula.functionList.TAN.abstract",functionParameter:[{name:"formula.functionList.TAN.functionParameter.number.name",detail:"formula.functionList.TAN.functionParameter.number.detail",example:"1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.TANH,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.TANH.description",abstract:"formula.functionList.TANH.abstract",functionParameter:[{name:"formula.functionList.TANH.functionParameter.number.name",detail:"formula.functionList.TANH.functionParameter.number.detail",example:"1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_MATH.TRUNC,functionType:engineFormula.FunctionType.Math,description:"formula.functionList.TRUNC.description",abstract:"formula.functionList.TRUNC.abstract",functionParameter:[{name:"formula.functionList.TRUNC.functionParameter.number.name",detail:"formula.functionList.TRUNC.functionParameter.number.detail",example:"0.45",require:1,repeat:0},{name:"formula.functionList.TRUNC.functionParameter.numDigits.name",detail:"formula.functionList.TRUNC.functionParameter.numDigits.detail",example:"1",require:0,repeat:0}]}],FUNCTION_LIST_STATISTICAL=[{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.AVEDEV,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.AVEDEV.description",abstract:"formula.functionList.AVEDEV.abstract",functionParameter:[{name:"formula.functionList.AVEDEV.functionParameter.number1.name",detail:"formula.functionList.AVEDEV.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.AVEDEV.functionParameter.number2.name",detail:"formula.functionList.AVEDEV.functionParameter.number2.detail",example:"B1:B20",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.AVERAGE,aliasFunctionName:"formula.functionList.AVERAGE.aliasFunctionName",functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.AVERAGE.description",abstract:"formula.functionList.AVERAGE.abstract",functionParameter:[{name:"formula.functionList.AVERAGE.functionParameter.number1.name",detail:"formula.functionList.AVERAGE.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.AVERAGE.functionParameter.number2.name",detail:"formula.functionList.AVERAGE.functionParameter.number2.detail",example:"B1:B20",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.AVERAGEA,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.AVERAGEA.description",abstract:"formula.functionList.AVERAGEA.abstract",functionParameter:[{name:"formula.functionList.AVERAGEA.functionParameter.value1.name",detail:"formula.functionList.AVERAGEA.functionParameter.value1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.AVERAGEA.functionParameter.value2.name",detail:"formula.functionList.AVERAGEA.functionParameter.value2.detail",example:"B1:B20",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.AVERAGEIF,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.AVERAGEIF.description",abstract:"formula.functionList.AVERAGEIF.abstract",functionParameter:[{name:"formula.functionList.AVERAGEIF.functionParameter.range.name",detail:"formula.functionList.AVERAGEIF.functionParameter.range.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.AVERAGEIF.functionParameter.criteria.name",detail:"formula.functionList.AVERAGEIF.functionParameter.criteria.detail",example:'">5"',require:1,repeat:0},{name:"formula.functionList.AVERAGEIF.functionParameter.averageRange.name",detail:"formula.functionList.AVERAGEIF.functionParameter.averageRange.detail",example:"B1:B20",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.AVERAGEIFS,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.AVERAGEIFS.description",abstract:"formula.functionList.AVERAGEIFS.abstract",functionParameter:[{name:"formula.functionList.AVERAGEIFS.functionParameter.averageRange.name",detail:"formula.functionList.AVERAGEIFS.functionParameter.averageRange.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.AVERAGEIFS.functionParameter.criteriaRange1.name",detail:"formula.functionList.AVERAGEIFS.functionParameter.criteriaRange1.detail",example:"B1:B20",require:1,repeat:0},{name:"formula.functionList.AVERAGEIFS.functionParameter.criteria1.name",detail:"formula.functionList.AVERAGEIFS.functionParameter.criteria1.detail",example:'">10"',require:1,repeat:0},{name:"formula.functionList.AVERAGEIFS.functionParameter.criteriaRange2.name",detail:"formula.functionList.AVERAGEIFS.functionParameter.criteriaRange2.detail",example:"C1:C20",require:0,repeat:1},{name:"formula.functionList.AVERAGEIFS.functionParameter.criteria2.name",detail:"formula.functionList.AVERAGEIFS.functionParameter.criteria2.detail",example:'"<20"',require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.BETA_DIST,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.BETA_DIST.description",abstract:"formula.functionList.BETA_DIST.abstract",functionParameter:[{name:"formula.functionList.BETA_DIST.functionParameter.x.name",detail:"formula.functionList.BETA_DIST.functionParameter.x.detail",example:"2",require:1,repeat:0},{name:"formula.functionList.BETA_DIST.functionParameter.alpha.name",detail:"formula.functionList.BETA_DIST.functionParameter.alpha.detail",example:"8",require:1,repeat:0},{name:"formula.functionList.BETA_DIST.functionParameter.beta.name",detail:"formula.functionList.BETA_DIST.functionParameter.beta.detail",example:"10",require:1,repeat:0},{name:"formula.functionList.BETA_DIST.functionParameter.cumulative.name",detail:"formula.functionList.BETA_DIST.functionParameter.cumulative.detail",example:"true",require:1,repeat:0},{name:"formula.functionList.BETA_DIST.functionParameter.A.name",detail:"formula.functionList.BETA_DIST.functionParameter.A.detail",example:"1",require:0,repeat:0},{name:"formula.functionList.BETA_DIST.functionParameter.B.name",detail:"formula.functionList.BETA_DIST.functionParameter.B.detail",example:"3",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.BETA_INV,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.BETA_INV.description",abstract:"formula.functionList.BETA_INV.abstract",functionParameter:[{name:"formula.functionList.BETA_INV.functionParameter.probability.name",detail:"formula.functionList.BETA_INV.functionParameter.probability.detail",example:"0.685470581",require:1,repeat:0},{name:"formula.functionList.BETA_INV.functionParameter.alpha.name",detail:"formula.functionList.BETA_INV.functionParameter.alpha.detail",example:"8",require:1,repeat:0},{name:"formula.functionList.BETA_INV.functionParameter.beta.name",detail:"formula.functionList.BETA_INV.functionParameter.beta.detail",example:"10",require:1,repeat:0},{name:"formula.functionList.BETA_INV.functionParameter.A.name",detail:"formula.functionList.BETA_INV.functionParameter.A.detail",example:"1",require:0,repeat:0},{name:"formula.functionList.BETA_INV.functionParameter.B.name",detail:"formula.functionList.BETA_INV.functionParameter.B.detail",example:"3",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.BINOM_DIST,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.BINOM_DIST.description",abstract:"formula.functionList.BINOM_DIST.abstract",functionParameter:[{name:"formula.functionList.BINOM_DIST.functionParameter.numberS.name",detail:"formula.functionList.BINOM_DIST.functionParameter.numberS.detail",example:"6",require:1,repeat:0},{name:"formula.functionList.BINOM_DIST.functionParameter.trials.name",detail:"formula.functionList.BINOM_DIST.functionParameter.trials.detail",example:"10",require:1,repeat:0},{name:"formula.functionList.BINOM_DIST.functionParameter.probabilityS.name",detail:"formula.functionList.BINOM_DIST.functionParameter.probabilityS.detail",example:"0.5",require:1,repeat:0},{name:"formula.functionList.BINOM_DIST.functionParameter.cumulative.name",detail:"formula.functionList.BINOM_DIST.functionParameter.cumulative.detail",example:"false",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.BINOM_DIST_RANGE,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.BINOM_DIST_RANGE.description",abstract:"formula.functionList.BINOM_DIST_RANGE.abstract",functionParameter:[{name:"formula.functionList.BINOM_DIST_RANGE.functionParameter.trials.name",detail:"formula.functionList.BINOM_DIST_RANGE.functionParameter.trials.detail",example:"60",require:1,repeat:0},{name:"formula.functionList.BINOM_DIST_RANGE.functionParameter.probabilityS.name",detail:"formula.functionList.BINOM_DIST_RANGE.functionParameter.probabilityS.detail",example:"0.75",require:1,repeat:0},{name:"formula.functionList.BINOM_DIST_RANGE.functionParameter.numberS.name",detail:"formula.functionList.BINOM_DIST_RANGE.functionParameter.numberS.detail",example:"45",require:1,repeat:0},{name:"formula.functionList.BINOM_DIST_RANGE.functionParameter.numberS2.name",detail:"formula.functionList.BINOM_DIST_RANGE.functionParameter.numberS2.detail",example:"50",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.BINOM_INV,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.BINOM_INV.description",abstract:"formula.functionList.BINOM_INV.abstract",functionParameter:[{name:"formula.functionList.BINOM_INV.functionParameter.trials.name",detail:"formula.functionList.BINOM_INV.functionParameter.trials.detail",example:"6",require:1,repeat:0},{name:"formula.functionList.BINOM_INV.functionParameter.probabilityS.name",detail:"formula.functionList.BINOM_INV.functionParameter.probabilityS.detail",example:"0.5",require:1,repeat:0},{name:"formula.functionList.BINOM_INV.functionParameter.alpha.name",detail:"formula.functionList.BINOM_INV.functionParameter.alpha.detail",example:"0.75",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.CHISQ_DIST,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.CHISQ_DIST.description",abstract:"formula.functionList.CHISQ_DIST.abstract",functionParameter:[{name:"formula.functionList.CHISQ_DIST.functionParameter.x.name",detail:"formula.functionList.CHISQ_DIST.functionParameter.x.detail",example:"0.5",require:1,repeat:0},{name:"formula.functionList.CHISQ_DIST.functionParameter.degFreedom.name",detail:"formula.functionList.CHISQ_DIST.functionParameter.degFreedom.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.CHISQ_DIST.functionParameter.cumulative.name",detail:"formula.functionList.CHISQ_DIST.functionParameter.cumulative.detail",example:"true",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.CHISQ_DIST_RT,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.CHISQ_DIST_RT.description",abstract:"formula.functionList.CHISQ_DIST_RT.abstract",functionParameter:[{name:"formula.functionList.CHISQ_DIST_RT.functionParameter.x.name",detail:"formula.functionList.CHISQ_DIST_RT.functionParameter.x.detail",example:"0.5",require:1,repeat:0},{name:"formula.functionList.CHISQ_DIST_RT.functionParameter.degFreedom.name",detail:"formula.functionList.CHISQ_DIST_RT.functionParameter.degFreedom.detail",example:"1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.CHISQ_INV,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.CHISQ_INV.description",abstract:"formula.functionList.CHISQ_INV.abstract",functionParameter:[{name:"formula.functionList.CHISQ_INV.functionParameter.probability.name",detail:"formula.functionList.CHISQ_INV.functionParameter.probability.detail",example:"0.93",require:1,repeat:0},{name:"formula.functionList.CHISQ_INV.functionParameter.degFreedom.name",detail:"formula.functionList.CHISQ_INV.functionParameter.degFreedom.detail",example:"1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.CHISQ_INV_RT,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.CHISQ_INV_RT.description",abstract:"formula.functionList.CHISQ_INV_RT.abstract",functionParameter:[{name:"formula.functionList.CHISQ_INV_RT.functionParameter.probability.name",detail:"formula.functionList.CHISQ_INV_RT.functionParameter.probability.detail",example:"0.93",require:1,repeat:0},{name:"formula.functionList.CHISQ_INV_RT.functionParameter.degFreedom.name",detail:"formula.functionList.CHISQ_INV_RT.functionParameter.degFreedom.detail",example:"1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.CHISQ_TEST,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.CHISQ_TEST.description",abstract:"formula.functionList.CHISQ_TEST.abstract",functionParameter:[{name:"formula.functionList.CHISQ_TEST.functionParameter.actualRange.name",detail:"formula.functionList.CHISQ_TEST.functionParameter.actualRange.detail",example:"{58,35;11,25;10,23}",require:1,repeat:0},{name:"formula.functionList.CHISQ_TEST.functionParameter.expectedRange.name",detail:"formula.functionList.CHISQ_TEST.functionParameter.expectedRange.detail",example:"{45.35,47.65;17.56,18.44;16.09,16.91}",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.CONFIDENCE_NORM,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.CONFIDENCE_NORM.description",abstract:"formula.functionList.CONFIDENCE_NORM.abstract",functionParameter:[{name:"formula.functionList.CONFIDENCE_NORM.functionParameter.alpha.name",detail:"formula.functionList.CONFIDENCE_NORM.functionParameter.alpha.detail",example:"0.05",require:1,repeat:0},{name:"formula.functionList.CONFIDENCE_NORM.functionParameter.standardDev.name",detail:"formula.functionList.CONFIDENCE_NORM.functionParameter.standardDev.detail",example:"2.5",require:1,repeat:0},{name:"formula.functionList.CONFIDENCE_NORM.functionParameter.size.name",detail:"formula.functionList.CONFIDENCE_NORM.functionParameter.size.detail",example:"50",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.CONFIDENCE_T,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.CONFIDENCE_T.description",abstract:"formula.functionList.CONFIDENCE_T.abstract",functionParameter:[{name:"formula.functionList.CONFIDENCE_T.functionParameter.alpha.name",detail:"formula.functionList.CONFIDENCE_T.functionParameter.alpha.detail",example:"0.05",require:1,repeat:0},{name:"formula.functionList.CONFIDENCE_T.functionParameter.standardDev.name",detail:"formula.functionList.CONFIDENCE_T.functionParameter.standardDev.detail",example:"2.5",require:1,repeat:0},{name:"formula.functionList.CONFIDENCE_T.functionParameter.size.name",detail:"formula.functionList.CONFIDENCE_T.functionParameter.size.detail",example:"50",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.CORREL,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.CORREL.description",abstract:"formula.functionList.CORREL.abstract",functionParameter:[{name:"formula.functionList.CORREL.functionParameter.array1.name",detail:"formula.functionList.CORREL.functionParameter.array1.detail",example:"{3,2,4,5,6}",require:1,repeat:0},{name:"formula.functionList.CORREL.functionParameter.array2.name",detail:"formula.functionList.CORREL.functionParameter.array2.detail",example:"{9,7,12,15,17}",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.COUNT,aliasFunctionName:"formula.functionList.COUNT.aliasFunctionName",functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.COUNT.description",abstract:"formula.functionList.COUNT.abstract",functionParameter:[{name:"formula.functionList.COUNT.functionParameter.value1.name",detail:"formula.functionList.COUNT.functionParameter.value1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.COUNT.functionParameter.value2.name",detail:"formula.functionList.COUNT.functionParameter.value2.detail",example:"B2:B10",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.COUNTA,aliasFunctionName:"formula.functionList.COUNTA.aliasFunctionName",functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.COUNTA.description",abstract:"formula.functionList.COUNTA.abstract",functionParameter:[{name:"formula.functionList.COUNTA.functionParameter.number1.name",detail:"formula.functionList.COUNTA.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.COUNTA.functionParameter.number2.name",detail:"formula.functionList.COUNTA.functionParameter.number2.detail",example:"B2:B10",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.COUNTBLANK,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.COUNTBLANK.description",abstract:"formula.functionList.COUNTBLANK.abstract",functionParameter:[{name:"formula.functionList.COUNTBLANK.functionParameter.range.name",detail:"formula.functionList.COUNTBLANK.functionParameter.range.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.COUNTIF,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.COUNTIF.description",abstract:"formula.functionList.COUNTIF.abstract",functionParameter:[{name:"formula.functionList.COUNTIF.functionParameter.range.name",detail:"formula.functionList.COUNTIF.functionParameter.range.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.COUNTIF.functionParameter.criteria.name",detail:"formula.functionList.COUNTIF.functionParameter.criteria.detail",example:'">5"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.COUNTIFS,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.COUNTIFS.description",abstract:"formula.functionList.COUNTIFS.abstract",functionParameter:[{name:"formula.functionList.COUNTIFS.functionParameter.criteriaRange1.name",detail:"formula.functionList.COUNTIFS.functionParameter.criteriaRange1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.COUNTIFS.functionParameter.criteria1.name",detail:"formula.functionList.COUNTIFS.functionParameter.criteria1.detail",example:'">10"',require:1,repeat:0},{name:"formula.functionList.COUNTIFS.functionParameter.criteriaRange2.name",detail:"formula.functionList.COUNTIFS.functionParameter.criteriaRange2.detail",example:"B1:B20",require:0,repeat:1},{name:"formula.functionList.COUNTIFS.functionParameter.criteria2.name",detail:"formula.functionList.COUNTIFS.functionParameter.criteria2.detail",example:'"<20"',require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.COVARIANCE_P,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.COVARIANCE_P.description",abstract:"formula.functionList.COVARIANCE_P.abstract",functionParameter:[{name:"formula.functionList.COVARIANCE_P.functionParameter.array1.name",detail:"formula.functionList.COVARIANCE_P.functionParameter.array1.detail",example:"{3,2,4,5,6}",require:1,repeat:0},{name:"formula.functionList.COVARIANCE_P.functionParameter.array2.name",detail:"formula.functionList.COVARIANCE_P.functionParameter.array2.detail",example:"{9,7,12,15,17}",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.COVARIANCE_S,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.COVARIANCE_S.description",abstract:"formula.functionList.COVARIANCE_S.abstract",functionParameter:[{name:"formula.functionList.COVARIANCE_S.functionParameter.array1.name",detail:"formula.functionList.COVARIANCE_S.functionParameter.array1.detail",example:"{3,2,4,5,6}",require:1,repeat:0},{name:"formula.functionList.COVARIANCE_S.functionParameter.array2.name",detail:"formula.functionList.COVARIANCE_S.functionParameter.array2.detail",example:"{9,7,12,15,17}",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.DEVSQ,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.DEVSQ.description",abstract:"formula.functionList.DEVSQ.abstract",functionParameter:[{name:"formula.functionList.DEVSQ.functionParameter.number1.name",detail:"formula.functionList.DEVSQ.functionParameter.number1.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.DEVSQ.functionParameter.number2.name",detail:"formula.functionList.DEVSQ.functionParameter.number2.detail",example:"2",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.EXPON_DIST,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.EXPON_DIST.description",abstract:"formula.functionList.EXPON_DIST.abstract",functionParameter:[{name:"formula.functionList.EXPON_DIST.functionParameter.x.name",detail:"formula.functionList.EXPON_DIST.functionParameter.x.detail",example:"0.2",require:1,repeat:0},{name:"formula.functionList.EXPON_DIST.functionParameter.lambda.name",detail:"formula.functionList.EXPON_DIST.functionParameter.lambda.detail",example:"10",require:1,repeat:0},{name:"formula.functionList.EXPON_DIST.functionParameter.cumulative.name",detail:"formula.functionList.EXPON_DIST.functionParameter.cumulative.detail",example:"true",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.F_DIST,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.F_DIST.description",abstract:"formula.functionList.F_DIST.abstract",functionParameter:[{name:"formula.functionList.F_DIST.functionParameter.x.name",detail:"formula.functionList.F_DIST.functionParameter.x.detail",example:"15.2069",require:1,repeat:0},{name:"formula.functionList.F_DIST.functionParameter.degFreedom1.name",detail:"formula.functionList.F_DIST.functionParameter.degFreedom1.detail",example:"6",require:1,repeat:0},{name:"formula.functionList.F_DIST.functionParameter.degFreedom2.name",detail:"formula.functionList.F_DIST.functionParameter.degFreedom2.detail",example:"4",require:1,repeat:0},{name:"formula.functionList.F_DIST.functionParameter.cumulative.name",detail:"formula.functionList.F_DIST.functionParameter.cumulative.detail",example:"true",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.F_DIST_RT,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.F_DIST_RT.description",abstract:"formula.functionList.F_DIST_RT.abstract",functionParameter:[{name:"formula.functionList.F_DIST_RT.functionParameter.x.name",detail:"formula.functionList.F_DIST_RT.functionParameter.x.detail",example:"15.2069",require:1,repeat:0},{name:"formula.functionList.F_DIST_RT.functionParameter.degFreedom1.name",detail:"formula.functionList.F_DIST_RT.functionParameter.degFreedom1.detail",example:"6",require:1,repeat:0},{name:"formula.functionList.F_DIST_RT.functionParameter.degFreedom2.name",detail:"formula.functionList.F_DIST_RT.functionParameter.degFreedom2.detail",example:"4",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.F_INV,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.F_INV.description",abstract:"formula.functionList.F_INV.abstract",functionParameter:[{name:"formula.functionList.F_INV.functionParameter.probability.name",detail:"formula.functionList.F_INV.functionParameter.probability.detail",example:"0.01",require:1,repeat:0},{name:"formula.functionList.F_INV.functionParameter.degFreedom1.name",detail:"formula.functionList.F_INV.functionParameter.degFreedom1.detail",example:"6",require:1,repeat:0},{name:"formula.functionList.F_INV.functionParameter.degFreedom2.name",detail:"formula.functionList.F_INV.functionParameter.degFreedom2.detail",example:"4",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.F_INV_RT,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.F_INV_RT.description",abstract:"formula.functionList.F_INV_RT.abstract",functionParameter:[{name:"formula.functionList.F_INV_RT.functionParameter.probability.name",detail:"formula.functionList.F_INV_RT.functionParameter.probability.detail",example:"0.01",require:1,repeat:0},{name:"formula.functionList.F_INV_RT.functionParameter.degFreedom1.name",detail:"formula.functionList.F_INV_RT.functionParameter.degFreedom1.detail",example:"6",require:1,repeat:0},{name:"formula.functionList.F_INV_RT.functionParameter.degFreedom2.name",detail:"formula.functionList.F_INV_RT.functionParameter.degFreedom2.detail",example:"4",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.F_TEST,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.F_TEST.description",abstract:"formula.functionList.F_TEST.abstract",functionParameter:[{name:"formula.functionList.F_TEST.functionParameter.array1.name",detail:"formula.functionList.F_TEST.functionParameter.array1.detail",example:"{58,35;11,25;10,23}",require:1,repeat:0},{name:"formula.functionList.F_TEST.functionParameter.array2.name",detail:"formula.functionList.F_TEST.functionParameter.array2.detail",example:"{45.35,47.65;17.56,18.44;16.09,16.91}",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.FISHER,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.FISHER.description",abstract:"formula.functionList.FISHER.abstract",functionParameter:[{name:"formula.functionList.FISHER.functionParameter.x.name",detail:"formula.functionList.FISHER.functionParameter.x.detail",example:"0.75",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.FISHERINV,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.FISHERINV.description",abstract:"formula.functionList.FISHERINV.abstract",functionParameter:[{name:"formula.functionList.FISHERINV.functionParameter.y.name",detail:"formula.functionList.FISHERINV.functionParameter.y.detail",example:"0.75",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.FORECAST,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.FORECAST.description",abstract:"formula.functionList.FORECAST.abstract",functionParameter:[{name:"formula.functionList.FORECAST.functionParameter.x.name",detail:"formula.functionList.FORECAST.functionParameter.x.detail",example:"30",require:1,repeat:0},{name:"formula.functionList.FORECAST.functionParameter.knownYs.name",detail:"formula.functionList.FORECAST.functionParameter.knownYs.detail",example:"{6,7,9,15,21}",require:1,repeat:0},{name:"formula.functionList.FORECAST.functionParameter.knownXs.name",detail:"formula.functionList.FORECAST.functionParameter.knownXs.detail",example:"{20,28,31,38,40}",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.FORECAST_ETS,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.FORECAST_ETS.description",abstract:"formula.functionList.FORECAST_ETS.abstract",functionParameter:[{name:"formula.functionList.FORECAST_ETS.functionParameter.number1.name",detail:"formula.functionList.FORECAST_ETS.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.FORECAST_ETS.functionParameter.number2.name",detail:"formula.functionList.FORECAST_ETS.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.FORECAST_ETS_CONFINT,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.FORECAST_ETS_CONFINT.description",abstract:"formula.functionList.FORECAST_ETS_CONFINT.abstract",functionParameter:[{name:"formula.functionList.FORECAST_ETS_CONFINT.functionParameter.number1.name",detail:"formula.functionList.FORECAST_ETS_CONFINT.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.FORECAST_ETS_CONFINT.functionParameter.number2.name",detail:"formula.functionList.FORECAST_ETS_CONFINT.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.FORECAST_ETS_SEASONALITY,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.FORECAST_ETS_SEASONALITY.description",abstract:"formula.functionList.FORECAST_ETS_SEASONALITY.abstract",functionParameter:[{name:"formula.functionList.FORECAST_ETS_SEASONALITY.functionParameter.number1.name",detail:"formula.functionList.FORECAST_ETS_SEASONALITY.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.FORECAST_ETS_SEASONALITY.functionParameter.number2.name",detail:"formula.functionList.FORECAST_ETS_SEASONALITY.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.FORECAST_ETS_STAT,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.FORECAST_ETS_STAT.description",abstract:"formula.functionList.FORECAST_ETS_STAT.abstract",functionParameter:[{name:"formula.functionList.FORECAST_ETS_STAT.functionParameter.number1.name",detail:"formula.functionList.FORECAST_ETS_STAT.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.FORECAST_ETS_STAT.functionParameter.number2.name",detail:"formula.functionList.FORECAST_ETS_STAT.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.FORECAST_LINEAR,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.FORECAST_LINEAR.description",abstract:"formula.functionList.FORECAST_LINEAR.abstract",functionParameter:[{name:"formula.functionList.FORECAST_LINEAR.functionParameter.x.name",detail:"formula.functionList.FORECAST_LINEAR.functionParameter.x.detail",example:"30",require:1,repeat:0},{name:"formula.functionList.FORECAST_LINEAR.functionParameter.knownYs.name",detail:"formula.functionList.FORECAST_LINEAR.functionParameter.knownYs.detail",example:"{6,7,9,15,21}",require:1,repeat:0},{name:"formula.functionList.FORECAST_LINEAR.functionParameter.knownXs.name",detail:"formula.functionList.FORECAST_LINEAR.functionParameter.knownXs.detail",example:"{20,28,31,38,40}",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.FREQUENCY,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.FREQUENCY.description",abstract:"formula.functionList.FREQUENCY.abstract",functionParameter:[{name:"formula.functionList.FREQUENCY.functionParameter.number1.name",detail:"formula.functionList.FREQUENCY.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.FREQUENCY.functionParameter.number2.name",detail:"formula.functionList.FREQUENCY.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.GAMMA,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.GAMMA.description",abstract:"formula.functionList.GAMMA.abstract",functionParameter:[{name:"formula.functionList.GAMMA.functionParameter.number1.name",detail:"formula.functionList.GAMMA.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.GAMMA.functionParameter.number2.name",detail:"formula.functionList.GAMMA.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.GAMMA_DIST,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.GAMMA_DIST.description",abstract:"formula.functionList.GAMMA_DIST.abstract",functionParameter:[{name:"formula.functionList.GAMMA_DIST.functionParameter.number1.name",detail:"formula.functionList.GAMMA_DIST.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.GAMMA_DIST.functionParameter.number2.name",detail:"formula.functionList.GAMMA_DIST.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.GAMMA_INV,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.GAMMA_INV.description",abstract:"formula.functionList.GAMMA_INV.abstract",functionParameter:[{name:"formula.functionList.GAMMA_INV.functionParameter.number1.name",detail:"formula.functionList.GAMMA_INV.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.GAMMA_INV.functionParameter.number2.name",detail:"formula.functionList.GAMMA_INV.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.GAMMALN,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.GAMMALN.description",abstract:"formula.functionList.GAMMALN.abstract",functionParameter:[{name:"formula.functionList.GAMMALN.functionParameter.number1.name",detail:"formula.functionList.GAMMALN.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.GAMMALN.functionParameter.number2.name",detail:"formula.functionList.GAMMALN.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.GAMMALN_PRECISE,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.GAMMALN_PRECISE.description",abstract:"formula.functionList.GAMMALN_PRECISE.abstract",functionParameter:[{name:"formula.functionList.GAMMALN_PRECISE.functionParameter.number1.name",detail:"formula.functionList.GAMMALN_PRECISE.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.GAMMALN_PRECISE.functionParameter.number2.name",detail:"formula.functionList.GAMMALN_PRECISE.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.GAUSS,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.GAUSS.description",abstract:"formula.functionList.GAUSS.abstract",functionParameter:[{name:"formula.functionList.GAUSS.functionParameter.number1.name",detail:"formula.functionList.GAUSS.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.GAUSS.functionParameter.number2.name",detail:"formula.functionList.GAUSS.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.GEOMEAN,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.GEOMEAN.description",abstract:"formula.functionList.GEOMEAN.abstract",functionParameter:[{name:"formula.functionList.GEOMEAN.functionParameter.number1.name",detail:"formula.functionList.GEOMEAN.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.GEOMEAN.functionParameter.number2.name",detail:"formula.functionList.GEOMEAN.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.GROWTH,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.GROWTH.description",abstract:"formula.functionList.GROWTH.abstract",functionParameter:[{name:"formula.functionList.GROWTH.functionParameter.number1.name",detail:"formula.functionList.GROWTH.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.GROWTH.functionParameter.number2.name",detail:"formula.functionList.GROWTH.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.HARMEAN,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.HARMEAN.description",abstract:"formula.functionList.HARMEAN.abstract",functionParameter:[{name:"formula.functionList.HARMEAN.functionParameter.number1.name",detail:"formula.functionList.HARMEAN.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.HARMEAN.functionParameter.number2.name",detail:"formula.functionList.HARMEAN.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.HYPGEOM_DIST,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.HYPGEOM_DIST.description",abstract:"formula.functionList.HYPGEOM_DIST.abstract",functionParameter:[{name:"formula.functionList.HYPGEOM_DIST.functionParameter.number1.name",detail:"formula.functionList.HYPGEOM_DIST.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.HYPGEOM_DIST.functionParameter.number2.name",detail:"formula.functionList.HYPGEOM_DIST.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.INTERCEPT,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.INTERCEPT.description",abstract:"formula.functionList.INTERCEPT.abstract",functionParameter:[{name:"formula.functionList.INTERCEPT.functionParameter.knownYs.name",detail:"formula.functionList.INTERCEPT.functionParameter.knownYs.detail",example:"{6,7,9,15,21}",require:1,repeat:0},{name:"formula.functionList.INTERCEPT.functionParameter.knownXs.name",detail:"formula.functionList.INTERCEPT.functionParameter.knownXs.detail",example:"{20,28,31,38,40}",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.KURT,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.KURT.description",abstract:"formula.functionList.KURT.abstract",functionParameter:[{name:"formula.functionList.KURT.functionParameter.number1.name",detail:"formula.functionList.KURT.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.KURT.functionParameter.number2.name",detail:"formula.functionList.KURT.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.LARGE,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.LARGE.description",abstract:"formula.functionList.LARGE.abstract",functionParameter:[{name:"formula.functionList.LARGE.functionParameter.number1.name",detail:"formula.functionList.LARGE.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.LARGE.functionParameter.number2.name",detail:"formula.functionList.LARGE.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.LINEST,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.LINEST.description",abstract:"formula.functionList.LINEST.abstract",functionParameter:[{name:"formula.functionList.LINEST.functionParameter.number1.name",detail:"formula.functionList.LINEST.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.LINEST.functionParameter.number2.name",detail:"formula.functionList.LINEST.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.LOGEST,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.LOGEST.description",abstract:"formula.functionList.LOGEST.abstract",functionParameter:[{name:"formula.functionList.LOGEST.functionParameter.number1.name",detail:"formula.functionList.LOGEST.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.LOGEST.functionParameter.number2.name",detail:"formula.functionList.LOGEST.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.LOGNORM_DIST,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.LOGNORM_DIST.description",abstract:"formula.functionList.LOGNORM_DIST.abstract",functionParameter:[{name:"formula.functionList.LOGNORM_DIST.functionParameter.number1.name",detail:"formula.functionList.LOGNORM_DIST.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.LOGNORM_DIST.functionParameter.number2.name",detail:"formula.functionList.LOGNORM_DIST.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.LOGNORM_INV,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.LOGNORM_INV.description",abstract:"formula.functionList.LOGNORM_INV.abstract",functionParameter:[{name:"formula.functionList.LOGNORM_INV.functionParameter.number1.name",detail:"formula.functionList.LOGNORM_INV.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.LOGNORM_INV.functionParameter.number2.name",detail:"formula.functionList.LOGNORM_INV.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.MAX,aliasFunctionName:"formula.functionList.MAX.aliasFunctionName",functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.MAX.description",abstract:"formula.functionList.MAX.abstract",functionParameter:[{name:"formula.functionList.MAX.functionParameter.number1.name",detail:"formula.functionList.MAX.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.MAX.functionParameter.number2.name",detail:"formula.functionList.MAX.functionParameter.number2.detail",example:"B2:B10",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.MAXA,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.MAXA.description",abstract:"formula.functionList.MAXA.abstract",functionParameter:[{name:"formula.functionList.MAXA.functionParameter.value1.name",detail:"formula.functionList.MAXA.functionParameter.value1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.MAXA.functionParameter.value2.name",detail:"formula.functionList.MAXA.functionParameter.value2.detail",example:"B1:B20",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.MAXIFS,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.MAXIFS.description",abstract:"formula.functionList.MAXIFS.abstract",functionParameter:[{name:"formula.functionList.MAXIFS.functionParameter.maxRange.name",detail:"formula.functionList.MAXIFS.functionParameter.maxRange.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.MAXIFS.functionParameter.criteriaRange1.name",detail:"formula.functionList.MAXIFS.functionParameter.criteriaRange1.detail",example:"B1:B20",require:1,repeat:0},{name:"formula.functionList.MAXIFS.functionParameter.criteria1.name",detail:"formula.functionList.MAXIFS.functionParameter.criteria1.detail",example:'">10"',require:1,repeat:0},{name:"formula.functionList.MAXIFS.functionParameter.criteriaRange2.name",detail:"formula.functionList.MAXIFS.functionParameter.criteriaRange2.detail",example:"C1:C20",require:0,repeat:1},{name:"formula.functionList.MAXIFS.functionParameter.criteria2.name",detail:"formula.functionList.MAXIFS.functionParameter.criteria2.detail",example:'"<20"',require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.MEDIAN,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.MEDIAN.description",abstract:"formula.functionList.MEDIAN.abstract",functionParameter:[{name:"formula.functionList.MEDIAN.functionParameter.number1.name",detail:"formula.functionList.MEDIAN.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.MEDIAN.functionParameter.number2.name",detail:"formula.functionList.MEDIAN.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.MIN,aliasFunctionName:"formula.functionList.MIN.aliasFunctionName",functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.MIN.description",abstract:"formula.functionList.MIN.abstract",functionParameter:[{name:"formula.functionList.MIN.functionParameter.number1.name",detail:"formula.functionList.MIN.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.MIN.functionParameter.number2.name",detail:"formula.functionList.MIN.functionParameter.number2.detail",example:"B2:B10",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.MINA,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.MINA.description",abstract:"formula.functionList.MINA.abstract",functionParameter:[{name:"formula.functionList.MINA.functionParameter.value1.name",detail:"formula.functionList.MINA.functionParameter.value1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.MINA.functionParameter.value2.name",detail:"formula.functionList.MINA.functionParameter.value2.detail",example:"B1:B20",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.MINIFS,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.MINIFS.description",abstract:"formula.functionList.MINIFS.abstract",functionParameter:[{name:"formula.functionList.MINIFS.functionParameter.minRange.name",detail:"formula.functionList.MINIFS.functionParameter.minRange.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.MINIFS.functionParameter.criteriaRange1.name",detail:"formula.functionList.MINIFS.functionParameter.criteriaRange1.detail",example:"B1:B20",require:1,repeat:0},{name:"formula.functionList.MINIFS.functionParameter.criteria1.name",detail:"formula.functionList.MINIFS.functionParameter.criteria1.detail",example:'">10"',require:1,repeat:0},{name:"formula.functionList.MINIFS.functionParameter.criteriaRange2.name",detail:"formula.functionList.MINIFS.functionParameter.criteriaRange2.detail",example:"C1:C20",require:0,repeat:1},{name:"formula.functionList.MINIFS.functionParameter.criteria2.name",detail:"formula.functionList.MINIFS.functionParameter.criteria2.detail",example:'"<20"',require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.MODE_MULT,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.MODE_MULT.description",abstract:"formula.functionList.MODE_MULT.abstract",functionParameter:[{name:"formula.functionList.MODE_MULT.functionParameter.number1.name",detail:"formula.functionList.MODE_MULT.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.MODE_MULT.functionParameter.number2.name",detail:"formula.functionList.MODE_MULT.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.MODE_SNGL,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.MODE_SNGL.description",abstract:"formula.functionList.MODE_SNGL.abstract",functionParameter:[{name:"formula.functionList.MODE_SNGL.functionParameter.number1.name",detail:"formula.functionList.MODE_SNGL.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.MODE_SNGL.functionParameter.number2.name",detail:"formula.functionList.MODE_SNGL.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.NEGBINOM_DIST,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.NEGBINOM_DIST.description",abstract:"formula.functionList.NEGBINOM_DIST.abstract",functionParameter:[{name:"formula.functionList.NEGBINOM_DIST.functionParameter.number1.name",detail:"formula.functionList.NEGBINOM_DIST.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.NEGBINOM_DIST.functionParameter.number2.name",detail:"formula.functionList.NEGBINOM_DIST.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.NORM_DIST,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.NORM_DIST.description",abstract:"formula.functionList.NORM_DIST.abstract",functionParameter:[{name:"formula.functionList.NORM_DIST.functionParameter.x.name",detail:"formula.functionList.NORM_DIST.functionParameter.x.detail",example:"42",require:1,repeat:0},{name:"formula.functionList.NORM_DIST.functionParameter.mean.name",detail:"formula.functionList.NORM_DIST.functionParameter.mean.detail",example:"40",require:1,repeat:0},{name:"formula.functionList.NORM_DIST.functionParameter.standardDev.name",detail:"formula.functionList.NORM_DIST.functionParameter.standardDev.detail",example:"1.5",require:1,repeat:0},{name:"formula.functionList.NORM_DIST.functionParameter.cumulative.name",detail:"formula.functionList.NORM_DIST.functionParameter.cumulative.detail",example:"true",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.NORM_INV,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.NORM_INV.description",abstract:"formula.functionList.NORM_INV.abstract",functionParameter:[{name:"formula.functionList.NORM_INV.functionParameter.probability.name",detail:"formula.functionList.NORM_INV.functionParameter.probability.detail",example:"0.908789",require:1,repeat:0},{name:"formula.functionList.NORM_INV.functionParameter.mean.name",detail:"formula.functionList.NORM_INV.functionParameter.mean.detail",example:"40",require:1,repeat:0},{name:"formula.functionList.NORM_INV.functionParameter.standardDev.name",detail:"formula.functionList.NORM_INV.functionParameter.standardDev.detail",example:"1.5",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.NORM_S_DIST,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.NORM_S_DIST.description",abstract:"formula.functionList.NORM_S_DIST.abstract",functionParameter:[{name:"formula.functionList.NORM_S_DIST.functionParameter.z.name",detail:"formula.functionList.NORM_S_DIST.functionParameter.z.detail",example:"1.333333",require:1,repeat:0},{name:"formula.functionList.NORM_S_DIST.functionParameter.cumulative.name",detail:"formula.functionList.NORM_S_DIST.functionParameter.cumulative.detail",example:"true",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.NORM_S_INV,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.NORM_S_INV.description",abstract:"formula.functionList.NORM_S_INV.abstract",functionParameter:[{name:"formula.functionList.NORM_S_INV.functionParameter.probability.name",detail:"formula.functionList.NORM_S_INV.functionParameter.probability.detail",example:"0.908789",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.PEARSON,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.PEARSON.description",abstract:"formula.functionList.PEARSON.abstract",functionParameter:[{name:"formula.functionList.PEARSON.functionParameter.number1.name",detail:"formula.functionList.PEARSON.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.PEARSON.functionParameter.number2.name",detail:"formula.functionList.PEARSON.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.PERCENTILE_EXC,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.PERCENTILE_EXC.description",abstract:"formula.functionList.PERCENTILE_EXC.abstract",functionParameter:[{name:"formula.functionList.PERCENTILE_EXC.functionParameter.number1.name",detail:"formula.functionList.PERCENTILE_EXC.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.PERCENTILE_EXC.functionParameter.number2.name",detail:"formula.functionList.PERCENTILE_EXC.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.PERCENTILE_INC,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.PERCENTILE_INC.description",abstract:"formula.functionList.PERCENTILE_INC.abstract",functionParameter:[{name:"formula.functionList.PERCENTILE_INC.functionParameter.number1.name",detail:"formula.functionList.PERCENTILE_INC.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.PERCENTILE_INC.functionParameter.number2.name",detail:"formula.functionList.PERCENTILE_INC.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.PERCENTRANK_EXC,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.PERCENTRANK_EXC.description",abstract:"formula.functionList.PERCENTRANK_EXC.abstract",functionParameter:[{name:"formula.functionList.PERCENTRANK_EXC.functionParameter.number1.name",detail:"formula.functionList.PERCENTRANK_EXC.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.PERCENTRANK_EXC.functionParameter.number2.name",detail:"formula.functionList.PERCENTRANK_EXC.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.PERCENTRANK_INC,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.PERCENTRANK_INC.description",abstract:"formula.functionList.PERCENTRANK_INC.abstract",functionParameter:[{name:"formula.functionList.PERCENTRANK_INC.functionParameter.number1.name",detail:"formula.functionList.PERCENTRANK_INC.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.PERCENTRANK_INC.functionParameter.number2.name",detail:"formula.functionList.PERCENTRANK_INC.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.PERMUT,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.PERMUT.description",abstract:"formula.functionList.PERMUT.abstract",functionParameter:[{name:"formula.functionList.PERMUT.functionParameter.number1.name",detail:"formula.functionList.PERMUT.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.PERMUT.functionParameter.number2.name",detail:"formula.functionList.PERMUT.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.PERMUTATIONA,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.PERMUTATIONA.description",abstract:"formula.functionList.PERMUTATIONA.abstract",functionParameter:[{name:"formula.functionList.PERMUTATIONA.functionParameter.number1.name",detail:"formula.functionList.PERMUTATIONA.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.PERMUTATIONA.functionParameter.number2.name",detail:"formula.functionList.PERMUTATIONA.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.PHI,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.PHI.description",abstract:"formula.functionList.PHI.abstract",functionParameter:[{name:"formula.functionList.PHI.functionParameter.number1.name",detail:"formula.functionList.PHI.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.PHI.functionParameter.number2.name",detail:"formula.functionList.PHI.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.POISSON_DIST,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.POISSON_DIST.description",abstract:"formula.functionList.POISSON_DIST.abstract",functionParameter:[{name:"formula.functionList.POISSON_DIST.functionParameter.number1.name",detail:"formula.functionList.POISSON_DIST.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.POISSON_DIST.functionParameter.number2.name",detail:"formula.functionList.POISSON_DIST.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.PROB,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.PROB.description",abstract:"formula.functionList.PROB.abstract",functionParameter:[{name:"formula.functionList.PROB.functionParameter.number1.name",detail:"formula.functionList.PROB.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.PROB.functionParameter.number2.name",detail:"formula.functionList.PROB.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.QUARTILE_EXC,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.QUARTILE_EXC.description",abstract:"formula.functionList.QUARTILE_EXC.abstract",functionParameter:[{name:"formula.functionList.QUARTILE_EXC.functionParameter.number1.name",detail:"formula.functionList.QUARTILE_EXC.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.QUARTILE_EXC.functionParameter.number2.name",detail:"formula.functionList.QUARTILE_EXC.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.QUARTILE_INC,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.QUARTILE_INC.description",abstract:"formula.functionList.QUARTILE_INC.abstract",functionParameter:[{name:"formula.functionList.QUARTILE_INC.functionParameter.number1.name",detail:"formula.functionList.QUARTILE_INC.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.QUARTILE_INC.functionParameter.number2.name",detail:"formula.functionList.QUARTILE_INC.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.RANK_AVG,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.RANK_AVG.description",abstract:"formula.functionList.RANK_AVG.abstract",functionParameter:[{name:"formula.functionList.RANK_AVG.functionParameter.number.name",detail:"formula.functionList.RANK_AVG.functionParameter.number.detail",example:"A3",require:1,repeat:0},{name:"formula.functionList.RANK_AVG.functionParameter.ref.name",detail:"formula.functionList.RANK_AVG.functionParameter.ref.detail",example:"A2:A6",require:1,repeat:0},{name:"formula.functionList.RANK_AVG.functionParameter.order.name",detail:"formula.functionList.RANK_AVG.functionParameter.order.detail",example:"1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.RANK_EQ,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.RANK_EQ.description",abstract:"formula.functionList.RANK_EQ.abstract",functionParameter:[{name:"formula.functionList.RANK_EQ.functionParameter.number.name",detail:"formula.functionList.RANK_EQ.functionParameter.number.detail",example:"A3",require:1,repeat:0},{name:"formula.functionList.RANK_EQ.functionParameter.ref.name",detail:"formula.functionList.RANK_EQ.functionParameter.ref.detail",example:"A2:A6",require:1,repeat:0},{name:"formula.functionList.RANK_EQ.functionParameter.order.name",detail:"formula.functionList.RANK_EQ.functionParameter.order.detail",example:"1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.RSQ,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.RSQ.description",abstract:"formula.functionList.RSQ.abstract",functionParameter:[{name:"formula.functionList.RSQ.functionParameter.number1.name",detail:"formula.functionList.RSQ.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.RSQ.functionParameter.number2.name",detail:"formula.functionList.RSQ.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.SKEW,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.SKEW.description",abstract:"formula.functionList.SKEW.abstract",functionParameter:[{name:"formula.functionList.SKEW.functionParameter.number1.name",detail:"formula.functionList.SKEW.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.SKEW.functionParameter.number2.name",detail:"formula.functionList.SKEW.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.SKEW_P,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.SKEW_P.description",abstract:"formula.functionList.SKEW_P.abstract",functionParameter:[{name:"formula.functionList.SKEW_P.functionParameter.number1.name",detail:"formula.functionList.SKEW_P.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.SKEW_P.functionParameter.number2.name",detail:"formula.functionList.SKEW_P.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.SLOPE,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.SLOPE.description",abstract:"formula.functionList.SLOPE.abstract",functionParameter:[{name:"formula.functionList.SLOPE.functionParameter.number1.name",detail:"formula.functionList.SLOPE.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.SLOPE.functionParameter.number2.name",detail:"formula.functionList.SLOPE.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.SMALL,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.SMALL.description",abstract:"formula.functionList.SMALL.abstract",functionParameter:[{name:"formula.functionList.SMALL.functionParameter.number1.name",detail:"formula.functionList.SMALL.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.SMALL.functionParameter.number2.name",detail:"formula.functionList.SMALL.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.STANDARDIZE,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.STANDARDIZE.description",abstract:"formula.functionList.STANDARDIZE.abstract",functionParameter:[{name:"formula.functionList.STANDARDIZE.functionParameter.number1.name",detail:"formula.functionList.STANDARDIZE.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.STANDARDIZE.functionParameter.number2.name",detail:"formula.functionList.STANDARDIZE.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.STDEV_P,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.STDEV_P.description",abstract:"formula.functionList.STDEV_P.abstract",functionParameter:[{name:"formula.functionList.STDEV_P.functionParameter.number1.name",detail:"formula.functionList.STDEV_P.functionParameter.number1.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.STDEV_P.functionParameter.number2.name",detail:"formula.functionList.STDEV_P.functionParameter.number2.detail",example:"2",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.STDEV_S,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.STDEV_S.description",abstract:"formula.functionList.STDEV_S.abstract",functionParameter:[{name:"formula.functionList.STDEV_S.functionParameter.number1.name",detail:"formula.functionList.STDEV_S.functionParameter.number1.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.STDEV_S.functionParameter.number2.name",detail:"formula.functionList.STDEV_S.functionParameter.number2.detail",example:"2",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.STDEVA,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.STDEVA.description",abstract:"formula.functionList.STDEVA.abstract",functionParameter:[{name:"formula.functionList.STDEVA.functionParameter.value1.name",detail:"formula.functionList.STDEVA.functionParameter.value1.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.STDEVA.functionParameter.value2.name",detail:"formula.functionList.STDEVA.functionParameter.value2.detail",example:"2",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.STDEVPA,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.STDEVPA.description",abstract:"formula.functionList.STDEVPA.abstract",functionParameter:[{name:"formula.functionList.STDEVPA.functionParameter.value1.name",detail:"formula.functionList.STDEVPA.functionParameter.value1.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.STDEVPA.functionParameter.value2.name",detail:"formula.functionList.STDEVPA.functionParameter.value2.detail",example:"2",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.STEYX,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.STEYX.description",abstract:"formula.functionList.STEYX.abstract",functionParameter:[{name:"formula.functionList.STEYX.functionParameter.number1.name",detail:"formula.functionList.STEYX.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.STEYX.functionParameter.number2.name",detail:"formula.functionList.STEYX.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.T_DIST,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.T_DIST.description",abstract:"formula.functionList.T_DIST.abstract",functionParameter:[{name:"formula.functionList.T_DIST.functionParameter.number1.name",detail:"formula.functionList.T_DIST.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.T_DIST.functionParameter.number2.name",detail:"formula.functionList.T_DIST.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.T_DIST_2T,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.T_DIST_2T.description",abstract:"formula.functionList.T_DIST_2T.abstract",functionParameter:[{name:"formula.functionList.T_DIST_2T.functionParameter.number1.name",detail:"formula.functionList.T_DIST_2T.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.T_DIST_2T.functionParameter.number2.name",detail:"formula.functionList.T_DIST_2T.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.T_DIST_RT,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.T_DIST_RT.description",abstract:"formula.functionList.T_DIST_RT.abstract",functionParameter:[{name:"formula.functionList.T_DIST_RT.functionParameter.number1.name",detail:"formula.functionList.T_DIST_RT.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.T_DIST_RT.functionParameter.number2.name",detail:"formula.functionList.T_DIST_RT.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.T_INV,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.T_INV.description",abstract:"formula.functionList.T_INV.abstract",functionParameter:[{name:"formula.functionList.T_INV.functionParameter.number1.name",detail:"formula.functionList.T_INV.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.T_INV.functionParameter.number2.name",detail:"formula.functionList.T_INV.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.T_INV_2T,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.T_INV_2T.description",abstract:"formula.functionList.T_INV_2T.abstract",functionParameter:[{name:"formula.functionList.T_INV_2T.functionParameter.number1.name",detail:"formula.functionList.T_INV_2T.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.T_INV_2T.functionParameter.number2.name",detail:"formula.functionList.T_INV_2T.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.T_TEST,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.T_TEST.description",abstract:"formula.functionList.T_TEST.abstract",functionParameter:[{name:"formula.functionList.T_TEST.functionParameter.number1.name",detail:"formula.functionList.T_TEST.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.T_TEST.functionParameter.number2.name",detail:"formula.functionList.T_TEST.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.TREND,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.TREND.description",abstract:"formula.functionList.TREND.abstract",functionParameter:[{name:"formula.functionList.TREND.functionParameter.number1.name",detail:"formula.functionList.TREND.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.TREND.functionParameter.number2.name",detail:"formula.functionList.TREND.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.TRIMMEAN,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.TRIMMEAN.description",abstract:"formula.functionList.TRIMMEAN.abstract",functionParameter:[{name:"formula.functionList.TRIMMEAN.functionParameter.number1.name",detail:"formula.functionList.TRIMMEAN.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.TRIMMEAN.functionParameter.number2.name",detail:"formula.functionList.TRIMMEAN.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.VAR_P,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.VAR_P.description",abstract:"formula.functionList.VAR_P.abstract",functionParameter:[{name:"formula.functionList.VAR_P.functionParameter.number1.name",detail:"formula.functionList.VAR_P.functionParameter.number1.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.VAR_P.functionParameter.number2.name",detail:"formula.functionList.VAR_P.functionParameter.number2.detail",example:"2",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.VAR_S,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.VAR_S.description",abstract:"formula.functionList.VAR_S.abstract",functionParameter:[{name:"formula.functionList.VAR_S.functionParameter.number1.name",detail:"formula.functionList.VAR_S.functionParameter.number1.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.VAR_S.functionParameter.number2.name",detail:"formula.functionList.VAR_S.functionParameter.number2.detail",example:"2",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.VARA,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.VARA.description",abstract:"formula.functionList.VARA.abstract",functionParameter:[{name:"formula.functionList.VARA.functionParameter.value1.name",detail:"formula.functionList.VARA.functionParameter.value1.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.VARA.functionParameter.value2.name",detail:"formula.functionList.VARA.functionParameter.value2.detail",example:"2",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.VARPA,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.VARPA.description",abstract:"formula.functionList.VARPA.abstract",functionParameter:[{name:"formula.functionList.VARPA.functionParameter.value1.name",detail:"formula.functionList.VARPA.functionParameter.value1.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.VARPA.functionParameter.value2.name",detail:"formula.functionList.VARPA.functionParameter.value2.detail",example:"2",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.WEIBULL_DIST,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.WEIBULL_DIST.description",abstract:"formula.functionList.WEIBULL_DIST.abstract",functionParameter:[{name:"formula.functionList.WEIBULL_DIST.functionParameter.number1.name",detail:"formula.functionList.WEIBULL_DIST.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.WEIBULL_DIST.functionParameter.number2.name",detail:"formula.functionList.WEIBULL_DIST.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_STATISTICAL.Z_TEST,functionType:engineFormula.FunctionType.Statistical,description:"formula.functionList.Z_TEST.description",abstract:"formula.functionList.Z_TEST.abstract",functionParameter:[{name:"formula.functionList.Z_TEST.functionParameter.number1.name",detail:"formula.functionList.Z_TEST.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.Z_TEST.functionParameter.number2.name",detail:"formula.functionList.Z_TEST.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]}],FUNCTION_LIST_TEXT=[{functionName:engineFormula.FUNCTION_NAMES_TEXT.ASC,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.ASC.description",abstract:"formula.functionList.ASC.abstract",functionParameter:[{name:"formula.functionList.ASC.functionParameter.number1.name",detail:"formula.functionList.ASC.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.ASC.functionParameter.number2.name",detail:"formula.functionList.ASC.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.ARRAYTOTEXT,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.ARRAYTOTEXT.description",abstract:"formula.functionList.ARRAYTOTEXT.abstract",functionParameter:[{name:"formula.functionList.ARRAYTOTEXT.functionParameter.number1.name",detail:"formula.functionList.ARRAYTOTEXT.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.ARRAYTOTEXT.functionParameter.number2.name",detail:"formula.functionList.ARRAYTOTEXT.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.BAHTTEXT,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.BAHTTEXT.description",abstract:"formula.functionList.BAHTTEXT.abstract",functionParameter:[{name:"formula.functionList.BAHTTEXT.functionParameter.number1.name",detail:"formula.functionList.BAHTTEXT.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.BAHTTEXT.functionParameter.number2.name",detail:"formula.functionList.BAHTTEXT.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.CHAR,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.CHAR.description",abstract:"formula.functionList.CHAR.abstract",functionParameter:[{name:"formula.functionList.CHAR.functionParameter.number1.name",detail:"formula.functionList.CHAR.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.CHAR.functionParameter.number2.name",detail:"formula.functionList.CHAR.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.CLEAN,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.CLEAN.description",abstract:"formula.functionList.CLEAN.abstract",functionParameter:[{name:"formula.functionList.CLEAN.functionParameter.number1.name",detail:"formula.functionList.CLEAN.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.CLEAN.functionParameter.number2.name",detail:"formula.functionList.CLEAN.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.CODE,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.CODE.description",abstract:"formula.functionList.CODE.abstract",functionParameter:[{name:"formula.functionList.CODE.functionParameter.number1.name",detail:"formula.functionList.CODE.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.CODE.functionParameter.number2.name",detail:"formula.functionList.CODE.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.CONCAT,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.CONCAT.description",abstract:"formula.functionList.CONCAT.abstract",functionParameter:[{name:"formula.functionList.CONCAT.functionParameter.text1.name",detail:"formula.functionList.CONCAT.functionParameter.text1.detail",example:'"Hello"',require:1,repeat:0},{name:"formula.functionList.CONCAT.functionParameter.text2.name",detail:"formula.functionList.CONCAT.functionParameter.text2.detail",example:'"Univer"',require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.CONCATENATE,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.CONCATENATE.description",abstract:"formula.functionList.CONCATENATE.abstract",functionParameter:[{name:"formula.functionList.CONCATENATE.functionParameter.text1.name",detail:"formula.functionList.CONCATENATE.functionParameter.text1.detail",example:"A1",require:1,repeat:0},{name:"formula.functionList.CONCATENATE.functionParameter.text2.name",detail:"formula.functionList.CONCATENATE.functionParameter.text2.detail",example:"A2",require:0,repeat:1}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.DBCS,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.DBCS.description",abstract:"formula.functionList.DBCS.abstract",functionParameter:[{name:"formula.functionList.DBCS.functionParameter.number1.name",detail:"formula.functionList.DBCS.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.DBCS.functionParameter.number2.name",detail:"formula.functionList.DBCS.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.DOLLAR,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.DOLLAR.description",abstract:"formula.functionList.DOLLAR.abstract",functionParameter:[{name:"formula.functionList.DOLLAR.functionParameter.number1.name",detail:"formula.functionList.DOLLAR.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.DOLLAR.functionParameter.number2.name",detail:"formula.functionList.DOLLAR.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.EXACT,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.EXACT.description",abstract:"formula.functionList.EXACT.abstract",functionParameter:[{name:"formula.functionList.EXACT.functionParameter.number1.name",detail:"formula.functionList.EXACT.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.EXACT.functionParameter.number2.name",detail:"formula.functionList.EXACT.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.FIND,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.FIND.description",abstract:"formula.functionList.FIND.abstract",functionParameter:[{name:"formula.functionList.FIND.functionParameter.number1.name",detail:"formula.functionList.FIND.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.FIND.functionParameter.number2.name",detail:"formula.functionList.FIND.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.FINDB,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.FINDB.description",abstract:"formula.functionList.FINDB.abstract",functionParameter:[{name:"formula.functionList.FINDB.functionParameter.number1.name",detail:"formula.functionList.FINDB.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.FINDB.functionParameter.number2.name",detail:"formula.functionList.FINDB.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.FIXED,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.FIXED.description",abstract:"formula.functionList.FIXED.abstract",functionParameter:[{name:"formula.functionList.FIXED.functionParameter.number1.name",detail:"formula.functionList.FIXED.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.FIXED.functionParameter.number2.name",detail:"formula.functionList.FIXED.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.LEFT,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.LEFT.description",abstract:"formula.functionList.LEFT.abstract",functionParameter:[{name:"formula.functionList.LEFT.functionParameter.number1.name",detail:"formula.functionList.LEFT.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.LEFT.functionParameter.number2.name",detail:"formula.functionList.LEFT.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.LEFTB,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.LEFTB.description",abstract:"formula.functionList.LEFTB.abstract",functionParameter:[{name:"formula.functionList.LEFTB.functionParameter.text.name",detail:"formula.functionList.LEFTB.functionParameter.text.detail",example:'"Hello Univer"',require:1,repeat:0},{name:"formula.functionList.LEFTB.functionParameter.numBytes.name",detail:"formula.functionList.LEFTB.functionParameter.numBytes.detail",example:"1",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.LEN,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.LEN.description",abstract:"formula.functionList.LEN.abstract",functionParameter:[{name:"formula.functionList.LEN.functionParameter.text.name",detail:"formula.functionList.LEN.functionParameter.text.detail",example:'"Univer"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.LENB,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.LENB.description",abstract:"formula.functionList.LENB.abstract",functionParameter:[{name:"formula.functionList.LENB.functionParameter.text.name",detail:"formula.functionList.LENB.functionParameter.text.detail",example:'"Univer"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.LOWER,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.LOWER.description",abstract:"formula.functionList.LOWER.abstract",functionParameter:[{name:"formula.functionList.LOWER.functionParameter.text.name",detail:"formula.functionList.LOWER.functionParameter.text.detail",example:'"Univer"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.MID,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.MID.description",abstract:"formula.functionList.MID.abstract",functionParameter:[{name:"formula.functionList.MID.functionParameter.text.name",detail:"formula.functionList.MID.functionParameter.text.detail",example:'"Hello Univer"',require:1,repeat:0},{name:"formula.functionList.MID.functionParameter.startNum.name",detail:"formula.functionList.MID.functionParameter.startNum.detail",example:"1",require:1,repeat:0},{name:"formula.functionList.MID.functionParameter.numChars.name",detail:"formula.functionList.MID.functionParameter.numChars.detail",example:"1",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.MIDB,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.MIDB.description",abstract:"formula.functionList.MIDB.abstract",functionParameter:[{name:"formula.functionList.MIDB.functionParameter.number1.name",detail:"formula.functionList.MIDB.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.MIDB.functionParameter.number2.name",detail:"formula.functionList.MIDB.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.NUMBERVALUE,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.NUMBERVALUE.description",abstract:"formula.functionList.NUMBERVALUE.abstract",functionParameter:[{name:"formula.functionList.NUMBERVALUE.functionParameter.number1.name",detail:"formula.functionList.NUMBERVALUE.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.NUMBERVALUE.functionParameter.number2.name",detail:"formula.functionList.NUMBERVALUE.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.PHONETIC,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.PHONETIC.description",abstract:"formula.functionList.PHONETIC.abstract",functionParameter:[{name:"formula.functionList.PHONETIC.functionParameter.number1.name",detail:"formula.functionList.PHONETIC.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.PHONETIC.functionParameter.number2.name",detail:"formula.functionList.PHONETIC.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.PROPER,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.PROPER.description",abstract:"formula.functionList.PROPER.abstract",functionParameter:[{name:"formula.functionList.PROPER.functionParameter.number1.name",detail:"formula.functionList.PROPER.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.PROPER.functionParameter.number2.name",detail:"formula.functionList.PROPER.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.REPLACE,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.REPLACE.description",abstract:"formula.functionList.REPLACE.abstract",functionParameter:[{name:"formula.functionList.REPLACE.functionParameter.number1.name",detail:"formula.functionList.REPLACE.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.REPLACE.functionParameter.number2.name",detail:"formula.functionList.REPLACE.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.REPLACEB,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.REPLACEB.description",abstract:"formula.functionList.REPLACEB.abstract",functionParameter:[{name:"formula.functionList.REPLACEB.functionParameter.number1.name",detail:"formula.functionList.REPLACEB.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.REPLACEB.functionParameter.number2.name",detail:"formula.functionList.REPLACEB.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.REPT,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.REPT.description",abstract:"formula.functionList.REPT.abstract",functionParameter:[{name:"formula.functionList.REPT.functionParameter.text.name",detail:"formula.functionList.REPT.functionParameter.text.detail",example:'"*-"',require:1,repeat:0},{name:"formula.functionList.REPT.functionParameter.numberTimes.name",detail:"formula.functionList.REPT.functionParameter.numberTimes.detail",example:"3",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.RIGHT,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.RIGHT.description",abstract:"formula.functionList.RIGHT.abstract",functionParameter:[{name:"formula.functionList.RIGHT.functionParameter.number1.name",detail:"formula.functionList.RIGHT.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.RIGHT.functionParameter.number2.name",detail:"formula.functionList.RIGHT.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.RIGHTB,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.RIGHTB.description",abstract:"formula.functionList.RIGHTB.abstract",functionParameter:[{name:"formula.functionList.RIGHTB.functionParameter.number1.name",detail:"formula.functionList.RIGHTB.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.RIGHTB.functionParameter.number2.name",detail:"formula.functionList.RIGHTB.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.SEARCH,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.SEARCH.description",abstract:"formula.functionList.SEARCH.abstract",functionParameter:[{name:"formula.functionList.SEARCH.functionParameter.number1.name",detail:"formula.functionList.SEARCH.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.SEARCH.functionParameter.number2.name",detail:"formula.functionList.SEARCH.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.SEARCHB,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.SEARCHB.description",abstract:"formula.functionList.SEARCHB.abstract",functionParameter:[{name:"formula.functionList.SEARCHB.functionParameter.number1.name",detail:"formula.functionList.SEARCHB.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.SEARCHB.functionParameter.number2.name",detail:"formula.functionList.SEARCHB.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.SUBSTITUTE,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.SUBSTITUTE.description",abstract:"formula.functionList.SUBSTITUTE.abstract",functionParameter:[{name:"formula.functionList.SUBSTITUTE.functionParameter.number1.name",detail:"formula.functionList.SUBSTITUTE.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.SUBSTITUTE.functionParameter.number2.name",detail:"formula.functionList.SUBSTITUTE.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.T,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.T.description",abstract:"formula.functionList.T.abstract",functionParameter:[{name:"formula.functionList.T.functionParameter.number1.name",detail:"formula.functionList.T.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.T.functionParameter.number2.name",detail:"formula.functionList.T.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.TEXT,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.TEXT.description",abstract:"formula.functionList.TEXT.abstract",functionParameter:[{name:"formula.functionList.TEXT.functionParameter.value.name",detail:"formula.functionList.TEXT.functionParameter.value.detail",example:"1.23",require:1,repeat:0},{name:"formula.functionList.TEXT.functionParameter.formatText.name",detail:"formula.functionList.TEXT.functionParameter.formatText.detail",example:'"$0.00"',require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.TEXTAFTER,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.TEXTAFTER.description",abstract:"formula.functionList.TEXTAFTER.abstract",functionParameter:[{name:"formula.functionList.TEXTAFTER.functionParameter.text.name",detail:"formula.functionList.TEXTAFTER.functionParameter.text.detail",example:'"Red riding hood’s, red hood"',require:1,repeat:0},{name:"formula.functionList.TEXTAFTER.functionParameter.delimiter.name",detail:"formula.functionList.TEXTAFTER.functionParameter.delimiter.detail",example:'"hood"',require:1,repeat:0},{name:"formula.functionList.TEXTAFTER.functionParameter.instanceNum.name",detail:"formula.functionList.TEXTAFTER.functionParameter.instanceNum.detail",example:"1",require:0,repeat:0},{name:"formula.functionList.TEXTAFTER.functionParameter.matchMode.name",detail:"formula.functionList.TEXTAFTER.functionParameter.matchMode.detail",example:"1",require:0,repeat:0},{name:"formula.functionList.TEXTAFTER.functionParameter.matchEnd.name",detail:"formula.functionList.TEXTAFTER.functionParameter.matchEnd.detail",example:"0",require:0,repeat:0},{name:"formula.functionList.TEXTAFTER.functionParameter.ifNotFound.name",detail:"formula.functionList.TEXTAFTER.functionParameter.ifNotFound.detail",example:'"not found"',require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.TEXTBEFORE,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.TEXTBEFORE.description",abstract:"formula.functionList.TEXTBEFORE.abstract",functionParameter:[{name:"formula.functionList.TEXTBEFORE.functionParameter.text.name",detail:"formula.functionList.TEXTBEFORE.functionParameter.text.detail",example:'"Red riding hood’s, red hood"',require:1,repeat:0},{name:"formula.functionList.TEXTBEFORE.functionParameter.delimiter.name",detail:"formula.functionList.TEXTBEFORE.functionParameter.delimiter.detail",example:'"hood"',require:1,repeat:0},{name:"formula.functionList.TEXTBEFORE.functionParameter.instanceNum.name",detail:"formula.functionList.TEXTBEFORE.functionParameter.instanceNum.detail",example:"1",require:0,repeat:0},{name:"formula.functionList.TEXTBEFORE.functionParameter.matchMode.name",detail:"formula.functionList.TEXTBEFORE.functionParameter.matchMode.detail",example:"1",require:0,repeat:0},{name:"formula.functionList.TEXTBEFORE.functionParameter.matchEnd.name",detail:"formula.functionList.TEXTBEFORE.functionParameter.matchEnd.detail",example:"0",require:0,repeat:0},{name:"formula.functionList.TEXTBEFORE.functionParameter.ifNotFound.name",detail:"formula.functionList.TEXTBEFORE.functionParameter.ifNotFound.detail",example:'"not found"',require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.TEXTJOIN,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.TEXTJOIN.description",abstract:"formula.functionList.TEXTJOIN.abstract",functionParameter:[{name:"formula.functionList.TEXTJOIN.functionParameter.number1.name",detail:"formula.functionList.TEXTJOIN.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.TEXTJOIN.functionParameter.number2.name",detail:"formula.functionList.TEXTJOIN.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.TEXTSPLIT,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.TEXTSPLIT.description",abstract:"formula.functionList.TEXTSPLIT.abstract",functionParameter:[{name:"formula.functionList.TEXTSPLIT.functionParameter.text.name",detail:"formula.functionList.TEXTSPLIT.functionParameter.text.detail",example:"{1,2,3;4,5,6}",require:1,repeat:0},{name:"formula.functionList.TEXTSPLIT.functionParameter.colDelimiter.name",detail:"formula.functionList.TEXTSPLIT.functionParameter.colDelimiter.detail",example:'","',require:1,repeat:0},{name:"formula.functionList.TEXTSPLIT.functionParameter.rowDelimiter.name",detail:"formula.functionList.TEXTSPLIT.functionParameter.rowDelimiter.detail",example:'";"',require:0,repeat:0},{name:"formula.functionList.TEXTSPLIT.functionParameter.ignoreEmpty.name",detail:"formula.functionList.TEXTSPLIT.functionParameter.ignoreEmpty.detail",example:"",require:0,repeat:0},{name:"formula.functionList.TEXTSPLIT.functionParameter.matchMode.name",detail:"formula.functionList.TEXTSPLIT.functionParameter.matchMode.detail",example:"",require:0,repeat:0},{name:"formula.functionList.TEXTSPLIT.functionParameter.padWith.name",detail:"formula.functionList.TEXTSPLIT.functionParameter.padWith.detail",example:"",require:0,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.TRIM,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.TRIM.description",abstract:"formula.functionList.TRIM.abstract",functionParameter:[{name:"formula.functionList.TRIM.functionParameter.number1.name",detail:"formula.functionList.TRIM.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.TRIM.functionParameter.number2.name",detail:"formula.functionList.TRIM.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.UNICHAR,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.UNICHAR.description",abstract:"formula.functionList.UNICHAR.abstract",functionParameter:[{name:"formula.functionList.UNICHAR.functionParameter.number1.name",detail:"formula.functionList.UNICHAR.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.UNICHAR.functionParameter.number2.name",detail:"formula.functionList.UNICHAR.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.UNICODE,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.UNICODE.description",abstract:"formula.functionList.UNICODE.abstract",functionParameter:[{name:"formula.functionList.UNICODE.functionParameter.number1.name",detail:"formula.functionList.UNICODE.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.UNICODE.functionParameter.number2.name",detail:"formula.functionList.UNICODE.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.UPPER,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.UPPER.description",abstract:"formula.functionList.UPPER.abstract",functionParameter:[{name:"formula.functionList.UPPER.functionParameter.number1.name",detail:"formula.functionList.UPPER.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.UPPER.functionParameter.number2.name",detail:"formula.functionList.UPPER.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.VALUE,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.VALUE.description",abstract:"formula.functionList.VALUE.abstract",functionParameter:[{name:"formula.functionList.VALUE.functionParameter.number1.name",detail:"formula.functionList.VALUE.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.VALUE.functionParameter.number2.name",detail:"formula.functionList.VALUE.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.VALUETOTEXT,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.VALUETOTEXT.description",abstract:"formula.functionList.VALUETOTEXT.abstract",functionParameter:[{name:"formula.functionList.VALUETOTEXT.functionParameter.number1.name",detail:"formula.functionList.VALUETOTEXT.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.VALUETOTEXT.functionParameter.number2.name",detail:"formula.functionList.VALUETOTEXT.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.CALL,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.CALL.description",abstract:"formula.functionList.CALL.abstract",functionParameter:[{name:"formula.functionList.CALL.functionParameter.number1.name",detail:"formula.functionList.CALL.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.CALL.functionParameter.number2.name",detail:"formula.functionList.CALL.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.EUROCONVERT,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.EUROCONVERT.description",abstract:"formula.functionList.EUROCONVERT.abstract",functionParameter:[{name:"formula.functionList.EUROCONVERT.functionParameter.number1.name",detail:"formula.functionList.EUROCONVERT.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.EUROCONVERT.functionParameter.number2.name",detail:"formula.functionList.EUROCONVERT.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_TEXT.REGISTER_ID,functionType:engineFormula.FunctionType.Text,description:"formula.functionList.REGISTER_ID.description",abstract:"formula.functionList.REGISTER_ID.abstract",functionParameter:[{name:"formula.functionList.REGISTER_ID.functionParameter.number1.name",detail:"formula.functionList.REGISTER_ID.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.REGISTER_ID.functionParameter.number2.name",detail:"formula.functionList.REGISTER_ID.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]}],FUNCTION_LIST_UNIVER=[],FUNCTION_LIST_WEB=[{functionName:engineFormula.FUNCTION_NAMES_WEB.ENCODEURL,functionType:engineFormula.FunctionType.Web,description:"formula.functionList.ENCODEURL.description",abstract:"formula.functionList.ENCODEURL.abstract",functionParameter:[{name:"formula.functionList.ENCODEURL.functionParameter.number1.name",detail:"formula.functionList.ENCODEURL.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.ENCODEURL.functionParameter.number2.name",detail:"formula.functionList.ENCODEURL.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_WEB.FILTERXML,functionType:engineFormula.FunctionType.Web,description:"formula.functionList.FILTERXML.description",abstract:"formula.functionList.FILTERXML.abstract",functionParameter:[{name:"formula.functionList.FILTERXML.functionParameter.number1.name",detail:"formula.functionList.FILTERXML.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.FILTERXML.functionParameter.number2.name",detail:"formula.functionList.FILTERXML.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]},{functionName:engineFormula.FUNCTION_NAMES_WEB.WEBSERVICE,functionType:engineFormula.FunctionType.Web,description:"formula.functionList.WEBSERVICE.description",abstract:"formula.functionList.WEBSERVICE.abstract",functionParameter:[{name:"formula.functionList.WEBSERVICE.functionParameter.number1.name",detail:"formula.functionList.WEBSERVICE.functionParameter.number1.detail",example:"A1:A20",require:1,repeat:0},{name:"formula.functionList.WEBSERVICE.functionParameter.number2.name",detail:"formula.functionList.WEBSERVICE.functionParameter.number2.detail",example:"A1:A20",require:1,repeat:0}]}],FUNCTION_LIST=[...FUNCTION_LIST_FINANCIAL,...FUNCTION_LIST_DATE,...FUNCTION_LIST_MATH,...FUNCTION_LIST_STATISTICAL,...FUNCTION_LIST_LOOKUP,...FUNCTION_LIST_DATABASE,...FUNCTION_LIST_TEXT,...FUNCTION_LIST_LOGICAL,...FUNCTION_LIST_INFORMATION,...FUNCTION_LIST_ENGINEERING,...FUNCTION_LIST_CUBE,...FUNCTION_LIST_COMPATIBILITY,...FUNCTION_LIST_WEB,...FUNCTION_LIST_ARRAY,...FUNCTION_LIST_UNIVER];var __defProp$d=Object.defineProperty,__getOwnPropDesc$d=Object.getOwnPropertyDescriptor,__decorateClass$d=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$d(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$d(target,key,result),result},"__decorateClass$d"),__decorateParam$d=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$d");const IDescriptionService=core.createIdentifier("formula-ui.description-service");var _a7;exports.DescriptionService=(_a7=class{constructor(_functionService,_localeService,_configService){__publicField(this,"_descriptions",[]);this._functionService=_functionService,this._localeService=_localeService,this._configService=_configService,this._initialize()}dispose(){this._localeService.localeChanged$.complete()}getDescriptions(){return this._functionService.getDescriptions()}hasFunction(searchText){return this._functionService.getDescriptions().get(searchText.toLocaleUpperCase())!==void 0}getFunctionInfo(searchText){return this._functionService.getDescriptions().get(searchText.toLocaleUpperCase())}getSearchListByName(searchText){const searchList=[],functionList=this._functionService.getDescriptions(),_searchText=searchText.toLocaleUpperCase().trim();return functionList.forEach(item=>{const{functionName,abstract,functionType}=item;functionName.toLocaleUpperCase().indexOf(_searchText)>-1&&functionType!==engineFormula.FunctionType.DefinedName&&searchList.push({name:functionName,desc:abstract})}),searchList}getSearchListByNameFirstLetter(searchText){const searchList=[],functionList=this._functionService.getDescriptions(),_searchText=searchText.toLocaleUpperCase().trim();return functionList.forEach(item=>{const{functionName,abstract}=item;functionName.toLocaleUpperCase().indexOf(_searchText)===0&&searchList.push({name:functionName,desc:abstract})}),searchList}getSearchListByType(type){const searchList=[];return this._functionService.getDescriptions().forEach(item=>{const{functionName,functionType,abstract}=item;(functionType===type||type===-1)&&functionType!==engineFormula.FunctionType.DefinedName&&searchList.push({name:functionName,desc:abstract})}),searchList}registerDescriptions(description){return this._descriptions=this._descriptions.concat(description),this._registerDescriptions(),core.toDisposable(()=>{const functionNames=description.map(item=>item.functionName);this.unregisterDescriptions(functionNames)})}unregisterDescriptions(functionNames){this._descriptions=this._descriptions.filter(item=>!functionNames.includes(item.functionName)),this._functionService.unregisterDescriptions(...functionNames)}hasDescription(name){return this._descriptions.some(item=>item.functionName===name)}hasDefinedNameDescription(name){return this._descriptions.some(item=>item.functionName===name&&item.functionType===engineFormula.FunctionType.DefinedName)}isFormulaDefinedName(name){const items=this._descriptions.filter(item=>item.functionName===name&&item.functionType===engineFormula.FunctionType.DefinedName);if(items.length===0)return!1;const token=items[0].description;return!engineFormula.isReferenceStrings(token)}_initialize(){this._localeService.localeChanged$.subscribe(()=>{this._registerDescriptions()}),this._initDescription(),this._registerDescriptions()}_initDescription(){var _a23;const functions=[...engineFormula.functionArray,...engineFormula.functionCompatibility,...engineFormula.functionCube,...engineFormula.functionDatabase,...engineFormula.functionDate,...engineFormula.functionEngineering,...engineFormula.functionFinancial,...engineFormula.functionInformation,...engineFormula.functionLogical,...engineFormula.functionLookup,...engineFormula.functionMath,...engineFormula.functionMeta,...engineFormula.functionStatistical,...engineFormula.functionText,...engineFormula.functionUniver,...engineFormula.functionWeb].map(item=>item[1]),filterFunctionList=FUNCTION_LIST.filter(item=>functions.includes(item.functionName)),config=this._configService.getConfig(PLUGIN_CONFIG_KEY_BASE);this._descriptions=filterFunctionList.concat((_a23=config==null?void 0:config.description)!=null?_a23:[])}_registerDescriptions(){const localeService=this._localeService,functionListLocale=this._descriptions.map(functionInfo=>({functionName:getFunctionName(functionInfo,localeService),functionType:functionInfo.functionType,description:localeService.t(functionInfo.description),abstract:localeService.t(functionInfo.abstract),functionParameter:functionInfo.functionParameter.map(item=>({name:localeService.t(item.name),detail:localeService.t(item.detail),example:item.example,require:item.require,repeat:item.repeat}))}));this._functionService.registerDescriptions(...functionListLocale)}},__name(_a7,"DescriptionService"),_a7);exports.DescriptionService=__decorateClass$d([__decorateParam$d(0,engineFormula.IFunctionService),__decorateParam$d(1,core.Inject(core.LocaleService)),__decorateParam$d(2,core.IConfigService)],exports.DescriptionService);const formulaSelectFunctionSelect="univer-formula-select-function-select",formulaSelectFunctionResult="univer-formula-select-function-result",formulaSelectFunctionResultItem="univer-formula-select-function-result-item",formulaSelectFunctionResultItemNameLight="univer-formula-select-function-result-item-name-light",formulaSelectFunctionResultItemSelected="univer-formula-select-function-result-item-selected",formulaSelectFunctionResultItemActive="univer-formula-select-function-result-item-active",formulaSelectFunctionContent="univer-formula-select-function-content",styles={formulaSelectFunctionSelect,formulaSelectFunctionResult,formulaSelectFunctionResultItem,formulaSelectFunctionResultItemNameLight,formulaSelectFunctionResultItemSelected,formulaSelectFunctionResultItemActive,formulaSelectFunctionContent};function SelectFunction(props){const{onChange}=props,allTypeValue="-1",[searchText,setSearchText]=require$$0.useState(""),[selectList,setSelectList]=require$$0.useState([]),[active,setActive]=require$$0.useState(0),[typeSelected,setTypeSelected]=require$$0.useState(allTypeValue),[nameSelected,setNameSelected]=require$$0.useState(0),[functionInfo,setFunctionInfo]=require$$0.useState(null),descriptionService=core.useDependency(IDescriptionService),localeService=core.useDependency(core.LocaleService),options=getFunctionTypeValues(engineFormula.FunctionType,localeService);options.unshift({label:localeService.t("formula.moreFunctions.allFunctions"),value:allTypeValue});const required=localeService.t("formula.prompt.required"),optional=localeService.t("formula.prompt.optional");require$$0.useEffect(()=>{handleSelectChange(allTypeValue)},[]),require$$0.useEffect(()=>{setCurrentFunctionInfo(0)},[selectList]);const highlightSearchText=__name(text=>{if(searchText.trim()==="")return text;const regex=new RegExp(`(${searchText.toLocaleUpperCase()})`);return text.split(regex).filter(Boolean).map((part,index)=>part.match(regex)?jsxRuntimeExports.jsx("span",{className:styles.formulaSelectFunctionResultItemNameLight,children:part},index):part)},"highlightSearchText"),setCurrentFunctionInfo=__name(selectedIndex=>{if(selectList.length===0){setFunctionInfo(null);return}setNameSelected(selectedIndex);const functionInfo2=descriptionService.getFunctionInfo(selectList[selectedIndex].name);if(!functionInfo2){setFunctionInfo(null);return}setFunctionInfo(functionInfo2),onChange(functionInfo2)},"setCurrentFunctionInfo");function handleSelectChange(value){setTypeSelected(value);const selectList2=descriptionService.getSearchListByType(+value);setSelectList(selectList2)}__name(handleSelectChange,"handleSelectChange");function handleSearchInputChange(value){setSearchText(value);const selectList2=descriptionService.getSearchListByName(value);setSelectList(selectList2)}__name(handleSearchInputChange,"handleSearchInputChange");function handleSelectListKeyDown(e){if(e.stopPropagation(),e.key==="ArrowDown"){const nextActive=active+1;setActive(nextActive===selectList.length?0:nextActive)}else if(e.key==="ArrowUp"){const nextActive=active-1;setActive(nextActive===-1?selectList.length-1:nextActive)}else e.key==="Enter"&&setCurrentFunctionInfo(active)}__name(handleSelectListKeyDown,"handleSelectListKeyDown");const handleLiMouseEnter=__name(index=>{setActive(index)},"handleLiMouseEnter"),handleLiMouseLeave=__name(()=>{setActive(-1)},"handleLiMouseLeave");return jsxRuntimeExports.jsxs("div",{children:[jsxRuntimeExports.jsxs("div",{className:styles.formulaSelectFunctionSelect,children:[jsxRuntimeExports.jsx(design.Select,{value:typeSelected,options,onChange:handleSelectChange}),jsxRuntimeExports.jsx(design.Input,{placeholder:localeService.t("formula.moreFunctions.searchFunctionPlaceholder"),onKeyDown:handleSelectListKeyDown,value:searchText,onChange:handleSearchInputChange,size:"large",allowClear:!0})]}),jsxRuntimeExports.jsx("ul",{className:styles.formulaSelectFunctionResult,onKeyDown:handleSelectListKeyDown,tabIndex:-1,children:selectList.map(({name},index)=>jsxRuntimeExports.jsxs("li",{className:active===index?`${styles.formulaSelectFunctionResultItem} ${styles.formulaSelectFunctionResultItemActive}`:styles.formulaSelectFunctionResultItem,onMouseEnter:__name(()=>handleLiMouseEnter(index),"onMouseEnter"),onMouseLeave:handleLiMouseLeave,onClick:__name(()=>setCurrentFunctionInfo(index),"onClick"),children:[nameSelected===index&&jsxRuntimeExports.jsx(CheckMarkSingle,{className:styles.formulaSelectFunctionResultItemSelected}),jsxRuntimeExports.jsx("span",{className:styles.formulaSelectFunctionResultItemName,children:highlightSearchText(name)})]},index))}),functionInfo&&jsxRuntimeExports.jsxs("div",{className:styles.formulaSelectFunctionContent,children:[jsxRuntimeExports.jsx(FunctionParams,{title:functionInfo.functionName,value:functionInfo.description}),jsxRuntimeExports.jsx(FunctionParams,{title:localeService.t("formula.moreFunctions.syntax"),value:jsxRuntimeExports.jsx(FunctionHelp,{prefix:functionInfo.functionName,value:functionInfo.functionParameter})}),jsxRuntimeExports.jsx(FunctionParams,{title:localeService.t("formula.prompt.helpExample"),value:`${functionInfo.functionName}(${functionInfo.functionParameter.map(item=>item.example).join(",")})`}),functionInfo.functionParameter&&functionInfo.functionParameter.map((item,i)=>jsxRuntimeExports.jsx(FunctionParams,{title:item.name,value:`${item.require?required:optional} ${item.detail}`},i))]})]})}__name(SelectFunction,"SelectFunction");function MoreFunctions(){const workbook=sheetsUi.useActiveWorkbook(),[selectFunction,setSelectFunction]=require$$0.useState(!0),[inputParams,setInputParams]=require$$0.useState(!1),[functionInfo,setFunctionInfo]=require$$0.useState(null),localeService=core.useDependency(core.LocaleService),editorService=core.useDependency(docsUi.IEditorService);function handleClickNextPrev(){setSelectFunction(!selectFunction),setInputParams(!inputParams)}__name(handleClickNextPrev,"handleClickNextPrev");function handleConfirm(){editorService.setFormula(`=${functionInfo==null?void 0:functionInfo.functionName}(`)}return __name(handleConfirm,"handleConfirm"),jsxRuntimeExports.jsxs("div",{className:styles$3.formulaMoreFunctions,children:[selectFunction&&jsxRuntimeExports.jsx(SelectFunction,{onChange:setFunctionInfo}),inputParams&&jsxRuntimeExports.jsx(InputParams,{functionInfo,onChange:__name(()=>{},"onChange")}),jsxRuntimeExports.jsxs("div",{className:styles$3.formulaMoreFunctionsOperation,children:[inputParams&&jsxRuntimeExports.jsx(design.Button,{type:"primary",size:"small",onClick:handleClickNextPrev,children:localeService.t("formula.moreFunctions.next")}),inputParams&&jsxRuntimeExports.jsx(design.Button,{size:"small",onClick:handleClickNextPrev,children:localeService.t("formula.moreFunctions.prev")}),selectFunction&&!!workbook&&jsxRuntimeExports.jsx(design.Button,{type:"primary",size:"small",onClick:handleConfirm,children:localeService.t("formula.moreFunctions.confirm")})]})]})}__name(MoreFunctions,"MoreFunctions");const OtherFormulaMarkDirty={type:core.CommandType.MUTATION,id:"sheet.mutation.data-validation-formula-mark-dirty",handler(){return!0}},META_KEY_CTRL_AND_SHIFT="meta_key_ctrl_And_Shift";function whenEditorStandalone(contextService){return contextService.getContextValue(core.FOCUSING_DOC)&&contextService.getContextValue(core.FOCUSING_UNIVER_EDITOR)&&contextService.getContextValue(core.FOCUSING_UNIVER_EDITOR_STANDALONE_SINGLE_MODE)}__name(whenEditorStandalone,"whenEditorStandalone");function extractFormulaError(cell){return(core.isFormulaString(cell==null?void 0:cell.f)||core.isFormulaId(cell==null?void 0:cell.si))&&typeof(cell==null?void 0:cell.v)=="string"&&engineFormula.ERROR_TYPE_SET.has(cell.v)?cell.v:null}__name(extractFormulaError,"extractFormulaError");const PROMPT_SELECTION_KEYCODE_ARROW_LIST=[ui.KeyCode.ARROW_DOWN,ui.KeyCode.ARROW_UP,ui.KeyCode.ARROW_LEFT,ui.KeyCode.ARROW_RIGHT],PROMPT_SELECTION_KEYCODE_LIST=[...PROMPT_SELECTION_KEYCODE_ARROW_LIST,ui.KeyCode.ENTER,ui.KeyCode.TAB,ui.KeyCode.ESC];function promptSelectionShortcutItem(){const shortcutList=[];for(const keycode of PROMPT_SELECTION_KEYCODE_LIST)shortcutList.push({id:SelectEditorFormulaOperation.id,binding:keycode,preconditions:__name(contextService=>sheetsUi.whenFormulaEditorActivated(contextService),"preconditions"),staticParameters:{eventType:engineRender.DeviceInputEventType.Keyboard,keycode}});return shortcutList}__name(promptSelectionShortcutItem,"promptSelectionShortcutItem");function promptSelectionShortcutItemShift(){const shortcutList=[];for(const keycode of PROMPT_SELECTION_KEYCODE_ARROW_LIST)shortcutList.push({id:SelectEditorFormulaOperation.id,binding:keycode|ui.MetaKeys.SHIFT,preconditions:__name(contextService=>sheetsUi.whenFormulaEditorActivated(contextService),"preconditions"),staticParameters:{eventType:engineRender.DeviceInputEventType.Keyboard,keycode,metaKey:ui.MetaKeys.SHIFT}});return shortcutList}__name(promptSelectionShortcutItemShift,"promptSelectionShortcutItemShift");function promptSelectionShortcutItemCtrl(){const shortcutList=[];for(const keycode of PROMPT_SELECTION_KEYCODE_ARROW_LIST)shortcutList.push({id:SelectEditorFormulaOperation.id,binding:keycode|ui.MetaKeys.CTRL_COMMAND,preconditions:__name(contextService=>sheetsUi.whenFormulaEditorActivated(contextService),"preconditions"),staticParameters:{eventType:engineRender.DeviceInputEventType.Keyboard,keycode,metaKey:ui.MetaKeys.CTRL_COMMAND}});return shortcutList}__name(promptSelectionShortcutItemCtrl,"promptSelectionShortcutItemCtrl");function promptSelectionShortcutItemCtrlAndShift(){const shortcutList=[];for(const keycode of PROMPT_SELECTION_KEYCODE_ARROW_LIST)shortcutList.push({id:SelectEditorFormulaOperation.id,binding:keycode|ui.MetaKeys.SHIFT|ui.MetaKeys.CTRL_COMMAND,preconditions:__name(contextService=>sheetsUi.whenFormulaEditorActivated(contextService),"preconditions"),staticParameters:{eventType:engineRender.DeviceInputEventType.Keyboard,keycode,metaKey:META_KEY_CTRL_AND_SHIFT}});return shortcutList}__name(promptSelectionShortcutItemCtrlAndShift,"promptSelectionShortcutItemCtrlAndShift");const ChangeRefToAbsoluteShortcut={id:ReferenceAbsoluteOperation.id,binding:ui.KeyCode.F4,preconditions:__name(contextService=>sheetsUi.whenFormulaEditorActivated(contextService),"preconditions")};function singleEditorPromptSelectionShortcutItem(){const shortcutList=[];for(const keycode of[ui.KeyCode.ENTER,ui.KeyCode.TAB,ui.KeyCode.ARROW_DOWN,ui.KeyCode.ARROW_UP])shortcutList.push({id:SelectEditorFormulaOperation.id,binding:keycode,preconditions:__name(contextService=>whenEditorStandalone(contextService),"preconditions"),staticParameters:{eventType:engineRender.DeviceInputEventType.Keyboard,keycode,isSingleEditor:!0}});return shortcutList}__name(singleEditorPromptSelectionShortcutItem,"singleEditorPromptSelectionShortcutItem");function InsertFunctionMenuItemFactory(accessor){return{id:InsertFunctionOperation.id,icon:"FunctionSingle",tooltip:"formula.insert.tooltip",type:ui.MenuItemType.SELECTOR,selections:[{label:"SUM",value:"SUM",icon:"SumSingle"},{label:"AVERAGE",value:"AVERAGE",icon:"AvgSingle"},{label:"COUNT",value:"COUNT",icon:"CntSingle"},{label:"MAX",value:"MAX",icon:"MaxSingle"},{label:"MIN",value:"MIN",icon:"MinSingle"}],hidden$:ui.getMenuHiddenObservable(accessor,core.UniverInstanceType.UNIVER_SHEET),disabled$:sheetsUi.getCurrentRangeDisable$(accessor,{workbookTypes:[sheets.WorkbookEditablePermission],worksheetTypes:[sheets.WorksheetEditPermission,sheets.WorksheetSetCellValuePermission],rangeTypes:[sheets.RangeProtectionPermissionEditPoint]})}}__name(InsertFunctionMenuItemFactory,"InsertFunctionMenuItemFactory");function MoreFunctionsMenuItemFactory(accessor){return{id:MoreFunctionsOperation.id,title:"formula.insert.more",type:ui.MenuItemType.BUTTON}}__name(MoreFunctionsMenuItemFactory,"MoreFunctionsMenuItemFactory");function menuClipboardDisabledObservable(injector){return injector.get(core.IUniverInstanceService).getCurrentTypeOfUnit$(core.UniverInstanceType.UNIVER_SHEET).pipe(rxjs.switchMap(workbook=>workbook&&injector.get(ui.IClipboardInterfaceService)?new rxjs.Observable(subscriber=>subscriber.next(!injector.get(ui.IClipboardInterfaceService).supportClipboard)):rxjs.of(!0)))}__name(menuClipboardDisabledObservable,"menuClipboardDisabledObservable");function PasteFormulaMenuItemFactory(accessor){return{id:SheetOnlyPasteFormulaCommand.id,type:ui.MenuItemType.BUTTON,title:"formula.operation.pasteFormula",disabled$:menuClipboardDisabledObservable(accessor).pipe(rxjs.combineLatestWith(sheetsUi.getCurrentRangeDisable$(accessor,{workbookTypes:[sheets.WorkbookEditablePermission],rangeTypes:[sheets.RangeProtectionPermissionEditPoint],worksheetTypes:[sheets.WorksheetSetCellValuePermission,sheets.WorksheetEditPermission]})),rxjs.map(([d1,d2])=>d1||d2))}}__name(PasteFormulaMenuItemFactory,"PasteFormulaMenuItemFactory");const menuSchema={[ui.RibbonStartGroup.FORMULAS_INSERT]:{[InsertFunctionOperation.id]:{order:1,menuItemFactory:InsertFunctionMenuItemFactory,[MoreFunctionsOperation.id]:{order:1,menuItemFactory:MoreFunctionsMenuItemFactory}}},[sheetsUi.PASTE_SPECIAL_MENU_ID]:{[SheetOnlyPasteFormulaCommand.id]:{order:4,menuItemFactory:PasteFormulaMenuItemFactory}}};var __defProp$c=Object.defineProperty,__getOwnPropDesc$c=Object.getOwnPropertyDescriptor,__decorateClass$c=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$c(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$c(target,key,result),result},"__decorateClass$c"),__decorateParam$c=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$c"),_a8;let FormulaUIController=(_a8=class extends core.Disposable{constructor(_injector,_menuManagerService,_commandService,_shortcutService,_uiPartsService,_renderManagerService,_componentManager){super(),this._injector=_injector,this._menuManagerService=_menuManagerService,this._commandService=_commandService,this._shortcutService=_shortcutService,this._uiPartsService=_uiPartsService,this._renderManagerService=_renderManagerService,this._componentManager=_componentManager,this._initialize()}_initialize(){this._registerCommands(),this._registerMenus(),this._registerShortcuts(),this._registerComponents(),this._registerRenderModules()}_registerMenus(){this._menuManagerService.mergeMenu(menuSchema)}_registerCommands(){[InsertFunctionCommand,SheetOnlyPasteFormulaCommand,InsertFunctionOperation,MoreFunctionsOperation,SearchFunctionOperation,HelpFunctionOperation,SelectEditorFormulaOperation,ReferenceAbsoluteOperation,OtherFormulaMarkDirty].forEach(command=>this.disposeWithMe(this._commandService.registerCommand(command)))}_registerShortcuts(){[...promptSelectionShortcutItem(),...promptSelectionShortcutItemShift(),...promptSelectionShortcutItemCtrl(),...promptSelectionShortcutItemCtrlAndShift(),...singleEditorPromptSelectionShortcutItem(),ChangeRefToAbsoluteShortcut].forEach(item=>{this.disposeWithMe(this._shortcutService.registerShortcut(item))})}_registerComponents(){this.disposeWithMe(this._uiPartsService.registerComponent(ui.BuiltInUIPart.CONTENT,()=>core.connectInjector(RenderFormulaPromptContent,this._injector))),this._componentManager.register(MORE_FUNCTIONS_COMPONENT,MoreFunctions)}_registerRenderModules(){this.disposeWithMe(this._renderManagerService.registerRenderModule(core.UniverInstanceType.UNIVER_SHEET,[FormulaEditorShowController]))}},__name(_a8,"FormulaUIController"),_a8);FormulaUIController=__decorateClass$c([core.OnLifecycle(core.LifecycleStages.Ready,FormulaUIController),__decorateParam$c(0,core.Inject(core.Injector)),__decorateParam$c(1,ui.IMenuManagerService),__decorateParam$c(2,core.ICommandService),__decorateParam$c(3,ui.IShortcutService),__decorateParam$c(4,ui.IUIPartsService),__decorateParam$c(5,engineRender.IRenderManagerService),__decorateParam$c(6,core.Inject(ui.ComponentManager))],FormulaUIController);var __defProp$b=Object.defineProperty,__getOwnPropDesc$b=Object.getOwnPropertyDescriptor,__decorateClass$b=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$b(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$b(target,key,result),result},"__decorateClass$b"),__decorateParam$b=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$b"),_a9;let TriggerCalculationController=(_a9=class extends core.Disposable{constructor(_commandService,_activeDirtyManagerService,_numfmtService,_formulaDataModel,_progressService){super();__publicField(this,"_waitingCommandQueue",[]);__publicField(this,"_executingDirtyData",{forceCalculation:!1,dirtyRanges:[],dirtyNameMap:{},dirtyDefinedNameMap:{},dirtyUnitFeatureMap:{},dirtyUnitOtherFormulaMap:{}});__publicField(this,"_setTimeoutKey",-1);__publicField(this,"_startExecutionTime",0);__publicField(this,"_formulaCalculationDoneCount",0);__publicField(this,"_arrayFormulaCalculationDoneCount",0);__publicField(this,"_executionInProgressParams",null);__publicField(this,"_restartCalculation",!1);this._commandService=_commandService,this._activeDirtyManagerService=_activeDirtyManagerService,this._numfmtService=_numfmtService,this._formulaDataModel=_formulaDataModel,this._progressService=_progressService,this._initialize()}_initialize(){this._commandExecutedListener(),this._initialExecuteFormulaProcessListener(),this._initialExecuteFormula(),this._initialProgressBar()}_commandExecutedListener(){this.disposeWithMe(this._commandService.onCommandExecuted((command,options)=>{if(this._activeDirtyManagerService.get(command.id)){if(command.id===sheets.SetRangeValuesMutation.id){const params=command.params;if(options&&options.onlyLocal===!0||params.trigger===sheets.SetStyleCommand.id||params.trigger===sheets.SetBorderCommand.id||params.trigger===sheets.ClearSelectionFormatCommand.id)return}this._waitingCommandQueue.push(command),clearTimeout(this._setTimeoutKey),this._setTimeoutKey=setTimeout(()=>{const dirtyData=this._generateDirty(this._waitingCommandQueue);this._executingDirtyData=this._mergeDirty(this._executingDirtyData,dirtyData),this._executionInProgressParams==null?this._commandService.executeCommand(engineFormula.SetFormulaCalculationStartMutation.id,{...this._executingDirtyData},{onlyLocal:!0}):(this._restartCalculation=!0,this._commandService.executeCommand(engineFormula.SetFormulaCalculationStopMutation.id,{})),this._startExecutionTime=performance.now(),this._waitingCommandQueue=[]},100)}}))}_generateDirty(commands){const allDirtyRanges=[],allDirtyNameMap={},allDirtyDefinedNameMap={},allDirtyUnitFeatureMap={},allDirtyUnitOtherFormulaMap={};for(const command of commands){const conversion=this._activeDirtyManagerService.get(command.id);if(conversion==null)continue;const params=conversion.getDirtyData(command),{dirtyRanges,dirtyNameMap,dirtyDefinedNameMap,dirtyUnitFeatureMap,dirtyUnitOtherFormulaMap}=params;dirtyRanges!=null&&allDirtyRanges.push(...dirtyRanges),dirtyNameMap!=null&&this._mergeDirtyNameMap(allDirtyNameMap,dirtyNameMap),dirtyDefinedNameMap!=null&&this._mergeDirtyNameMap(allDirtyDefinedNameMap,dirtyDefinedNameMap),dirtyUnitFeatureMap!=null&&this._mergeDirtyUnitFeatureOrOtherFormulaMap(allDirtyUnitFeatureMap,dirtyUnitFeatureMap),dirtyUnitOtherFormulaMap!=null&&this._mergeDirtyUnitFeatureOrOtherFormulaMap(allDirtyUnitOtherFormulaMap,dirtyUnitOtherFormulaMap)}return{dirtyRanges:allDirtyRanges,dirtyNameMap:allDirtyNameMap,dirtyDefinedNameMap:allDirtyDefinedNameMap,dirtyUnitFeatureMap:allDirtyUnitFeatureMap,dirtyUnitOtherFormulaMap:allDirtyUnitOtherFormulaMap,forceCalculation:!1}}_mergeDirty(dirtyData1,dirtyData2){const allDirtyRanges=[...dirtyData1.dirtyRanges,...dirtyData2.dirtyRanges],allDirtyNameMap={...dirtyData1.dirtyNameMap},allDirtyDefinedNameMap={...dirtyData1.dirtyDefinedNameMap},allDirtyUnitFeatureMap={...dirtyData1.dirtyUnitFeatureMap},allDirtyUnitOtherFormulaMap={...dirtyData1.dirtyUnitOtherFormulaMap};return this._mergeDirtyNameMap(allDirtyNameMap,dirtyData2.dirtyNameMap),this._mergeDirtyNameMap(allDirtyDefinedNameMap,dirtyData2.dirtyDefinedNameMap),this._mergeDirtyUnitFeatureOrOtherFormulaMap(allDirtyUnitFeatureMap,dirtyData2.dirtyUnitFeatureMap),this._mergeDirtyUnitFeatureOrOtherFormulaMap(allDirtyUnitOtherFormulaMap,dirtyData2.dirtyUnitOtherFormulaMap),{dirtyRanges:allDirtyRanges,dirtyNameMap:allDirtyNameMap,dirtyDefinedNameMap:allDirtyDefinedNameMap,dirtyUnitFeatureMap:allDirtyUnitFeatureMap,dirtyUnitOtherFormulaMap:allDirtyUnitOtherFormulaMap,forceCalculation:!1}}_mergeDirtyNameMap(allDirtyNameMap,dirtyNameMap){Object.keys(dirtyNameMap).forEach(unitId=>{allDirtyNameMap[unitId]==null&&(allDirtyNameMap[unitId]={}),Object.keys(dirtyNameMap[unitId]).forEach(sheetId=>{var _a23;(_a23=dirtyNameMap[unitId])!=null&&_a23[sheetId]&&(allDirtyNameMap[unitId]==null&&(allDirtyNameMap[unitId]={}),allDirtyNameMap[unitId][sheetId]=dirtyNameMap[unitId][sheetId])})})}_mergeDirtyUnitFeatureOrOtherFormulaMap(allDirtyUnitFeatureOrOtherFormulaMap,dirtyUnitFeatureOrOtherFormulaMap){Object.keys(dirtyUnitFeatureOrOtherFormulaMap).forEach(unitId=>{allDirtyUnitFeatureOrOtherFormulaMap[unitId]==null&&(allDirtyUnitFeatureOrOtherFormulaMap[unitId]={}),Object.keys(dirtyUnitFeatureOrOtherFormulaMap[unitId]).forEach(sheetId=>{allDirtyUnitFeatureOrOtherFormulaMap[unitId][sheetId]==null&&(allDirtyUnitFeatureOrOtherFormulaMap[unitId][sheetId]={}),Object.keys(dirtyUnitFeatureOrOtherFormulaMap[unitId][sheetId]).forEach(featureIdOrFormulaId=>{allDirtyUnitFeatureOrOtherFormulaMap[unitId][sheetId][featureIdOrFormulaId]=dirtyUnitFeatureOrOtherFormulaMap[unitId][sheetId][featureIdOrFormulaId]||!1})})})}_initialExecuteFormulaProcessListener(){const debouncedFormulaPushTask=core.throttle(this._pushFormulaTask.bind(this),300),debouncedArrayFormulaPushTask=core.throttle(this._pushArrayFormulaTask.bind(this),300);let startDependencyTimer=null,calculationProcessCount=0,formulaCalculationCount=0,arrayFormulaCalculationCount=0,needStartFormulaProgress=!1,needStartArrayFormulaProgress=!1;this.disposeWithMe(this._commandService.onCommandExecuted(command=>{if(command.id!==engineFormula.SetFormulaCalculationNotificationMutation.id)return;const params=command.params;if(params.stageInfo!=null){const{totalFormulasToCalculate,completedFormulasCount,totalArrayFormulasToCalculate,completedArrayFormulasCount,stage}=params.stageInfo;stage===engineFormula.FormulaExecuteStageType.START_DEPENDENCY?(calculationProcessCount++,startDependencyTimer!==null&&(clearTimeout(startDependencyTimer),startDependencyTimer=null),startDependencyTimer=setTimeout(()=>{const taskCount=formulaCalculationCount-this._formulaCalculationDoneCount+(arrayFormulaCalculationCount-this._arrayFormulaCalculationDoneCount)+100;this._progressService.insertTaskCount(taskCount),this._progressService.pushTask({count:5}),startDependencyTimer=null},1e3)):stage===engineFormula.FormulaExecuteStageType.CURRENTLY_CALCULATING?(completedFormulasCount===1&&!needStartFormulaProgress&&(needStartFormulaProgress=!0,startDependencyTimer?formulaCalculationCount+=totalFormulasToCalculate:this._progressService.insertTaskCount(totalFormulasToCalculate)),startDependencyTimer?this._formulaCalculationDoneCount=completedFormulasCount:debouncedFormulaPushTask(completedFormulasCount)):stage===engineFormula.FormulaExecuteStageType.CURRENTLY_CALCULATING_ARRAY_FORMULA&&(completedArrayFormulasCount===1&&!needStartArrayFormulaProgress&&(needStartArrayFormulaProgress=!0,startDependencyTimer?arrayFormulaCalculationCount+=totalArrayFormulasToCalculate:this._progressService.insertTaskCount(totalArrayFormulasToCalculate)),startDependencyTimer?this._arrayFormulaCalculationDoneCount=completedArrayFormulasCount:debouncedArrayFormulaPushTask(completedArrayFormulasCount)),this._executionInProgressParams=params.stageInfo}else{const state=params.functionsExecutedState;let result="";switch(calculationProcessCount--,state){case engineFormula.FormulaExecutedStateType.NOT_EXECUTED:result="No tasks are being executed anymore",this._resetExecutingDirtyData();break;case engineFormula.FormulaExecutedStateType.STOP_EXECUTION:result="The execution of the formula has been stopped",this._progressService.stop(),calculationProcessCount=0;break;case engineFormula.FormulaExecutedStateType.SUCCESS:result=`Formula calculation succeeded, Total time consumed: ${performance.now()-this._startExecutionTime} ms`,this._resetExecutingDirtyData();break;case engineFormula.FormulaExecutedStateType.INITIAL:result="Waiting for calculation",this._resetExecutingDirtyData();break}calculationProcessCount===0&&(startDependencyTimer?(clearTimeout(startDependencyTimer),startDependencyTimer=null):state===engineFormula.FormulaExecutedStateType.SUCCESS&&this._progressService.complete(),this._formulaCalculationDoneCount=0,this._arrayFormulaCalculationDoneCount=0,needStartFormulaProgress=!1,needStartArrayFormulaProgress=!1),state===engineFormula.FormulaExecutedStateType.STOP_EXECUTION&&this._restartCalculation?(this._restartCalculation=!1,this._commandService.executeCommand(engineFormula.SetFormulaCalculationStartMutation.id,{...this._executingDirtyData},{onlyLocal:!0})):this._executionInProgressParams=null,console.warn(`execution result${result}`)}}))}_resetExecutingDirtyData(){this._executingDirtyData={dirtyRanges:[],dirtyNameMap:{},dirtyDefinedNameMap:{},dirtyUnitFeatureMap:{},dirtyUnitOtherFormulaMap:{},forceCalculation:!1}}_initialExecuteFormula(){this._commandService.executeCommand(engineFormula.SetFormulaCalculationStartMutation.id,{commands:[],forceCalculation:!0},{onlyLocal:!0})}_initialProgressBar(){this.disposeWithMe(this._progressService.progressVisible$.subscribe(isVisible=>{isVisible||this._commandService.executeCommand(engineFormula.SetFormulaCalculationStopMutation.id,{})}))}_pushFormulaTask(completedCount){if(this._progressService.getTaskCount()===0)return;const count=completedCount-this._formulaCalculationDoneCount;this._formulaCalculationDoneCount=completedCount,this._progressService.pushTask({count})}_pushArrayFormulaTask(completedCount){if(this._progressService.getTaskCount()===0)return;const count=completedCount-this._arrayFormulaCalculationDoneCount;this._arrayFormulaCalculationDoneCount=completedCount,this._progressService.pushTask({count})}},__name(_a9,"TriggerCalculationController"),_a9);TriggerCalculationController=__decorateClass$b([core.OnLifecycle(core.LifecycleStages.Ready,TriggerCalculationController),__decorateParam$b(0,core.ICommandService),__decorateParam$b(1,engineFormula.IActiveDirtyManagerService),__decorateParam$b(2,core.Inject(sheets.INumfmtService)),__decorateParam$b(3,core.Inject(engineFormula.FormulaDataModel)),__decorateParam$b(4,core.Inject(ui.IProgressService))],TriggerCalculationController);function checkFormulaDataNull(formulaData,unitId,sheetId){var _a23;return formulaData==null||formulaData[unitId]==null||((_a23=formulaData[unitId])==null?void 0:_a23[sheetId])==null}__name(checkFormulaDataNull,"checkFormulaDataNull");function removeFormulaData(formulaData,unitId,sheetId){var _a23;if(sheetId){if(formulaData&&formulaData[unitId]&&((_a23=formulaData[unitId])!=null&&_a23[sheetId]))return delete formulaData[unitId][sheetId],{[unitId]:{[sheetId]:null}}}else if(formulaData&&formulaData[unitId])return delete formulaData[unitId],{[unitId]:null}}__name(removeFormulaData,"removeFormulaData");function getFormulaReferenceMoveUndoRedo(oldFormulaData,newFormulaData,formulaReferenceMoveParam){const{type}=formulaReferenceMoveParam;return type===11||type===12?getFormulaReferenceSheet(oldFormulaData,newFormulaData):getFormulaReferenceRange(oldFormulaData,newFormulaData,formulaReferenceMoveParam)}__name(getFormulaReferenceMoveUndoRedo,"getFormulaReferenceMoveUndoRedo");function getFormulaReferenceSheet(oldFormulaData,newFormulaData){const undos=[],redos=[];return Object.keys(newFormulaData).forEach(unitId=>{const newSheetData=newFormulaData[unitId],oldSheetData=oldFormulaData[unitId];if(newSheetData==null||oldSheetData==null)return!0;Object.keys(newSheetData).forEach(subUnitId=>{const newSheetFormula=new core.ObjectMatrix(newSheetData[subUnitId]||{}),oldSheetFormula=new core.ObjectMatrix(oldSheetData[subUnitId]||{}),redoFormulaMatrix=new core.ObjectMatrix,undoFormulaMatrix=new core.ObjectMatrix;if(newSheetFormula.forValue((r,c,cell)=>{if(cell==null)return!0;const newValue=formulaDataItemToCellData(cell);newValue!==null&&(redoFormulaMatrix.setValue(r,c,newValue),undoFormulaMatrix.setValue(r,c,oldSheetFormula.getValue(r,c)))}),redoFormulaMatrix.getSizeOf()===0)return;const redoSetRangeValuesMutationParams={subUnitId,unitId,cellValue:redoFormulaMatrix.clone()},redoMutation={id:sheets.SetRangeValuesMutation.id,params:redoSetRangeValuesMutationParams};redos.push(redoMutation);const undoSetRangeValuesMutationParams={subUnitId,unitId,cellValue:undoFormulaMatrix.clone()},undoMutation={id:sheets.SetRangeValuesMutation.id,params:undoSetRangeValuesMutationParams};undos.push(undoMutation)})}),{undos,redos}}__name(getFormulaReferenceSheet,"getFormulaReferenceSheet");function getFormulaReferenceRange(oldFormulaData,newFormulaData,formulaReferenceMoveParam){const{sheetId:subUnitId,unitId}=formulaReferenceMoveParam,{redoFormulaData,undoFormulaData}=refRangeFormula(oldFormulaData,newFormulaData,formulaReferenceMoveParam),redos=[],undos=[];if(Object.keys(redoFormulaData).length!==0){const redoSetRangeValuesMutationParams={subUnitId,unitId,cellValue:redoFormulaData},redoMutation={id:sheets.SetRangeValuesMutation.id,params:redoSetRangeValuesMutationParams};redos.push(redoMutation)}if(Object.keys(undoFormulaData).length!==0){const undoSetRangeValuesMutationParams={subUnitId,unitId,cellValue:undoFormulaData},undoMutation={id:sheets.SetRangeValuesMutation.id,params:undoSetRangeValuesMutationParams};undos.push(undoMutation)}return{undos,redos}}__name(getFormulaReferenceRange,"getFormulaReferenceRange");function refRangeFormula(oldFormulaData,newFormulaData,formulaReferenceMoveParam){let redoFormulaData={},undoFormulaData={};const{type,unitId,sheetId,range,from,to}=formulaReferenceMoveParam;if(checkFormulaDataNull(oldFormulaData,unitId,sheetId))return{redoFormulaData,undoFormulaData};const currentOldFormulaData=oldFormulaData[unitId][sheetId],currentNewFormulaData=newFormulaData[unitId][sheetId],oldFormulaMatrix=new core.ObjectMatrix(currentOldFormulaData||{}),newFormulaMatrix=new core.ObjectMatrix(currentNewFormulaData||{}),rangeList=processFormulaChanges(oldFormulaMatrix,type,from,to,range);return redoFormulaData=getRedoFormulaData(rangeList,oldFormulaMatrix,newFormulaMatrix),undoFormulaData=getUndoFormulaData(rangeList,oldFormulaMatrix),{redoFormulaData,undoFormulaData}}__name(refRangeFormula,"refRangeFormula");function processFormulaChanges(oldFormulaMatrix,type,from,to,range){const rangeList=[];return oldFormulaMatrix.forValue((row,column,cell)=>{if(cell==null||!isFormulaDataItem(cell))return!0;const oldCell=core.cellToRange(row,column);let newCell=null,isReverse=!1;if([0,1,2].includes(type))newCell=handleMove(type,from,to,oldCell);else if(range!=null){const result=handleInsertDelete(type,range,oldCell);newCell=result.newCell,isReverse=result.isReverse}isReverse?rangeList.unshift({oldCell,newCell}):rangeList.push({oldCell,newCell})}),rangeList}__name(processFormulaChanges,"processFormulaChanges");function handleMove(type,from,to,oldCell){if(from==null||to==null)return null;switch(type){case 0:return handleRefMoveRange(from,to,oldCell);case 1:return handleRefMoveRows(from,to,oldCell);case 2:return handleRefMoveCols(from,to,oldCell);default:return null}}__name(handleMove,"handleMove");function handleInsertDelete(type,range,oldCell){let newCell=null,isReverse=!1;switch(type){case 3:newCell=handleRefInsertRow(range,oldCell),isReverse=!0;break;case 4:newCell=handleRefInsertCol(range,oldCell),isReverse=!0;break;case 5:newCell=handleRefRemoveRow(range,oldCell);break;case 6:newCell=handleRefRemoveCol(range,oldCell);break;case 7:newCell=handleRefDeleteMoveLeft(range,oldCell);break;case 8:newCell=handleRefDeleteMoveUp(range,oldCell);break;case 9:newCell=handleRefInsertMoveDown(range,oldCell),isReverse=!0;break;case 10:newCell=handleRefInsertMoveRight(range,oldCell),isReverse=!0;break}return{newCell,isReverse}}__name(handleInsertDelete,"handleInsertDelete");function handleRefMoveRange(from,to,oldCell){const operators=sheets.handleMoveRange({id:sheets.EffectRefRangId.MoveRangeCommandId,params:{toRange:to,fromRange:from}},oldCell);return sheets.runRefRangeMutations(operators,oldCell)}__name(handleRefMoveRange,"handleRefMoveRange");function handleRefMoveRows(from,to,oldCell){const operators=sheets.handleMoveRows({id:sheets.EffectRefRangId.MoveRowsCommandId,params:{toRange:to,fromRange:from}},oldCell);return sheets.runRefRangeMutations(operators,oldCell)}__name(handleRefMoveRows,"handleRefMoveRows");function handleRefMoveCols(from,to,oldCell){const operators=sheets.handleMoveCols({id:sheets.EffectRefRangId.MoveColsCommandId,params:{toRange:to,fromRange:from}},oldCell);return sheets.runRefRangeMutations(operators,oldCell)}__name(handleRefMoveCols,"handleRefMoveCols");function handleRefInsertRow(range,oldCell){const operators=sheets.handleInsertRow({id:sheets.EffectRefRangId.InsertRowCommandId,params:{range,unitId:"",subUnitId:"",direction:core.Direction.DOWN}},oldCell);return sheets.runRefRangeMutations(operators,oldCell)}__name(handleRefInsertRow,"handleRefInsertRow");function handleRefInsertCol(range,oldCell){const operators=sheets.handleInsertCol({id:sheets.EffectRefRangId.InsertColCommandId,params:{range,unitId:"",subUnitId:"",direction:core.Direction.RIGHT}},oldCell);return sheets.runRefRangeMutations(operators,oldCell)}__name(handleRefInsertCol,"handleRefInsertCol");function handleRefRemoveRow(range,oldCell){const operators=sheets.handleIRemoveRow({id:sheets.EffectRefRangId.RemoveRowCommandId,params:{range}},oldCell);return sheets.runRefRangeMutations(operators,oldCell)}__name(handleRefRemoveRow,"handleRefRemoveRow");function handleRefRemoveCol(range,oldCell){const operators=sheets.handleIRemoveCol({id:sheets.EffectRefRangId.RemoveColCommandId,params:{range}},oldCell);return sheets.runRefRangeMutations(operators,oldCell)}__name(handleRefRemoveCol,"handleRefRemoveCol");function handleRefDeleteMoveLeft(range,oldCell){const operators=sheets.handleDeleteRangeMoveLeft({id:sheets.EffectRefRangId.DeleteRangeMoveLeftCommandId,params:{range}},oldCell);return sheets.runRefRangeMutations(operators,oldCell)}__name(handleRefDeleteMoveLeft,"handleRefDeleteMoveLeft");function handleRefDeleteMoveUp(range,oldCell){const operators=sheets.handleDeleteRangeMoveUp({id:sheets.EffectRefRangId.DeleteRangeMoveUpCommandId,params:{range}},oldCell);return sheets.runRefRangeMutations(operators,oldCell)}__name(handleRefDeleteMoveUp,"handleRefDeleteMoveUp");function handleRefInsertMoveDown(range,oldCell){const operators=sheets.handleInsertRangeMoveDown({id:sheets.EffectRefRangId.InsertRangeMoveDownCommandId,params:{range}},oldCell);return sheets.runRefRangeMutations(operators,oldCell)}__name(handleRefInsertMoveDown,"handleRefInsertMoveDown");function handleRefInsertMoveRight(range,oldCell){const operators=sheets.handleInsertRangeMoveRight({id:sheets.EffectRefRangId.InsertRangeMoveRightCommandId,params:{range}},oldCell);return sheets.runRefRangeMutations(operators,oldCell)}__name(handleRefInsertMoveRight,"handleRefInsertMoveRight");function getRedoFormulaData(rangeList,oldFormulaMatrix,newFormulaMatrix){const redoFormulaData=new core.ObjectMatrix({});return rangeList.forEach(item=>{const{oldCell,newCell}=item,{startRow:oldStartRow,startColumn:oldStartColumn}=oldCell,newFormula=newFormulaMatrix.getValue(oldStartRow,oldStartColumn)||oldFormulaMatrix.getValue(oldStartRow,oldStartColumn),newValue=formulaDataItemToCellData(newFormula);if(redoFormulaData.setValue(oldStartRow,oldStartColumn,{f:null,si:null}),newCell){const{startRow:newStartRow,startColumn:newStartColumn}=newCell;redoFormulaData.setValue(newStartRow,newStartColumn,newValue)}}),redoFormulaData.clone()}__name(getRedoFormulaData,"getRedoFormulaData");function getUndoFormulaData(rangeList,oldFormulaMatrix){const undoFormulaData=new core.ObjectMatrix({});return rangeList.reverse().forEach(item=>{const{oldCell,newCell}=item,{startRow:oldStartRow,startColumn:oldStartColumn}=oldCell,oldFormula=oldFormulaMatrix.getValue(oldStartRow,oldStartColumn),oldValue=formulaDataItemToCellData(oldFormula);if(newCell){const{startRow:newStartRow,startColumn:newStartColumn}=newCell;undoFormulaData.setValue(newStartRow,newStartColumn,{f:null,si:null})}undoFormulaData.setValue(oldStartRow,oldStartColumn,oldValue)}),undoFormulaData.clone()}__name(getUndoFormulaData,"getUndoFormulaData");function formulaDataItemToCellData(formulaDataItem){if(formulaDataItem==null)return;const{f:f2,si,x=0,y=0}=formulaDataItem,checkFormulaString=core.isFormulaString(f2),checkFormulaId=core.isFormulaId(si);if(!checkFormulaString&&!checkFormulaId)return{f:null,si:null};const cellData={};return checkFormulaId&&(cellData.si=si),checkFormulaString&&x===0&&y===0&&(cellData.f=f2),cellData.f===void 0&&(cellData.f=null),cellData.si===void 0&&(cellData.si=null),cellData}__name(formulaDataItemToCellData,"formulaDataItemToCellData");function formulaDataToCellData(formulaData){const cellData=new core.ObjectMatrix({});return new core.ObjectMatrix(formulaData).forValue((r,c,formulaDataItem)=>{const cellDataItem=formulaDataItemToCellData(formulaDataItem);cellData.setValue(r,c,cellDataItem)}),cellData.clone()}__name(formulaDataToCellData,"formulaDataToCellData");function isFormulaDataItem(cell){const formulaString=(cell==null?void 0:cell.f)||"",formulaId=(cell==null?void 0:cell.si)||"",checkFormulaString=core.isFormulaString(formulaString),checkFormulaId=core.isFormulaId(formulaId);return!!(checkFormulaString||checkFormulaId)}__name(isFormulaDataItem,"isFormulaDataItem");var __defProp$a=Object.defineProperty,__getOwnPropDesc$a=Object.getOwnPropertyDescriptor,__decorateClass$a=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$a(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$a(target,key,result),result},"__decorateClass$a"),__decorateParam$a=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$a"),_a10;let UpdateFormulaController=(_a10=class extends core.Disposable{constructor(_univerInstanceService,_commandService,_lexerTreeBuilder,_formulaDataModel,_sheetInterceptorService,_selectionManagerService,_editorService,_injector){super(),this._univerInstanceService=_univerInstanceService,this._commandService=_commandService,this._lexerTreeBuilder=_lexerTreeBuilder,this._formulaDataModel=_formulaDataModel,this._sheetInterceptorService=_sheetInterceptorService,this._selectionManagerService=_selectionManagerService,this._editorService=_editorService,this._injector=_injector,this._initialize()}_initialize(){this._commandExecutedListener()}_commandExecutedListener(){this.disposeWithMe(this._sheetInterceptorService.interceptCommand({getMutations:__name(command=>this._getUpdateFormula(command),"getMutations")})),this.disposeWithMe(this._commandService.onCommandExecuted((command,options)=>{if(command.params)if(command.id===sheets.SetRangeValuesMutation.id){const params=command.params;if(options&&options.onlyLocal===!0||params.trigger===sheets.SetStyleCommand.id||params.trigger===sheets.SetBorderCommand.id||params.trigger===sheets.ClearSelectionFormatCommand.id)return;this._handleSetRangeValuesMutation(params)}else if(command.id===sheets.RemoveSheetMutation.id){const{subUnitId:sheetId,unitId}=command.params;this._handleRemoveSheetMutation(unitId,sheetId)}else command.id===sheets.InsertSheetMutation.id&&this._handleInsertSheetMutation(command.params)})),this.disposeWithMe(core.toDisposable(rxjs.merge(this._univerInstanceService.getTypeOfUnitAdded$(core.UniverInstanceType.UNIVER_SHEET),this._univerInstanceService.getTypeOfUnitAdded$(core.UniverInstanceType.UNIVER_DOC),this._univerInstanceService.getTypeOfUnitAdded$(core.UniverInstanceType.UNIVER_SLIDE)).pipe(rxjs.filter(unit=>this._editorService.getEditor(unit.getUnitId())==null),rxjs.filter(unit=>!core.isInternalEditorID(unit.getUnitId()))).subscribe(unit=>this._handleUnitAdded(unit)))),this.disposeWithMe(core.toDisposable(rxjs.merge(this._univerInstanceService.getTypeOfUnitDisposed$(core.UniverInstanceType.UNIVER_SHEET).pipe(rxjs.map(sheet=>sheet.getUnitId())),this._univerInstanceService.getTypeOfUnitDisposed$(core.UniverInstanceType.UNIVER_DOC).pipe(rxjs.map(doc=>doc.getUnitId())),this._univerInstanceService.getTypeOfUnitDisposed$(core.UniverInstanceType.UNIVER_SLIDE).pipe(rxjs.map(slide=>slide.getUnitId()))).pipe(rxjs.filter(unitId=>this._editorService.getEditor(unitId)==null)).subscribe(id=>this._handleRemoveSheetMutation(id))))}_handleSetRangeValuesMutation(params){const{subUnitId:sheetId,unitId,cellValue}=params;if(cellValue==null)return;const newSheetFormulaData=this._formulaDataModel.updateFormulaData(unitId,sheetId,cellValue),newFormulaData={[unitId]:{[sheetId]:newSheetFormulaData}};this._commandService.executeCommand(sheets.SetRangeValuesMutation.id,{unitId,subUnitId:sheetId,cellValue:formulaDataToCellData(newSheetFormulaData)},{onlyLocal:!0,fromFormula:!0}),this._formulaDataModel.updateArrayFormulaCellData(unitId,sheetId,cellValue),this._formulaDataModel.updateArrayFormulaRange(unitId,sheetId,cellValue),this._commandService.executeCommand(engineFormula.SetFormulaDataMutation.id,{formulaData:newFormulaData},{onlyLocal:!0}),this._commandService.executeCommand(engineFormula.SetArrayFormulaDataMutation.id,{arrayFormulaRange:this._formulaDataModel.getArrayFormulaRange(),arrayFormulaCellData:this._formulaDataModel.getArrayFormulaCellData()},{onlyLocal:!0,remove:!0})}_handleRemoveSheetMutation(unitId,sheetId){const formulaData=this._formulaDataModel.getFormulaData(),newFormulaData=removeFormulaData(formulaData,unitId,sheetId),arrayFormulaRange=this._formulaDataModel.getArrayFormulaRange(),newArrayFormulaRange=removeFormulaData(arrayFormulaRange,unitId,sheetId),arrayFormulaCellData=this._formulaDataModel.getArrayFormulaCellData(),newArrayFormulaCellData=removeFormulaData(arrayFormulaCellData,unitId,sheetId);newFormulaData&&this._commandService.executeCommand(engineFormula.SetFormulaDataMutation.id,{formulaData:newFormulaData},{onlyLocal:!0}),newArrayFormulaRange&&newArrayFormulaCellData&&this._commandService.executeCommand(engineFormula.SetArrayFormulaDataMutation.id,{arrayFormulaRange,arrayFormulaCellData},{onlyLocal:!0})}_handleInsertSheetMutation(params){const{sheet,unitId}=params,formulaData=this._formulaDataModel.getFormulaData(),{id:sheetId,cellData}=sheet,cellMatrix=new core.ObjectMatrix(cellData),newFormulaData=engineFormula.initSheetFormulaData(formulaData,unitId,sheetId,cellMatrix);this._commandService.executeCommand(engineFormula.SetFormulaDataMutation.id,{formulaData:newFormulaData},{onlyLocal:!0})}_handleUnitAdded(unit){const formulaData=this._formulaDataModel.getFormulaData(),unitId=unit.getUnitId(),unitType=unit.type,newFormulaData={[unitId]:{}};unitType===core.UniverInstanceType.UNIVER_SHEET?unit.getSheets().forEach(worksheet=>{var _a23;const cellMatrix=worksheet.getCellMatrix(),sheetId=worksheet.getSheetId(),currentSheetData=engineFormula.initSheetFormulaData(formulaData,unitId,sheetId,cellMatrix);newFormulaData[unitId][sheetId]=(_a23=currentSheetData[unitId])==null?void 0:_a23[sheetId]}):unitType===core.UniverInstanceType.UNIVER_DOC||core.UniverInstanceType.UNIVER_SLIDE,this._commandService.executeCommand(engineFormula.SetFormulaDataMutation.id,{formulaData:newFormulaData},{onlyLocal:!0}),this._commandService.executeCommand(engineFormula.SetFormulaCalculationStartMutation.id,{commands:[],forceCalculation:!0},{onlyLocal:!0})}_getUpdateFormula(command){const{id}=command;let result=null;switch(id){case sheets.MoveRangeCommand.id:result=this._handleMoveRange(command);break;case sheets.MoveRowsCommand.id:result=this._handleMoveRows(command);break;case sheets.MoveColsCommand.id:result=this._handleMoveCols(command);break;case sheets.InsertRowCommand.id:result=this._handleInsertRow(command);break;case sheets.InsertColCommand.id:result=this._handleInsertCol(command);break;case sheets.InsertRangeMoveRightCommand.id:result=this._handleInsertRangeMoveRight(command);break;case sheets.InsertRangeMoveDownCommand.id:result=this._handleInsertRangeMoveDown(command);break;case sheets.RemoveRowCommand.id:result=this._handleRemoveRow(command);break;case sheets.RemoveColCommand.id:result=this._handleRemoveCol(command);break;case sheets.DeleteRangeMoveUpCommand.id:result=this._handleDeleteRangeMoveUp(command);break;case sheets.DeleteRangeMoveLeftCommand.id:result=this._handleDeleteRangeMoveLeft(command);break;case sheets.SetWorksheetNameCommand.id:result=this._handleSetWorksheetName(command);break;case sheets.RemoveSheetCommand.id:result=this._handleRemoveWorksheet(command);break}if(result){const{unitSheetNameMap}=this._formulaDataModel.getCalculateData(),oldFormulaData=this._formulaDataModel.getFormulaData(),{newFormulaData}=this._getFormulaReferenceMoveInfo(oldFormulaData,unitSheetNameMap,result),{undos,redos}=getFormulaReferenceMoveUndoRedo(oldFormulaData,newFormulaData,result);return{undos,redos}}return{undos:[],redos:[]}}_handleMoveRange(command){const{params}=command;if(!params)return null;const{fromRange,toRange}=params;if(!fromRange||!toRange)return null;const{unitId,sheetId}=this._getCurrentSheetInfo();return{type:0,from:fromRange,to:toRange,unitId,sheetId}}_handleMoveRows(command){const{params}=command;if(!params)return null;const{fromRange:{startRow:fromStartRow,endRow:fromEndRow},toRange:{startRow:toStartRow,endRow:toEndRow}}=params,workbook=this._univerInstanceService.getCurrentUnitForType(core.UniverInstanceType.UNIVER_SHEET),unitId=workbook.getUnitId(),worksheet=workbook.getActiveSheet();if(!worksheet)return null;const sheetId=worksheet.getSheetId(),from={startRow:fromStartRow,startColumn:0,endRow:fromEndRow,endColumn:worksheet.getColumnCount()-1,rangeType:core.RANGE_TYPE.ROW},to={startRow:toStartRow,startColumn:0,endRow:toEndRow,endColumn:worksheet.getColumnCount()-1,rangeType:core.RANGE_TYPE.ROW};return{type:1,from,to,unitId,sheetId}}_handleMoveCols(command){const{params}=command;if(!params)return null;const{fromRange:{startColumn:fromStartCol,endColumn:fromEndCol},toRange:{startColumn:toStartCol,endColumn:toEndCol}}=params,workbook=this._univerInstanceService.getCurrentUnitForType(core.UniverInstanceType.UNIVER_SHEET),unitId=workbook.getUnitId(),worksheet=workbook.getActiveSheet();if(!worksheet)return null;const sheetId=worksheet.getSheetId(),from={startRow:0,startColumn:fromStartCol,endRow:worksheet.getRowCount()-1,endColumn:fromEndCol,rangeType:core.RANGE_TYPE.COLUMN},to={startRow:0,startColumn:toStartCol,endRow:worksheet.getRowCount()-1,endColumn:toEndCol,rangeType:core.RANGE_TYPE.COLUMN};return{type:2,from,to,unitId,sheetId}}_handleInsertRow(command){const{params}=command;if(!params)return null;const{range,unitId,subUnitId}=params;return{type:3,range,unitId,sheetId:subUnitId}}_handleInsertCol(command){const{params}=command;if(!params)return null;const{range,unitId,subUnitId}=params;return{type:4,range,unitId,sheetId:subUnitId}}_handleInsertRangeMoveRight(command){const{params}=command;if(!params)return null;const{range}=params,{unitId,sheetId}=this._getCurrentSheetInfo();return{type:10,range,unitId,sheetId}}_handleInsertRangeMoveDown(command){const{params}=command;if(!params)return null;const{range}=params,{unitId,sheetId}=this._getCurrentSheetInfo();return{type:9,range,unitId,sheetId}}_handleRemoveRow(command){const{params}=command;if(!params)return null;const{range}=params,{unitId,sheetId}=this._getCurrentSheetInfo();return{type:5,range,unitId,sheetId}}_handleRemoveCol(command){const{params}=command;if(!params)return null;const{range}=params,{unitId,sheetId}=this._getCurrentSheetInfo();return{type:6,range,unitId,sheetId}}_handleDeleteRangeMoveUp(command){const{params}=command;if(!params)return null;const{range}=params,{unitId,sheetId}=this._getCurrentSheetInfo();return{type:8,range,unitId,sheetId}}_handleDeleteRangeMoveLeft(command){const{params}=command;if(!params)return null;const{range}=params,{unitId,sheetId}=this._getCurrentSheetInfo();return{type:7,range,unitId,sheetId}}_handleSetWorksheetName(command){const{params}=command;if(!params)return null;const{unitId,subUnitId,name}=params,{unitId:workbookId,sheetId}=this._getCurrentSheetInfo();return{type:11,unitId:unitId||workbookId,sheetId:subUnitId||sheetId,sheetName:name}}_handleRemoveWorksheet(command){const{params}=command;if(!params)return null;const{unitId,subUnitId}=params,{unitId:workbookId,sheetId}=this._getCurrentSheetInfo();return{type:12,unitId:unitId||workbookId,sheetId:subUnitId||sheetId}}_getFormulaReferenceMoveInfo(formulaData,unitSheetNameMap,formulaReferenceMoveParam){if(!core.Tools.isDefine(formulaData))return{newFormulaData:{},oldFormulaData:{}};const formulaDataKeys=Object.keys(formulaData);if(formulaDataKeys.length===0)return{newFormulaData:{},oldFormulaData:{}};const oldFormulaData={},newFormulaData={};for(const unitId of formulaDataKeys){const sheetData=formulaData[unitId];if(sheetData==null)continue;const sheetDataKeys=Object.keys(sheetData);core.Tools.isDefine(oldFormulaData[unitId])||(oldFormulaData[unitId]={}),core.Tools.isDefine(newFormulaData[unitId])||(newFormulaData[unitId]={});for(const sheetId of sheetDataKeys){const matrixData=new core.ObjectMatrix(sheetData[sheetId]||{}),newFormulaDataItem=new core.ObjectMatrix;matrixData.forValue((row,column,formulaDataItem)=>{var _a23;if(!formulaDataItem)return!0;const{f:formulaString,x,y,si}=formulaDataItem,sequenceNodes=this._lexerTreeBuilder.sequenceNodesBuilder(formulaString);if(sequenceNodes==null)return!0;let shouldModify=!1;const refChangeIds=[];for(let i=0,len=sequenceNodes.length;i<len;i++){const node=sequenceNodes[i];if(typeof node=="string"||node.nodeType!==engineFormula.sequenceNodeType.REFERENCE)continue;const{token}=node,sequenceGrid=engineFormula.deserializeRangeWithSheet(token),{range,sheetName,unitId:sequenceUnitId}=sequenceGrid,mapUnitId=sequenceUnitId==null||sequenceUnitId.length===0?unitId:sequenceUnitId,sequenceSheetId=(_a23=unitSheetNameMap==null?void 0:unitSheetNameMap[mapUnitId])==null?void 0:_a23[sheetName];if(!this._checkIsSameUnitAndSheet(formulaReferenceMoveParam.unitId,formulaReferenceMoveParam.sheetId,unitId,sheetId,sequenceUnitId,sequenceSheetId||""))continue;const sequenceUnitRangeWidthOffset={range,sheetId:sequenceSheetId,unitId:sequenceUnitId,sheetName,refOffsetX:x||0,refOffsetY:y||0};let newRefString=null;if(formulaReferenceMoveParam.type===11){const{unitId:userUnitId,sheetId:userSheetId,sheetName:newSheetName}=formulaReferenceMoveParam;if(newSheetName==null||sequenceSheetId==null||sequenceSheetId.length===0||userSheetId!==sequenceSheetId)continue;newRefString=engineFormula.serializeRangeToRefString({range,sheetName:newSheetName,unitId:sequenceUnitId})}else if(formulaReferenceMoveParam.type===12){const{unitId:userUnitId,sheetId:userSheetId,sheetName:newSheetName}=formulaReferenceMoveParam;if(sequenceSheetId==null||sequenceSheetId.length===0||userSheetId!==sequenceSheetId)continue;newRefString=engineFormula.ErrorType.REF}else newRefString=this._getNewRangeByMoveParam(sequenceUnitRangeWidthOffset,formulaReferenceMoveParam,unitId,sheetId);newRefString!=null&&(sequenceNodes[i]={...node,token:newRefString},shouldModify=!0,refChangeIds.push(i))}if(!shouldModify)return!0;const newSequenceNodes=this._updateRefOffset(sequenceNodes,refChangeIds,x,y);newFormulaDataItem.setValue(row,column,{f:`=${engineFormula.generateStringWithSequence(newSequenceNodes)}`})}),newFormulaData[unitId]&&(newFormulaData[unitId][sheetId]=newFormulaDataItem.getData())}}return{newFormulaData}}_getNewRangeByMoveParam(unitRangeWidthOffset,formulaReferenceMoveParam,currentFormulaUnitId,currentFormulaSheetId){const{type,unitId:userUnitId,sheetId:userSheetId,range,from,to}=formulaReferenceMoveParam,{range:unitRange,sheetId:sequenceRangeSheetId,unitId:sequenceRangeUnitId,sheetName:sequenceRangeSheetName,refOffsetX,refOffsetY}=unitRangeWidthOffset;if(!this._checkIsSameUnitAndSheet(userUnitId,userSheetId,currentFormulaUnitId,currentFormulaSheetId,sequenceRangeUnitId,sequenceRangeSheetId))return;const sequenceRange=core.Rectangle.moveOffset(unitRange,refOffsetX,refOffsetY);let newRange=null;if(type===0){if(from==null||to==null)return;const moveEdge=this._checkMoveEdge(sequenceRange,from),remainRange=core.Rectangle.getIntersects(sequenceRange,from);if(remainRange==null||moveEdge!==4)return;const operators=sheets.handleMoveRange({id:sheets.EffectRefRangId.MoveRangeCommandId,params:{toRange:to,fromRange:from}},remainRange),result=sheets.runRefRangeMutations(operators,remainRange);if(result==null)return engineFormula.ErrorType.REF;newRange=this._getMoveNewRange(moveEdge,result,from,to,sequenceRange,remainRange)}else if(type===1){if(from==null||to==null)return;const moveEdge=this._checkMoveEdge(sequenceRange,from);let remainRange=core.Rectangle.getIntersects(sequenceRange,from);if(remainRange==null&&(from.endRow<sequenceRange.startRow&&to.endRow<sequenceRange.startRow||from.startRow>sequenceRange.endRow&&to.startRow>sequenceRange.endRow))return;remainRange==null&&(remainRange={startRow:sequenceRange.startRow,endRow:sequenceRange.endRow,startColumn:sequenceRange.startColumn,endColumn:sequenceRange.endColumn,rangeType:core.RANGE_TYPE.NORMAL});const operators=sheets.handleMoveRows({id:sheets.EffectRefRangId.MoveRowsCommandId,params:{toRange:to,fromRange:from}},remainRange),result=sheets.runRefRangeMutations(operators,remainRange);if(result==null)return engineFormula.ErrorType.REF;newRange=this._getMoveNewRange(moveEdge,result,from,to,sequenceRange,remainRange)}else if(type===2){if(from==null||to==null)return;const moveEdge=this._checkMoveEdge(sequenceRange,from);let remainRange=core.Rectangle.getIntersects(sequenceRange,from);if(remainRange==null&&(from.endColumn<sequenceRange.startColumn&&to.endColumn<sequenceRange.startColumn||from.startColumn>sequenceRange.endColumn&&to.startColumn>sequenceRange.endColumn))return;remainRange==null&&(remainRange={startRow:sequenceRange.startRow,endRow:sequenceRange.endRow,startColumn:sequenceRange.startColumn,endColumn:sequenceRange.endColumn,rangeType:core.RANGE_TYPE.NORMAL});const operators=sheets.handleMoveCols({id:sheets.EffectRefRangId.MoveColsCommandId,params:{toRange:to,fromRange:from}},remainRange),result=sheets.runRefRangeMutations(operators,remainRange);if(result==null)return engineFormula.ErrorType.REF;newRange=this._getMoveNewRange(moveEdge,result,from,to,sequenceRange,remainRange)}if(range!=null){if(type===3){const operators=sheets.handleInsertRow({id:sheets.EffectRefRangId.InsertRowCommandId,params:{range,unitId:"",subUnitId:"",direction:core.Direction.DOWN}},sequenceRange),result=sheets.runRefRangeMutations(operators,sequenceRange);if(result==null)return;newRange={...sequenceRange,...result}}else if(type===4){const operators=sheets.handleInsertCol({id:sheets.EffectRefRangId.InsertColCommandId,params:{range,unitId:"",subUnitId:"",direction:core.Direction.RIGHT}},sequenceRange),result=sheets.runRefRangeMutations(operators,sequenceRange);if(result==null)return;newRange={...sequenceRange,...result}}else if(type===5){const operators=sheets.handleIRemoveRow({id:sheets.EffectRefRangId.RemoveRowCommandId,params:{range}},sequenceRange),result=sheets.runRefRangeMutations(operators,sequenceRange);if(result==null)return engineFormula.ErrorType.REF;newRange={...sequenceRange,...result}}else if(type===6){const operators=sheets.handleIRemoveCol({id:sheets.EffectRefRangId.RemoveColCommandId,params:{range}},sequenceRange),result=sheets.runRefRangeMutations(operators,sequenceRange);if(result==null)return engineFormula.ErrorType.REF;newRange={...sequenceRange,...result}}else if(type===7){const operators=sheets.handleDeleteRangeMoveLeft({id:sheets.EffectRefRangId.DeleteRangeMoveLeftCommandId,params:{range}},sequenceRange),result=sheets.runRefRangeMutations(operators,sequenceRange);if(result==null)return engineFormula.ErrorType.REF;newRange={...sequenceRange,...result}}else if(type===8){const operators=sheets.handleDeleteRangeMoveUp({id:sheets.EffectRefRangId.DeleteRangeMoveUpCommandId,params:{range}},sequenceRange),result=sheets.runRefRangeMutations(operators,sequenceRange);if(result==null)return engineFormula.ErrorType.REF;newRange={...sequenceRange,...result}}else if(type===9){const operators=sheets.handleInsertRangeMoveDown({id:sheets.EffectRefRangId.InsertRangeMoveDownCommandId,params:{range}},sequenceRange),result=sheets.runRefRangeMutations(operators,sequenceRange);if(result==null)return;newRange={...sequenceRange,...result}}else if(type===10){const operators=sheets.handleInsertRangeMoveRight({id:sheets.EffectRefRangId.InsertRangeMoveRightCommandId,params:{range}},sequenceRange),result=sheets.runRefRangeMutations(operators,sequenceRange);if(result==null)return;newRange={...sequenceRange,...result}}}if(newRange!=null)return engineFormula.serializeRangeToRefString({range:newRange,sheetName:sequenceRangeSheetName,unitId:sequenceRangeUnitId})}_checkIsSameUnitAndSheet(userUnitId,userSheetId,currentFormulaUnitId,currentFormulaSheetId,sequenceRangeUnitId,sequenceRangeSheetId){if((sequenceRangeUnitId==null||sequenceRangeUnitId.length===0)&&(sequenceRangeSheetId==null||sequenceRangeSheetId.length===0)){if(userUnitId===currentFormulaUnitId&&userSheetId===currentFormulaSheetId)return!0}else if((userUnitId===sequenceRangeUnitId||sequenceRangeUnitId==null||sequenceRangeUnitId.length===0)&&userSheetId===sequenceRangeSheetId)return!0;return!1}_updateRefOffset(sequenceNodes,refChangeIds,refOffsetX=0,refOffsetY=0){const newSequenceNodes=[];for(let i=0,len=sequenceNodes.length;i<len;i++){const node=sequenceNodes[i];if(typeof node=="string"||node.nodeType!==engineFormula.sequenceNodeType.REFERENCE||refChangeIds.includes(i)){newSequenceNodes.push(node);continue}const{token}=node,sequenceGrid=engineFormula.deserializeRangeWithSheet(token),{range,sheetName,unitId:sequenceUnitId}=sequenceGrid,newRange=core.Rectangle.moveOffset(range,refOffsetX,refOffsetY);newSequenceNodes.push({...node,token:engineFormula.serializeRangeToRefString({range:newRange,unitId:sequenceUnitId,sheetName})})}return newSequenceNodes}_checkMoveEdge(originRange,fromRange){const{startRow,startColumn,endRow,endColumn}=originRange,{startRow:fromStartRow,startColumn:fromStartColumn,endRow:fromEndRow,endColumn:fromEndColumn}=fromRange;if(startRow>=fromStartRow&&endRow<=fromEndRow&&startColumn>=fromStartColumn&&endColumn<=fromEndColumn)return 4;if(startColumn>=fromStartColumn&&endColumn<=fromEndColumn&&startRow>=fromStartRow&&startRow<=fromEndRow&&endRow>fromEndRow)return 0;if(startColumn>=fromStartColumn&&endColumn<=fromEndColumn&&endRow>=fromStartRow&&endRow<=fromEndRow&&startRow<fromStartRow)return 1;if(startRow>=fromStartRow&&endRow<=fromEndRow&&startColumn>=fromStartColumn&&startColumn<=fromEndColumn&&endColumn>fromEndColumn)return 2;if(startRow>=fromStartRow&&endRow<=fromEndRow&&endColumn>=fromStartColumn&&endColumn<=fromEndColumn&&startColumn<fromStartColumn)return 3}_getMoveNewRange(moveEdge,result,from,to,origin,remain){const{startRow,endRow,startColumn,endColumn}=result,{startRow:fromStartRow,startColumn:fromStartColumn,endRow:fromEndRow,endColumn:fromEndColumn,rangeType:fromRangeType=core.RANGE_TYPE.NORMAL}=from,{startRow:toStartRow,startColumn:toStartColumn,endRow:toEndRow,endColumn:toEndColumn}=to,{startRow:remainStartRow,endRow:remainEndRow,startColumn:remainStartColumn,endColumn:remainEndColumn}=remain,{startRow:originStartRow,endRow:originEndRow,startColumn:originStartColumn,endColumn:originEndColumn}=origin,newRange={...origin};if(moveEdge===0)if(startColumn===originStartColumn&&endColumn===originEndColumn)if(startRow<originStartRow)newRange.startRow=startRow;else if(startRow>=originEndRow)newRange.endRow-=fromEndRow+1-originStartRow;else return;else return;else if(moveEdge===1)if(startColumn===originStartColumn&&endColumn===originEndColumn)if(endRow>originEndRow)newRange.endRow=endRow;else if(endRow<=originStartRow)newRange.startRow+=originEndRow-fromStartRow+1;else return;else return;else if(moveEdge===2)if(startRow===originStartRow&&endRow===originEndRow)if(startColumn<originStartColumn)newRange.startColumn=startColumn;else if(startColumn>=originEndColumn)newRange.endColumn-=fromEndColumn+1-originStartColumn;else return;else return;else if(moveEdge===3)if(startRow===originStartRow&&endRow===originEndRow)if(endColumn>originEndColumn)newRange.endColumn=endColumn;else if(endColumn<=originStartColumn)newRange.startColumn+=originEndColumn-fromStartColumn+1;else return;else return;else moveEdge===4?(newRange.startRow=startRow,newRange.startColumn=startColumn,newRange.endRow=endRow,newRange.endColumn=endColumn):fromStartColumn<=originStartColumn&&fromEndColumn>=originEndColumn?from.endRow<originStartRow?(toStartRow>=originStartRow&&(newRange.startRow-=fromEndRow-fromStartRow+1),toStartRow>=originEndRow&&(newRange.endRow-=fromEndRow-fromStartRow+1)):from.startRow>originEndRow&&(toEndRow<=originEndRow&&(newRange.endRow+=fromEndRow-fromStartRow+1),toEndRow<=originStartRow&&(newRange.startRow+=fromEndRow-fromStartRow+1)):fromStartRow<=originStartRow&&fromEndRow>=originEndRow?from.endColumn<originStartColumn?(toStartColumn>=originStartColumn&&(newRange.startColumn-=fromEndColumn-fromStartColumn+1),toStartColumn>=originEndColumn&&(newRange.endColumn-=fromEndColumn-fromStartColumn+1)):from.startColumn>originEndColumn&&(toEndColumn<=originEndColumn&&(newRange.endColumn+=fromEndColumn-fromStartColumn+1),toEndColumn<=originStartColumn&&(newRange.startColumn+=fromEndColumn-fromStartColumn+1)):((toStartColumn<=remainEndColumn+1&&toEndColumn>=originEndColumn||toStartColumn<=originStartColumn&&toEndColumn>=remainStartColumn-1)&&toStartRow<=originStartRow&&toEndRow>=originEndRow||(toStartRow<=remainEndRow+1&&toEndRow>=originEndRow||toStartRow<=originStartRow&&toEndRow>=remainStartRow-1)&&toStartColumn<=originStartColumn&&toEndColumn>=originEndColumn)&&(newRange.startRow=startRow,newRange.startColumn=startColumn,newRange.endRow=endRow,newRange.endColumn=endColumn);return newRange}_getCurrentSheetInfo(){var _a23;const workbook=this._univerInstanceService.getCurrentUnitForType(core.UniverInstanceType.UNIVER_SHEET),unitId=workbook.getUnitId(),sheetId=((_a23=workbook.getActiveSheet())==null?void 0:_a23.getSheetId())||"";return{unitId,sheetId}}},__name(_a10,"UpdateFormulaController"),_a10);UpdateFormulaController=__decorateClass$a([core.OnLifecycle(core.LifecycleStages.Ready,UpdateFormulaController),__decorateParam$a(0,core.IUniverInstanceService),__decorateParam$a(1,core.ICommandService),__decorateParam$a(2,core.Inject(engineFormula.LexerTreeBuilder)),__decorateParam$a(3,core.Inject(engineFormula.FormulaDataModel)),__decorateParam$a(4,core.Inject(sheets.SheetInterceptorService)),__decorateParam$a(5,core.Inject(sheets.SheetsSelectionsService)),__decorateParam$a(6,docsUi.IEditorService),__decorateParam$a(7,core.Inject(core.Injector))],UpdateFormulaController);var __defProp$9=Object.defineProperty,__getOwnPropDesc$9=Object.getOwnPropertyDescriptor,__decorateClass$9=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$9(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$9(target,key,result),result},"__decorateClass$9"),__decorateParam$9=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$9");const RemoteRegisterFunctionServiceName="sheets-formula.remote-register-function.service",IRemoteRegisterFunctionService=core.createIdentifier(RemoteRegisterFunctionServiceName);var _a11;exports.RemoteRegisterFunctionService=(_a11=class{constructor(_functionService){this._functionService=_functionService}async registerFunctions(serializedFuncs){const functionList=serializedFuncs.map(([func,name])=>createFunction(func,name));this._functionService.registerExecutors(...functionList)}async unregisterFunctions(names){this._functionService.unregisterDescriptions(...names)}},__name(_a11,"RemoteRegisterFunctionService"),_a11);exports.RemoteRegisterFunctionService=__decorateClass$9([__decorateParam$9(0,engineFormula.IFunctionService)],exports.RemoteRegisterFunctionService);function createFunction(functionString,functionName){const instance=new engineFormula.CustomFunction(functionName),functionCalculate=new Function(`return ${functionString}`)();return instance.calculateCustom=functionCalculate,instance}__name(createFunction,"createFunction");var __defProp$8=Object.defineProperty,__getOwnPropDesc$8=Object.getOwnPropertyDescriptor,__decorateClass$8=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$8(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$8(target,key,result),result},"__decorateClass$8"),__decorateParam$8=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$8");const IRegisterFunctionService=core.createIdentifier("sheets-formula.register-function-service");var _a12;exports.RegisterFunctionService=(_a12=class extends core.Disposable{constructor(_localeService,_descriptionService,_functionService,_remoteRegisterFunctionService){super(),this._localeService=_localeService,this._descriptionService=_descriptionService,this._functionService=_functionService,this._remoteRegisterFunctionService=_remoteRegisterFunctionService}registerFunctions(params){const{locales,description,calculate}=params;locales&&this._localeService.load(locales);const disposables=new core.DisposableCollection;if(description)disposables.add(this._descriptionService.registerDescriptions(description));else{const descriptionList=calculate.map(([_func,functionName,functionIntroduction])=>({functionName,functionType:engineFormula.FunctionType.User,description:"",abstract:functionIntroduction||"",functionParameter:[]}));disposables.add(this._functionService.registerDescriptions(...descriptionList))}return disposables.add(this._registerLocalExecutors(calculate)),this._remoteRegisterFunctionService&&disposables.add(this._registerRemoteExecutors(calculate)),disposables}_registerLocalExecutors(list){const names=list.map(([_func,name])=>name),functions=list.map(([func,name])=>{const instance=new engineFormula.CustomFunction(name);return instance.calculateCustom=func,instance});return this._functionService.registerExecutors(...functions),core.toDisposable(()=>this._functionService.unregisterExecutors(...names))}_registerRemoteExecutors(list){const functionNameList=[],functions=list.map(([func,name])=>(functionNameList.push(name),[func.toString(),name]));return this._remoteRegisterFunctionService.registerFunctions(functions),core.toDisposable(()=>this._remoteRegisterFunctionService.unregisterFunctions(functionNameList))}},__name(_a12,"RegisterFunctionService"),_a12);exports.RegisterFunctionService=__decorateClass$8([__decorateParam$8(0,core.Inject(core.LocaleService)),__decorateParam$8(1,core.Inject(IDescriptionService)),__decorateParam$8(2,engineFormula.IFunctionService),__decorateParam$8(3,core.Optional(IRemoteRegisterFunctionService))],exports.RegisterFunctionService);var __defProp$7=Object.defineProperty,__getOwnPropDesc$7=Object.getOwnPropertyDescriptor,__decorateClass$7=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$7(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$7(target,key,result),result},"__decorateClass$7"),__decorateParam$7=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$7");const SCOPE_WORKBOOK_VALUE="AllDefaultWorkbook";var _a13;let DefinedNameController=(_a13=class extends core.Disposable{constructor(_descriptionService,_definedNamesService,_univerInstanceService,_commandService){super();__publicField(this,"_preUnitId",null);this._descriptionService=_descriptionService,this._definedNamesService=_definedNamesService,this._univerInstanceService=_univerInstanceService,this._commandService=_commandService,this._initialize()}_initialize(){this._descriptionListener(),this._changeUnitListener(),this._changeSheetListener()}_descriptionListener(){core.toDisposable(this._definedNamesService.update$.subscribe(()=>{this._registerDescriptions()}))}_changeUnitListener(){core.toDisposable(this._univerInstanceService.getCurrentTypeOfUnit$(core.UniverInstanceType.UNIVER_SHEET).subscribe(()=>{this._unRegisterDescriptions(),this._registerDescriptions()}))}_changeSheetListener(){this.disposeWithMe(this._commandService.onCommandExecuted((command,options)=>{if(!(options!=null&&options.fromCollab)){if(command.id===sheets.SetWorksheetActiveOperation.id)this._unregisterDescriptionsForNotInSheetId(),this._registerDescriptions();else if(command.id===sheets.InsertDefinedNameCommand.id){const param=command.params;this._registerDescription(param)}else if(command.id===sheets.RemoveDefinedNameCommand.id){const param=command.params;this._unregisterDescription(param)}else if(command.id===sheets.SetDefinedNameCommand.id){const param=command.params;this._unregisterDescription(param.oldDefinedName),this._registerDescription(param.newDefinedName)}}}))}_registerDescription(param){const{unitId,sheetId}=this._getUnitIdAndSheetId();if(unitId==null||sheetId==null)return;const{name,comment,formulaOrRefString,localSheetId}=param;!this._descriptionService.hasDescription(name)&&(localSheetId==null||localSheetId===SCOPE_WORKBOOK_VALUE||localSheetId===sheetId)&&this._descriptionService.registerDescriptions([{functionName:name,description:formulaOrRefString+(comment||""),abstract:formulaOrRefString,functionType:engineFormula.FunctionType.DefinedName,functionParameter:[]}])}_unregisterDescription(param){const{name}=param;this._descriptionService.unregisterDescriptions([name])}_unRegisterDescriptions(){if(this._preUnitId==null)return;const definedNames=this._definedNamesService.getDefinedNameMap(this._preUnitId);if(definedNames==null)return;const functionList=[];Array.from(Object.values(definedNames)).forEach(value=>{const{name}=value;functionList.push(name)}),this._descriptionService.unregisterDescriptions(functionList),this._preUnitId=null}_getUnitIdAndSheetId(){const workbook=this._univerInstanceService.getCurrentUnitForType(core.UniverInstanceType.UNIVER_SHEET);if(workbook==null)return{};const worksheet=workbook.getActiveSheet();return worksheet==null?{}:{unitId:workbook.getUnitId(),sheetId:worksheet.getSheetId()}}_registerDescriptions(){const{unitId,sheetId}=this._getUnitIdAndSheetId();if(unitId==null||sheetId==null)return;const definedNames=this._definedNamesService.getDefinedNameMap(unitId);if(!definedNames)return;const functionList=[];this._preUnitId=unitId,Array.from(Object.values(definedNames)).forEach(value=>{const{name,comment,formulaOrRefString,localSheetId}=value;!this._descriptionService.hasDescription(name)&&(localSheetId==null||localSheetId===SCOPE_WORKBOOK_VALUE||localSheetId===sheetId)&&functionList.push({functionName:name,description:formulaOrRefString+(comment||""),abstract:formulaOrRefString,functionType:engineFormula.FunctionType.DefinedName,functionParameter:[]})}),this._descriptionService.registerDescriptions(functionList)}_unregisterDescriptionsForNotInSheetId(){const{unitId,sheetId}=this._getUnitIdAndSheetId();if(unitId==null||sheetId==null)return;const definedNames=this._definedNamesService.getDefinedNameMap(unitId);if(!definedNames)return;const functionList=[];Array.from(Object.values(definedNames)).forEach(value=>{const{name,localSheetId}=value;localSheetId!==SCOPE_WORKBOOK_VALUE&&localSheetId!==sheetId&&functionList.push(name)}),this._descriptionService.unregisterDescriptions(functionList)}},__name(_a13,"DefinedNameController"),_a13);DefinedNameController=__decorateClass$7([core.OnLifecycle(core.LifecycleStages.Rendered,DefinedNameController),__decorateParam$7(0,IDescriptionService),__decorateParam$7(1,engineFormula.IDefinedNamesService),__decorateParam$7(2,core.IUniverInstanceService),__decorateParam$7(3,core.ICommandService)],DefinedNameController);var __defProp$6=Object.defineProperty,__getOwnPropDesc$6=Object.getOwnPropertyDescriptor,__decorateClass$6=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$6(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$6(target,key,result),result},"__decorateClass$6"),__decorateParam$6=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$6"),_a14;exports.FormulaRefRangeService=(_a14=class extends core.Disposable{constructor(_refRangeService,_lexerTreeBuilder,_univerInstanceService){super(),this._refRangeService=_refRangeService,this._lexerTreeBuilder=_lexerTreeBuilder,this._univerInstanceService=_univerInstanceService}registerFormula(formula,callback){const rangeMap=new Map,sequenceNodes=this._lexerTreeBuilder.sequenceNodesBuilder(formula),disposableCollection=new core.DisposableCollection,handleChange=__name(params=>{const workbook=this._univerInstanceService.getCurrentUnitForType(core.UniverInstanceType.UNIVER_SHEET),worksheet=workbook.getActiveSheet(),unitId=workbook.getUnitId(),subUnitId=worksheet==null?void 0:worksheet.getSheetId(),transformSequenceNodes=sequenceNodes==null?void 0:sequenceNodes.map(node=>{if(typeof node=="object"&&node.nodeType===engineFormula.sequenceNodeType.REFERENCE){const rangeInfo=rangeMap.get(node.token);if(rangeInfo.unitId&&rangeInfo.unitId!==unitId&&rangeInfo.subUnitId&&rangeInfo.subUnitId!==subUnitId)return node;const newRange=sheets.handleDefaultRangeChangeWithEffectRefCommands(rangeInfo.range,params);let newToken="";return rangeInfo.unitId&&rangeInfo.sheetName?newToken=engineFormula.serializeRangeWithSpreadsheet(rangeInfo.unitId,rangeInfo.sheetName,rangeInfo.range):rangeInfo.sheetName?newToken=engineFormula.serializeRangeWithSheet(rangeInfo.sheetName,rangeInfo.range):newToken=newRange?engineFormula.serializeRange(newRange):engineFormula.ErrorType.ERROR,{...node,token:newToken}}else return node}),newFormulaString=transformSequenceNodes&&engineFormula.generateStringWithSequence(transformSequenceNodes);return callback(`=${newFormulaString}`)},"handleChange");return sequenceNodes==null||sequenceNodes.forEach(node=>{if(typeof node=="object"&&node.nodeType===engineFormula.sequenceNodeType.REFERENCE){const gridRangeName=engineFormula.deserializeRangeWithSheet(node.token),{range,unitId,sheetName}=gridRangeName,workbook=unitId?this._univerInstanceService.getUniverSheetInstance(unitId):this._univerInstanceService.getCurrentUnitForType(core.UniverInstanceType.UNIVER_SHEET),worksheet=sheetName?workbook==null?void 0:workbook.getSheetBySheetName(sheetName):workbook==null?void 0:workbook.getActiveSheet();if(!worksheet)return;const sheetId=worksheet.getSheetId(),item={unitId,subUnitId:sheetId,range,sheetName};rangeMap.set(node.token,item),disposableCollection.add(this._refRangeService.registerRefRange(range,handleChange,unitId,sheetId))}}),disposableCollection}},__name(_a14,"FormulaRefRangeService"),_a14);exports.FormulaRefRangeService=__decorateClass$6([__decorateParam$6(0,core.Inject(sheets.RefRangeService)),__decorateParam$6(1,core.Inject(engineFormula.LexerTreeBuilder)),__decorateParam$6(2,core.IUniverInstanceService)],exports.FormulaRefRangeService);var FormulaResultStatus=(FormulaResultStatus2=>(FormulaResultStatus2[FormulaResultStatus2.NOT_REGISTER=1]="NOT_REGISTER",FormulaResultStatus2[FormulaResultStatus2.SUCCESS=2]="SUCCESS",FormulaResultStatus2[FormulaResultStatus2.WAIT=3]="WAIT",FormulaResultStatus2[FormulaResultStatus2.ERROR=4]="ERROR",FormulaResultStatus2))(FormulaResultStatus||{}),__defProp$5=Object.defineProperty,__getOwnPropDesc$5=Object.getOwnPropertyDescriptor,__decorateClass$5=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$5(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$5(target,key,result),result},"__decorateClass$5"),__decorateParam$5=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$5"),_a15;exports.RegisterOtherFormulaService=(_a15=class extends core.Disposable{constructor(_commandService,_activeDirtyManagerService){super();__publicField(this,"_formulaCacheMap",new Map);__publicField(this,"_formulaChange$",new rxjs.Subject);__publicField(this,"formulaChange$",this._formulaChange$.asObservable());__publicField(this,"_formulaResult$",new rxjs.Subject);__publicField(this,"formulaResult$",this._formulaResult$.asObservable());this._commandService=_commandService,this._activeDirtyManagerService=_activeDirtyManagerService,this._initFormulaRegister(),this._initFormulaCalculationResultChange()}dispose(){super.dispose(),this._formulaChange$.complete(),this._formulaResult$.complete()}_ensureCacheMap(unitId,subUnitId){let unitMap=this._formulaCacheMap.get(unitId);unitMap||(unitMap=new Map,this._formulaCacheMap.set(unitId,unitMap));let subUnitMap=unitMap.get(subUnitId);return subUnitMap||(subUnitMap=new Map,unitMap.set(subUnitId,subUnitMap)),subUnitMap}_createFormulaId(unitId,subUnitId){return`formula.${unitId}_${subUnitId}_${core.Tools.generateRandomId(8)}`}_initFormulaRegister(){this._activeDirtyManagerService.register(OtherFormulaMarkDirty.id,{commandId:OtherFormulaMarkDirty.id,getDirtyData(commandInfo){return{dirtyUnitOtherFormulaMap:commandInfo.params}}}),this.formulaChange$.pipe(rxjs.bufferTime(16),rxjs.filter(list=>!!list.length),rxjs.map(list=>list.reduce((result,cur)=>{const{unitId,subUnitId,formulaId,formulaText}=cur;return result[unitId]||(result[unitId]={}),result[unitId][subUnitId]||(result[unitId][subUnitId]={}),result[unitId][subUnitId][formulaId]={f:formulaText},result},{}))).subscribe(result=>{for(const unitId in result)for(const subUnitId in result[unitId]){const value=result[unitId][subUnitId],config={unitId,subUnitId,formulaMap:value};this._commandService.executeCommand(engineFormula.SetOtherFormulaMutation.id,config).then(()=>{this._commandService.executeCommand(OtherFormulaMarkDirty.id,{[unitId]:{[subUnitId]:value}})})}})}_initFormulaCalculationResultChange(){this.disposeWithMe(this._commandService.onCommandExecuted(commandInfo=>{if(commandInfo.id===engineFormula.SetFormulaCalculationResultMutation.id){const params=commandInfo.params,{unitOtherData}=params,results={};for(const unitId in unitOtherData){const unitData=unitOtherData[unitId],unitResults={};results[unitId]=unitResults;for(const subUnitId in unitData){const cacheMap=this._ensureCacheMap(unitId,subUnitId),subUnitData=unitData[subUnitId],subUnitResults=[];unitResults[subUnitId]=subUnitResults;for(const formulaId in subUnitData){const current=subUnitData[formulaId];if(cacheMap.has(formulaId)){const item=cacheMap.get(formulaId);item.result=current,item.status=FormulaResultStatus.SUCCESS,item.callbacks.forEach(callback=>{callback(current)}),item.callbacks.clear(),subUnitResults.push(item)}}}}this._formulaResult$.next(results)}}))}registerFormula(unitId,subUnitId,formulaText,extra){const formulaId=this._createFormulaId(unitId,subUnitId);return this._ensureCacheMap(unitId,subUnitId).set(formulaId,{result:void 0,status:FormulaResultStatus.WAIT,formulaId,callbacks:new Set,extra}),this._formulaChange$.next({unitId,subUnitId,formulaText,formulaId}),formulaId}deleteFormula(unitId,subUnitId,formulaIdList){const params={unitId,subUnitId,formulaIdList};this._commandService.executeCommand(engineFormula.RemoveOtherFormulaMutation.id,params);const cacheMap=this._ensureCacheMap(unitId,subUnitId);formulaIdList.forEach(id=>cacheMap.delete(id))}getFormulaValue(unitId,subUnitId,formulaId){const cacheMap=this._ensureCacheMap(unitId,subUnitId),item=cacheMap.get(formulaId);return item?item.status===FormulaResultStatus.SUCCESS||item.status===FormulaResultStatus.ERROR?Promise.resolve(item):new Promise(resolve=>{item.callbacks.add(()=>{resolve(cacheMap.get(formulaId))})}):Promise.resolve(null)}getFormulaValueSync(unitId,subUnitId,formulaId){return this._ensureCacheMap(unitId,subUnitId).get(formulaId)}},__name(_a15,"RegisterOtherFormulaService"),_a15);exports.RegisterOtherFormulaService=__decorateClass$5([__decorateParam$5(0,core.ICommandService),__decorateParam$5(1,engineFormula.IActiveDirtyManagerService)],exports.RegisterOtherFormulaService);var __defProp$4=Object.defineProperty,__getOwnPropDesc$4=Object.getOwnPropertyDescriptor,__decorateClass$4=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$4(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$4(target,key,result),result},"__decorateClass$4"),__decorateParam$4=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$4");const ALERT_KEY="SHEET_FORMULA_ALERT",ErrorTypeToMessageMap={[engineFormula.ErrorType.DIV_BY_ZERO]:"divByZero",[engineFormula.ErrorType.NAME]:"name",[engineFormula.ErrorType.VALUE]:"value",[engineFormula.ErrorType.NUM]:"num",[engineFormula.ErrorType.NA]:"na",[engineFormula.ErrorType.CYCLE]:"cycle",[engineFormula.ErrorType.REF]:"ref",[engineFormula.ErrorType.SPILL]:"spill",[engineFormula.ErrorType.CALC]:"calc",[engineFormula.ErrorType.ERROR]:"error",[engineFormula.ErrorType.CONNECT]:"connect",[engineFormula.ErrorType.NULL]:"null"};var _a16;let FormulaAlertRenderController=(_a16=class extends core.Disposable{constructor(_context,_hoverManagerService,_cellAlertManagerService,_localeService,_zenZoneService){super(),this._context=_context,this._hoverManagerService=_hoverManagerService,this._cellAlertManagerService=_cellAlertManagerService,this._localeService=_localeService,this._zenZoneService=_zenZoneService,this._init()}_init(){this._initCellAlertPopup(),this._initZenService()}_initCellAlertPopup(){this.disposeWithMe(this._hoverManagerService.currentCell$.subscribe(cellPos=>{var _a23;if(cellPos){const worksheet=this._context.unit.getActiveSheet();if(!worksheet)return;const cellData=worksheet.getCell(cellPos.location.row,cellPos.location.col);if(core.isICellData(cellData)){const errorType=extractFormulaError(cellData);if(!errorType)return;const currentAlert=this._cellAlertManagerService.currentAlert.get(ALERT_KEY),currentLoc=(_a23=currentAlert==null?void 0:currentAlert.alert)==null?void 0:_a23.location;if(currentLoc&&currentLoc.row===cellPos.location.row&&currentLoc.col===cellPos.location.col&&currentLoc.subUnitId===cellPos.location.subUnitId&&currentLoc.unitId===cellPos.location.unitId)return;this._cellAlertManagerService.showAlert({type:sheetsUi.CellAlertType.ERROR,title:this._localeService.t("formula.error.title"),message:this._localeService.t(`formula.error.${ErrorTypeToMessageMap[errorType]}`),location:cellPos.location,width:200,height:74,key:ALERT_KEY});return}}this._cellAlertManagerService.removeAlert(ALERT_KEY)}))}_initZenService(){this.disposeWithMe(this._zenZoneService.visible$.subscribe(visible=>{visible&&this._cellAlertManagerService.removeAlert(ALERT_KEY)}))}},__name(_a16,"FormulaAlertRenderController"),_a16);FormulaAlertRenderController=__decorateClass$4([__decorateParam$4(1,core.Inject(sheetsUi.HoverManagerService)),__decorateParam$4(2,core.Inject(sheetsUi.CellAlertManagerService)),__decorateParam$4(3,core.Inject(core.LocaleService)),__decorateParam$4(4,ui.IZenZoneService)],FormulaAlertRenderController);var __defProp$3=Object.defineProperty,__getOwnPropDesc$3=Object.getOwnPropertyDescriptor,__decorateClass$3=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$3(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$3(target,key,result),result},"__decorateClass$3"),__decorateParam$3=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$3");const FORMULA_ERROR_MARK={tl:{size:6,color:"#409f11"}};var _a17;let FormulaRenderManagerController=(_a17=class extends core.RxDisposable{constructor(_sheetInterceptorService){super(),this._sheetInterceptorService=_sheetInterceptorService,this._init()}_init(){this.disposeWithMe(this._sheetInterceptorService.intercept(sheets.INTERCEPTOR_POINT.CELL_CONTENT,{effect:core.InterceptorEffectEnum.Style,handler:__name((cell,pos,next)=>extractFormulaError(cell)?next({...cell,markers:{...cell==null?void 0:cell.markers,...FORMULA_ERROR_MARK}}):next(cell),"handler"),priority:10}))}},__name(_a17,"FormulaRenderManagerController"),_a17);FormulaRenderManagerController=__decorateClass$3([core.OnLifecycle(core.LifecycleStages.Rendered,FormulaRenderManagerController),__decorateParam$3(0,core.Inject(sheets.SheetInterceptorService))],FormulaRenderManagerController);var __defProp$2=Object.defineProperty,__getOwnPropDesc$2=Object.getOwnPropertyDescriptor,__decorateClass$2=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$2(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$2(target,key,result),result},"__decorateClass$2"),__decorateParam$2=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$2"),_a18;let RefSelectionsRenderService=(_a18=class extends sheetsUi.BaseSelectionRenderService{constructor(_context,injector,themeService,shortcutService,sheetSkeletonManagerService,_refSelectionsService){super(injector,themeService,shortcutService,sheetSkeletonManagerService);__publicField(this,"_workbookSelections");__publicField(this,"_eventDisposables");this._context=_context,this._refSelectionsService=_refSelectionsService,this._workbookSelections=this._refSelectionsService.getWorkbookSelections(this._context.unitId),this._initSelectionChangeListener(),this._initSkeletonChangeListener(),this._initUserActionSyncListener(),this._setSelectionStyle(getDefaultRefSelectionStyle(this._themeService)),this._remainLastEnabled=!0}getLocation(){return this._skeleton.getLocation()}setRemainLastEnabled(enabled){this._remainLastEnabled=enabled}setSkipLastEnabled(enabled){this._skipLastEnabled=enabled}clearLastSelection(){const last=this._selectionControls[this._selectionControls.length-1];last&&(last.dispose(),this._selectionControls.pop())}enableSelectionChanging(){return this._disableSelectionChanging(),this._eventDisposables=this._initCanvasEventListeners(),core.toDisposable(()=>this._disableSelectionChanging())}_disableSelectionChanging(){var _a23;(_a23=this._eventDisposables)==null||_a23.dispose(),this._eventDisposables=null}_initCanvasEventListeners(){const sheetObject=this._getSheetObject(),{spreadsheetRowHeader,spreadsheetColumnHeader,spreadsheet,spreadsheetLeftTopPlaceholder}=sheetObject,{scene}=this._context,listenerDisposables=new core.DisposableCollection;return listenerDisposables.add(spreadsheet==null?void 0:spreadsheet.onPointerDown$.subscribeEvent((evt,state)=>{this._onPointerDown(evt,spreadsheet.zIndex+1,core.RANGE_TYPE.NORMAL,this._getActiveViewport(evt)),evt.button!==2&&state.stopPropagation()})),listenerDisposables.add(spreadsheetRowHeader==null?void 0:spreadsheetRowHeader.onPointerDown$.subscribeEvent((evt,state)=>{const skeleton=this._sheetSkeletonManagerService.getCurrent().skeleton,{row}=sheetsUi.getCoordByOffset(evt.offsetX,evt.offsetY,scene,skeleton);sheetsUi.checkInHeaderRanges(this._workbookSelections.getCurrentSelections(),row,core.RANGE_TYPE.ROW)||(this._onPointerDown(evt,(spreadsheet.zIndex||1)+1,core.RANGE_TYPE.ROW,this._getActiveViewport(evt),engineRender.ScrollTimerType.Y),evt.button!==2&&state.stopPropagation())})),listenerDisposables.add(spreadsheetColumnHeader==null?void 0:spreadsheetColumnHeader.onPointerDown$.subscribeEvent((evt,state)=>{const skeleton=this._sheetSkeletonManagerService.getCurrent().skeleton,{column}=sheetsUi.getCoordByOffset(evt.offsetX,evt.offsetY,scene,skeleton);sheetsUi.checkInHeaderRanges(this._workbookSelections.getCurrentSelections(),column,core.RANGE_TYPE.COLUMN)||(this._onPointerDown(evt,(spreadsheet.zIndex||1)+1,core.RANGE_TYPE.COLUMN,this._getActiveViewport(evt),engineRender.ScrollTimerType.X),evt.button!==2&&state.stopPropagation())})),listenerDisposables.add(spreadsheetLeftTopPlaceholder==null?void 0:spreadsheetLeftTopPlaceholder.onPointerDown$.subscribeEvent((evt,state)=>{this._reset();const skeleton=this._sheetSkeletonManagerService.getCurrent().skeleton,selectionWithStyle=sheetsUi.getAllSelection(skeleton),selectionData=this.attachSelectionWithCoord(selectionWithStyle);this._addSelectionControlBySelectionData(selectionData),this._selectionMoveStart$.next(this.getSelectionDataWithStyle()),evt.button!==2&&state.stopPropagation()})),listenerDisposables}_initUserActionSyncListener(){this.disposeWithMe(this.selectionMoveStart$.subscribe(selectionDataWithStyle=>{this._updateSelections(selectionDataWithStyle,sheets.SelectionMoveType.MOVE_START)})),this.disposeWithMe(this.selectionMoving$.subscribe(selectionDataWithStyle=>{this._updateSelections(selectionDataWithStyle,sheets.SelectionMoveType.MOVING)})),this.disposeWithMe(this.selectionMoveEnd$.subscribe(selectionDataWithStyle=>{this._updateSelections(selectionDataWithStyle,sheets.SelectionMoveType.MOVE_END)}))}_updateSelections(selectionDataWithStyleList,type){const sheetId=this._context.unit.getActiveSheet().getSheetId();selectionDataWithStyleList.length!==0&&this._workbookSelections.setSelections(sheetId,selectionDataWithStyleList.map(selectionDataWithStyle=>sheets.convertSelectionDataToRange(selectionDataWithStyle)),type)}_initSelectionChangeListener(){this.disposeWithMe(this._workbookSelections.selectionMoveEnd$.subscribe(selectionsWithStyles=>{this._reset();for(const selectionWithStyle of selectionsWithStyles){const selectionData=this.attachSelectionWithCoord(selectionWithStyle);this._addSelectionControlBySelectionData(selectionData)}}))}_initSkeletonChangeListener(){this.disposeWithMe(this._sheetSkeletonManagerService.currentSkeleton$.subscribe(param=>{if(!param)return;const{skeleton}=param,{scene}=this._context,viewportMain=scene.getViewport(engineRender.SHEET_VIEWPORT_KEY.VIEW_MAIN);this._skeleton&&this._skeleton.worksheet.getSheetId()!==skeleton.worksheet.getSheetId()&&this._reset(),this._changeRuntime(skeleton,scene,viewportMain);const currentSelections=this._workbookSelections.getCurrentSelections();this._refreshSelectionControl(currentSelections||[])}))}_refreshSelectionControl(selectionsData){const selections=selectionsData.map(selectionWithStyle=>sheetsUi.attachSelectionWithCoord(selectionWithStyle,this._skeleton));this.updateControlForCurrentByRangeData(selections)}_getActiveViewport(evt){const sheetObject=this._getSheetObject();return sheetObject==null?void 0:sheetObject.scene.getActiveViewportByCoord(engineRender.Vector2.FromArray([evt.offsetX,evt.offsetY]))}_getSheetObject(){return sheetsUi.getSheetObject(this._context.unit,this._context)}},__name(_a18,"RefSelectionsRenderService"),_a18);RefSelectionsRenderService=__decorateClass$2([__decorateParam$2(1,core.Inject(core.Injector)),__decorateParam$2(2,core.Inject(core.ThemeService)),__decorateParam$2(3,ui.IShortcutService),__decorateParam$2(4,core.Inject(sheetsUi.SheetSkeletonManagerService)),__decorateParam$2(5,sheets.IRefSelectionsService)],RefSelectionsRenderService);function getDefaultRefSelectionStyle(themeService){const style=sheets.getNormalSelectionStyle(themeService);return style.hasAutoFill=!1,style.hasRowHeader=!1,style.hasColumnHeader=!1,style.widgets={tl:!0,tc:!0,tr:!0,ml:!0,mr:!0,bl:!0,bc:!0,br:!0},style}__name(getDefaultRefSelectionStyle,"getDefaultRefSelectionStyle");function getFormulaRefSelectionStyle(themeService,refColor,id){const style=themeService.getCurrentTheme(),fill=new core.ColorKit(refColor).setAlpha(.05).toRgbString();return{id,strokeWidth:1,stroke:refColor,fill,widgets:{tl:!0,tc:!0,tr:!0,ml:!0,mr:!0,bl:!0,bc:!0,br:!0},widgetSize:6,widgetStrokeWidth:1,widgetStroke:style.colorWhite,hasAutoFill:!1,hasRowHeader:!1,hasColumnHeader:!1}}__name(getFormulaRefSelectionStyle,"getFormulaRefSelectionStyle");var __defProp$1=Object.defineProperty,__getOwnPropDesc$1=Object.getOwnPropertyDescriptor,__decorateClass$1=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$1(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$1(target,key,result),result},"__decorateClass$1"),__decorateParam$1=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam$1");const sheetEditorUnitIds=[core.DOCS_FORMULA_BAR_EDITOR_UNIT_ID_KEY,core.DOCS_NORMAL_EDITOR_UNIT_ID_KEY];var _a19;let PromptController=(_a19=class extends core.Disposable{constructor(_commandService,_contextService,_editorBridgeService,_formulaPromptService,_lexerTreeBuilder,_renderManagerService,_themeService,_sheetsSelectionsService,_refSelectionsService,_univerInstanceService,_descriptionService,_docSelectionManagerService,_contextMenuService,_editorService,_layoutService){super();__publicField(this,"_listenInputCache",new Set);__publicField(this,"_formulaRefColors",[]);__publicField(this,"_previousSequenceNodes");__publicField(this,"_previousRangesCount",0);__publicField(this,"_previousInsertRefStringIndex");__publicField(this,"_currentInsertRefStringIndex",-1);__publicField(this,"_arrowMoveActionState",0);__publicField(this,"_isSelectionMovingRefSelections",[]);__publicField(this,"_stringColor","");__publicField(this,"_numberColor","");__publicField(this,"_insertSelections",[]);__publicField(this,"_inputPanelState",0);__publicField(this,"_userCursorMove",!1);__publicField(this,"_previousEditorUnitId");__publicField(this,"_existsSequenceNode",!1);__publicField(this,"_currentlyWorkingRefRenderer",null);__publicField(this,"_selectionsChangeDisposables");__publicField(this,"_isSelectingMode",!1);this._commandService=_commandService,this._contextService=_contextService,this._editorBridgeService=_editorBridgeService,this._formulaPromptService=_formulaPromptService,this._lexerTreeBuilder=_lexerTreeBuilder,this._renderManagerService=_renderManagerService,this._themeService=_themeService,this._sheetsSelectionsService=_sheetsSelectionsService,this._refSelectionsService=_refSelectionsService,this._univerInstanceService=_univerInstanceService,this._descriptionService=_descriptionService,this._docSelectionManagerService=_docSelectionManagerService,this._contextMenuService=_contextMenuService,this._editorService=_editorService,this._layoutService=_layoutService,this._initialize()}get _selectionRenderService(){return this._renderManagerService.getRenderById(this._univerInstanceService.getCurrentUnitForType(core.UniverInstanceType.UNIVER_SHEET).getUnitId()).with(RefSelectionsRenderService)}get _allSelectionRenderServices(){return this._renderManagerService.getAllRenderersOfType(core.UniverInstanceType.UNIVER_SHEET).map(renderer=>renderer.with(RefSelectionsRenderService))}dispose(){this._formulaRefColors=[],this._resetTemp()}_resetTemp(){this._previousSequenceNodes=null,this._previousInsertRefStringIndex=null,this._isSelectionMovingRefSelections=[],this._previousRangesCount=0,this._currentInsertRefStringIndex=-1}_initialize(){this._initialCursorSync(),this._initAcceptFormula(),this._initialFormulaTheme(),this._initSelectionsEndListener(),this._closeRangePromptWhenEditorInvisible(),this._initialEditorInputChange(),this._commandExecutedListener(),this._cursorStateListener(),this._inputFormulaListener(),this._userMouseListener(),this._initialChangeEditor()}_initialFormulaTheme(){const style=this._themeService.getCurrentTheme();this._formulaRefColors=[style.loopColor1,style.loopColor2,style.loopColor3,style.loopColor4,style.loopColor5,style.loopColor6,style.loopColor7,style.loopColor8,style.loopColor9,style.loopColor10,style.loopColor11,style.loopColor12],this._numberColor=style.hyacinth700,this._stringColor=style.verdancy800}_initialCursorSync(){this.disposeWithMe(this._docSelectionManagerService.textSelection$.subscribe(params=>{var _a23;if((params==null?void 0:params.unitId)==null)return;const editor=this._editorService.getEditor(params.unitId);if(!editor||editor.onlyInputContent()||editor.isSheetEditor()&&!this._isFormulaEditorActivated())return;const onlyInputRange=editor.onlyInputRange();(_a23=params==null?void 0:params.options)!=null&&_a23.fromSelection||(this._quitSelectingMode(),this._contextSwitch(),this._checkShouldEnterSelectingMode(onlyInputRange),!this._formulaPromptService.isLockedSelectionChange()&&(this._highlightFormula(),!onlyInputRange&&this._changeFunctionPanelState()))}))}_initialEditorInputChange(){const arrows=[ui.KeyCode.ARROW_DOWN,ui.KeyCode.ARROW_UP,ui.KeyCode.ARROW_LEFT,ui.KeyCode.ARROW_RIGHT,ui.KeyCode.CTRL,ui.KeyCode.SHIFT];this._univerInstanceService.getCurrentTypeOfUnit$(core.UniverInstanceType.UNIVER_DOC).subscribe(documentDataModel=>{var _a23;const unitId=documentDataModel==null?void 0:documentDataModel.getUnitId();if(unitId==null||this._listenInputCache.has(unitId)||this._editorService.getEditor(unitId)==null)return;const docSelectionRenderService=(_a23=this._renderManagerService.getRenderById(unitId))==null?void 0:_a23.with(docsUi.DocSelectionRenderService);docSelectionRenderService&&this.disposeWithMe(docSelectionRenderService.onInputBefore$.subscribe(param=>{this._previousSequenceNodes=null,this._previousInsertRefStringIndex=null,this._selectionRenderService.setSkipLastEnabled(!0);const event=param==null?void 0:param.event;event&&(arrows.includes(event.which)?this._inputPanelState=2:(this._arrowMoveActionState!==1&&(this._arrowMoveActionState=2),this._inputPanelState=1),event.which!==ui.KeyCode.F4&&(this._userCursorMove=!1))})),this._listenInputCache.add(unitId)})}_closeRangePromptWhenEditorInvisible(){this.disposeWithMe(this._editorBridgeService.afterVisible$.pipe(rxjs.distinctUntilKeyChanged("visible")).subscribe(visibleParam=>{visibleParam.visible||this._closeRangePrompt()})),this.disposeWithMe(this._contextService.subscribeContextValue$(core.FORMULA_EDITOR_ACTIVATED).pipe(rxjs.distinctUntilChanged()).subscribe(activated=>{activated||this._closeRangePrompt()}))}_initialChangeEditor(){this.disposeWithMe(this._univerInstanceService.getCurrentTypeOfUnit$(core.UniverInstanceType.UNIVER_DOC).subscribe(documentDataModel=>{if(documentDataModel==null)return;const editorId=documentDataModel.getUnitId();!this._editorService.isEditor(editorId)||this._previousEditorUnitId===editorId||this._editorService.isSheetEditor(editorId)||(this._closeRangePrompt(editorId),this._previousEditorUnitId=editorId)})),this.disposeWithMe(this._editorService.closeRangePrompt$.subscribe(()=>{(!this._editorService.getSpreadsheetFocusState()||!this._formulaPromptService.isLockedSelectionInsert())&&this._closeRangePrompt()}))}_closeRangePrompt(editorId){this._insertSelections=[],this._refSelectionsService.clear(),editorId&&this._editorService.isSheetEditor(editorId)&&this._updateEditorModel(`\r
10
10
  `,[]),this._contextService.setContextValue(core.FOCUSING_EDITOR_INPUT_FORMULA,!1),this._contextService.setContextValue(sheets.DISABLE_NORMAL_SELECTIONS,!1),this._contextService.setContextValue(ui.UNI_DISABLE_CHANGING_FOCUS_KEY,!1),this._quitSelectingMode(),this._resetTemp(),this._hideFunctionPanel()}_initSelectionsEndListener(){const d=new core.DisposableCollection;this.disposeWithMe(this._refSelectionsService.selectionMoveEnd$.subscribe(selections=>{if(d.dispose(),selections.length===0)return;this._allSelectionRenderServices.map(s=>s.getSelectionControls()).flat().forEach(c=>{c.disableHelperSelection(),d.add(c.selectionMoving$.subscribe(toRange=>this._onSelectionControlChange(toRange,c))),d.add(c.selectionScaling$.subscribe(toRange=>this._onSelectionControlChange(toRange,c))),d.add(c.selectionMoved$.subscribe(()=>this._formulaPromptService.disableLockedSelectionChange())),d.add(c.selectionScaled$.subscribe(()=>this._formulaPromptService.disableLockedSelectionChange()))})}))}_updateSelecting(selectionsWithStyles,performInsertion=!1){if(selectionsWithStyles.length!==0&&!(this._editorService.selectionChangingState()&&!this._formulaPromptService.isLockedSelectionInsert())&&(this._insertControlSelections(selectionsWithStyles),performInsertion)){const currentSelection=selectionsWithStyles[selectionsWithStyles.length-1];this._insertControlSelectionReplace(currentSelection)}}_enableRefSelectionsRenderService(){const d=this._selectionsChangeDisposables=new core.DisposableCollection;this._allSelectionRenderServices.forEach(renderer=>{d.add(renderer.enableSelectionChanging()),d.add(renderer.selectionMoving$.subscribe(selections=>{this._updateSelecting(selections.map(s=>sheets.convertSelectionDataToRange(s)))})),d.add(renderer.selectionMoveStart$.subscribe(selections=>{const performInsertion=this._checkClearingLastSelection(renderer);this._currentlyWorkingRefRenderer=renderer,this._updateSelecting(selections.map(s=>sheets.convertSelectionDataToRange(s)),performInsertion)}))})}_checkClearingLastSelection(renderer){return this._currentlyWorkingRefRenderer&&this._currentlyWorkingRefRenderer!==renderer?(this._currentlyWorkingRefRenderer.clearLastSelection(),!1):!0}_disposeSelectionsChangeListeners(){var _a23;(_a23=this._selectionsChangeDisposables)==null||_a23.dispose(),this._selectionsChangeDisposables=null}_insertControlSelections(selections){const currentSelection=selections[selections.length-1];if(this._resetSequenceNodes(selections.length),(selections.length===this._previousRangesCount||this._previousRangesCount===0)&&this._previousSequenceNodes!=null)this._insertControlSelectionReplace(currentSelection);else{let insertNodes=this._formulaPromptService.getSequenceNodes();const char=this._getCurrentChar();insertNodes.length===0&&this._currentInsertRefStringIndex>0&&(this._currentInsertRefStringIndex=-1),this._previousInsertRefStringIndex=this._currentInsertRefStringIndex,!engineFormula.matchRefDrawToken(char)&&this._focusIsOnlyRange(selections.length)&&(this._formulaPromptService.insertSequenceString(this._currentInsertRefStringIndex,engineFormula.matchToken.COMMA),insertNodes=this._formulaPromptService.getSequenceNodes(),this._previousInsertRefStringIndex+=1),this._previousSequenceNodes=core.Tools.deepClone(insertNodes),this._formulaPromptService.setSequenceNodes(insertNodes);const refString=this._generateRefString(currentSelection);this._formulaPromptService.insertSequenceRef(this._previousInsertRefStringIndex,refString),this._selectionRenderService.setSkipLastEnabled(!1)}this._arrowMoveActionState=2,this._previousRangesCount=selections.length}_initAcceptFormula(){this.disposeWithMe(this._formulaPromptService.acceptFormulaName$.subscribe(formulaString=>{const activeRange=this._docSelectionManagerService.getActiveTextRange();if(activeRange==null){this._hideFunctionPanel();return}const{startOffset}=activeRange,lastSequenceNodes=this._formulaPromptService.getSequenceNodes(),nodeIndex=this._formulaPromptService.getCurrentSequenceNodeIndex(startOffset-2),node=lastSequenceNodes[nodeIndex];if(node==null||typeof node=="string"){this._hideFunctionPanel();return}const difference=formulaString.length-node.token.length,newNode={...node};newNode.token=formulaString,newNode.endIndex+=difference,lastSequenceNodes[nodeIndex]=newNode;const isDefinedName=this._descriptionService.hasDefinedNameDescription(formulaString),isFormulaDefinedName=this._descriptionService.isFormulaDefinedName(formulaString),formulaStringCount=formulaString.length+1,mustAddBracket=!isDefinedName||isFormulaDefinedName;mustAddBracket&&lastSequenceNodes.splice(nodeIndex+1,0,engineFormula.matchToken.OPEN_BRACKET);for(let i=nodeIndex+2,len=lastSequenceNodes.length;i<len;i++){const node2=lastSequenceNodes[i];if(typeof node2=="string")continue;const newNode2={...node2};newNode2.startIndex+=formulaStringCount,newNode2.endIndex+=formulaStringCount,lastSequenceNodes[i]=newNode2}let selectionIndex=newNode.endIndex+1;mustAddBracket&&(selectionIndex+=1),this._syncToEditor(lastSequenceNodes,selectionIndex,void 0,!0,!1)}))}_changeFunctionPanelState(){const activeRange=this._docSelectionManagerService.getActiveTextRange();if(activeRange==null){this._hideFunctionPanel();return}const{startOffset}=activeRange,currentSequenceNode=this._formulaPromptService.getCurrentSequenceNode(startOffset-2);if(currentSequenceNode==null){this._hideFunctionPanel();return}if(typeof currentSequenceNode!="string"&&currentSequenceNode.nodeType===engineFormula.sequenceNodeType.FUNCTION&&!this._descriptionService.hasDefinedNameDescription(currentSequenceNode.token.trim())){const token=currentSequenceNode.token.toUpperCase();if(this._inputPanelState===1){const searchList=this._descriptionService.getSearchListByNameFirstLetter(token);if(this._hideFunctionPanel(),searchList==null||searchList.length===0)return;this._commandService.executeCommand(SearchFunctionOperation.id,{visible:!0,searchText:token,searchList})}else this._changeHelpFunctionPanelState(token,-1);return}const config=this._getCurrentBodyDataStreamAndOffset(),functionAndParameter=this._lexerTreeBuilder.getFunctionAndParameter((config==null?void 0:config.dataStream)||"",startOffset-1+((config==null?void 0:config.offset)||0));if(!functionAndParameter){this._hideFunctionPanel();return}const{functionName,paramIndex}=functionAndParameter;this._changeHelpFunctionPanelState(functionName.toUpperCase(),paramIndex)}_changeHelpFunctionPanelState(token,paramIndex){const functionInfo=this._descriptionService.getFunctionInfo(token);this._hideFunctionPanel(),functionInfo!=null&&this._commandService.executeCommand(HelpFunctionOperation.id,{visible:!0,paramIndex,functionInfo})}_hideFunctionPanel(){this._commandService.executeCommand(SearchFunctionOperation.id,{visible:!1,searchText:""}),this._commandService.executeCommand(HelpFunctionOperation.id,{visible:!1,paramIndex:-1})}_checkShouldEnterSelectingMode(isOnlyInputRangeEditor=!1){if(isOnlyInputRangeEditor){this._enterSelectingMode();return}const char=this._getCurrentChar(),dataStream=this._getCurrentDataStream();(dataStream==null?void 0:dataStream.substring(0,1))==="="&&char&&engineFormula.matchRefDrawToken(char)?this._enterSelectingMode():this._quitSelectingMode()}_getCurrentChar(){const activeRange=this._docSelectionManagerService.getActiveTextRange();if(activeRange==null)return;const{startOffset}=activeRange,config=this._getCurrentBodyDataStreamAndOffset();return config==null||startOffset==null?void 0:config.dataStream[startOffset-1+config.offset]}_getCurrentDataStream(){const config=this._getCurrentBodyDataStreamAndOffset();return config==null?void 0:config.dataStream}_enterSelectingMode(){this._isSelectingMode||(this._editorBridgeService.enableForceKeepVisible(),this._contextMenuService.disable(),this._formulaPromptService.enableLockedSelectionInsert(),this._selectionRenderService.setRemainLastEnabled(!0),this._enableRefSelectionsRenderService(),this._currentlyWorkingRefRenderer=null,this._arrowMoveActionState!==1&&(this._arrowMoveActionState=2),this._isSelectingMode=!0)}_quitSelectingMode(){this._isSelectingMode&&(this._editorBridgeService.disableForceKeepVisible(),this._contextMenuService.enable(),this._formulaPromptService.disableLockedSelectionInsert(),this._currentInsertRefStringIndex=-1,this._disposeSelectionsChangeListeners(),this._arrowMoveActionState===2&&(this._arrowMoveActionState=4),this._isSelectingMode=!1)}_getCurrentBodyDataStreamAndOffset(){var _a23,_b;const documentModel=this._univerInstanceService.getCurrentUniverDocInstance();if(!(documentModel!=null&&documentModel.getBody()))return;const unitId=documentModel.getUnitId(),editor=this._editorService.getEditor(unitId),dataStream=(_b=(_a23=documentModel.getBody())==null?void 0:_a23.dataStream)!=null?_b:"";return!editor||!editor.onlyInputRange()?{dataStream,offset:0}:{dataStream:engineFormula.compareToken.EQUALS+dataStream,offset:1}}_getFormulaAndCellEditorBody(unitIds){return unitIds.map(unitId=>{const dataModel=this._univerInstanceService.getUniverDocInstance(unitId);return dataModel==null?void 0:dataModel.getBody()})}_editorModelUnitIds(){const unitId=this._univerInstanceService.getCurrentUniverDocInstance().getUnitId();return this._editorService.isEditor(unitId)&&!this._editorService.isSheetEditor(unitId)?[unitId]:sheetEditorUnitIds}_contextSwitch(){const config=this._getCurrentBodyDataStreamAndOffset();if(config&&core.isFormulaString(config.dataStream)){this._contextService.setContextValue(core.FOCUSING_EDITOR_INPUT_FORMULA,!0),this._contextService.setContextValue(sheets.DISABLE_NORMAL_SELECTIONS,!0),this._contextService.setContextValue(ui.UNI_DISABLE_CHANGING_FOCUS_KEY,!0);const lastSequenceNodes=this._lexerTreeBuilder.sequenceNodesBuilder(config.dataStream)||[];this._formulaPromptService.setSequenceNodes(lastSequenceNodes);const activeRange=this._docSelectionManagerService.getActiveTextRange();if(activeRange==null)return;const{startOffset}=activeRange;this._currentInsertRefStringIndex=startOffset-1+config.offset;return}this._contextService.setContextValue(core.FOCUSING_EDITOR_INPUT_FORMULA,!1),this._contextService.setContextValue(sheets.DISABLE_NORMAL_SELECTIONS,!1),this._contextService.setContextValue(ui.UNI_DISABLE_CHANGING_FOCUS_KEY,!1),this._formulaPromptService.disableLockedSelectionChange(),this._formulaPromptService.disableLockedSelectionInsert(),this._formulaPromptService.clearSequenceNodes(),this._hideFunctionPanel()}_getContextState(){return this._contextService.getContextValue(core.FOCUSING_EDITOR_INPUT_FORMULA)}_highlightFormula(){if(this._getContextState()===!1)return;const sequenceNodes=this._formulaPromptService.getSequenceNodes(),unitIds=this._editorModelUnitIds(),bodyList=this._getFormulaAndCellEditorBody(unitIds).filter(b=>!!b);if(this._refSelectionsService.clear(),sequenceNodes==null||sequenceNodes.length===0)this._existsSequenceNode=!1,bodyList.forEach(body=>body.textRuns=[]);else{this._existsSequenceNode=!0;const{textRuns,refSelections}=this._buildTextRuns(sequenceNodes);bodyList.forEach(body=>body.textRuns=textRuns),this._allSelectionRenderServices.forEach(r=>this._refreshSelectionForReference(r,refSelections))}this._refreshFormulaAndCellEditor(unitIds)}_buildTextRuns(sequenceNodes){var _a23;const textRuns=[],refSelections=[],themeColorMap=new Map;let refColorIndex=0;const offset=((_a23=this._getCurrentBodyDataStreamAndOffset())==null?void 0:_a23.offset)||0;for(let i=0,len=sequenceNodes.length;i<len;i++){const node=sequenceNodes[i];if(typeof node=="string"||this._descriptionService.hasDefinedNameDescription(node.token.trim()))continue;const{startIndex,endIndex,nodeType,token}=node;let themeColor="";if(nodeType===engineFormula.sequenceNodeType.REFERENCE){if(themeColorMap.has(token))themeColor=themeColorMap.get(token);else{const colorIndex=refColorIndex%this._formulaRefColors.length;themeColor=this._formulaRefColors[colorIndex],themeColorMap.set(token,themeColor),refColorIndex++}refSelections.push({refIndex:i,themeColor,token})}else nodeType===engineFormula.sequenceNodeType.NUMBER?themeColor=this._numberColor:nodeType===engineFormula.sequenceNodeType.STRING?themeColor=this._stringColor:nodeType===engineFormula.sequenceNodeType.ARRAY&&(themeColor=this._stringColor);themeColor&&themeColor.length>0&&textRuns.push({st:startIndex+1-offset,ed:endIndex+2-offset,ts:{cl:{rgb:themeColor}}})}return{textRuns,refSelections}}_exceedCurrentRange(range,rowCount,columnCount){const{endRow,endColumn}=range;return endRow>rowCount||endColumn>columnCount}_refreshSelectionForReference(refSelectionRenderService,refSelections){const{unitId,sheetId}=this._editorBridgeService.getEditCellState(),{unitId:selfUnitId,sheetId:selfSheetId}=this._getCurrentUnitIdAndSheetId(),isSelfSheet=sheetId===selfSheetId,worksheet=this._univerInstanceService.getUniverSheetInstance(unitId).getSheetBySheetId(sheetId);let lastRange=null;const selectionWithStyle=[];for(let i=0,len=refSelections.length;i<len;i++){const refSelection=refSelections[i],{themeColor,token,refIndex}=refSelection,gridRange=engineFormula.deserializeRangeWithSheet(token),{unitId:refUnitId,sheetName,range:rawRange}=gridRange,range=sheets.setEndForRange(rawRange,worksheet.getRowCount(),worksheet.getColumnCount());if(refUnitId!=null&&refUnitId.length>0&&unitId!==refUnitId)continue;const refSheetId=this._getSheetIdByName(unitId,sheetName.trim());if(!isSelfSheet&&refSheetId!==selfSheetId||isSelfSheet&&sheetName.length!==0&&refSheetId!==sheetId||this._exceedCurrentRange(range,worksheet.getRowCount(),worksheet.getColumnCount()))continue;const lastRangeCopy=this._getPrimary(range,themeColor,refIndex);if(lastRangeCopy){lastRange=lastRangeCopy;continue}const primary=sheets.getPrimaryForRange(range,worksheet);!core.Rectangle.equals(primary,range)&&range.startRow===range.endRow&&range.startColumn===range.endColumn&&(range.startRow=primary.startRow,range.endRow=primary.endRow,range.startColumn=primary.startColumn,range.endColumn=primary.endColumn),selectionWithStyle.push({range,primary,style:getFormulaRefSelectionStyle(this._themeService,themeColor,refIndex.toString())})}lastRange&&selectionWithStyle.push(lastRange),selectionWithStyle.length&&this._refSelectionsService.addSelections(unitId,sheetId,selectionWithStyle)}_getPrimary(range,themeColor,refIndex){var _a23;const primary=(_a23=this._insertSelections.find(selection=>{const{startRow,startColumn,endRow,endColumn}=selection.range;return startRow===range.startRow&&startColumn===range.startColumn&&endRow===range.endRow&&endColumn===range.endColumn||startRow===range.startRow&&startColumn===range.startColumn&&range.startRow===range.endRow&&range.startColumn===range.endColumn}))==null?void 0:_a23.primary;if(primary==null)return;const{isMerged,isMergedMainCell,startRow:mergeStartRow,endRow:mergeEndRow,startColumn:mergeStartColumn,endColumn:mergeEndColumn}=primary;return(isMerged||isMergedMainCell)&&mergeStartRow===range.startRow&&mergeStartColumn===range.startColumn&&range.startRow===range.endRow&&range.startColumn===range.endColumn&&(range.endRow=mergeEndRow,range.endColumn=mergeEndColumn),{range,primary,style:getFormulaRefSelectionStyle(this._themeService,themeColor,refIndex.toString())}}_getSheetIdByName(unitId,sheetName){var _a23;const workbook=this._univerInstanceService.getUniverSheetInstance(unitId);return(_a23=workbook==null?void 0:workbook.getSheetBySheetName(engineFormula.normalizeSheetName(sheetName)))==null?void 0:_a23.getSheetId()}_getSheetNameById(unitId,sheetId){var _a23;const workbook=this._univerInstanceService.getUniverSheetInstance(unitId);return((_a23=workbook==null?void 0:workbook.getSheetBySheetId(sheetId))==null?void 0:_a23.getName())||""}_getCurrentUnitIdAndSheetId(){var _a23,_b;const workbook=this._univerInstanceService.getCurrentUnitForType(core.UniverInstanceType.UNIVER_SHEET),worksheet=workbook.getActiveSheet(),skeleton=(_b=(_a23=this._renderManagerService.getRenderById(workbook.getUnitId()))==null?void 0:_a23.with(sheetsUi.SheetSkeletonManagerService))==null?void 0:_b.getCurrentSkeleton();return{unitId:workbook.getUnitId(),sheetId:(worksheet==null?void 0:worksheet.getSheetId())||"",skeleton}}_getEditorOpenedForSheet(){const editorUnitId=this._univerInstanceService.getCurrentUniverDocInstance().getUnitId(),editor=this._editorService.getEditor(editorUnitId);return editor?{openUnitId:editor.getOpenForSheetUnitId(),openSheetId:editor.getOpenForSheetSubUnitId()}:{openUnitId:null,openSheetId:null}}_generateRefString(currentSelection){let refUnitId="",refSheetName="";const{unitId,sheetId}=currentSelection.range,{openUnitId,openSheetId}=this._getEditorOpenedForSheet();unitId!==openUnitId&&unitId&&(refUnitId=unitId),sheetId!==openSheetId&&unitId&&sheetId&&(refSheetName=this._getSheetNameById(unitId,sheetId));const{range,primary}=currentSelection;let{startRow,endRow,startColumn,endColumn}=range;const{startAbsoluteRefType,endAbsoluteRefType,rangeType}=range;if(primary){const{isMerged,isMergedMainCell,startRow:mergeStartRow,endRow:mergeEndRow,startColumn:mergeStartColumn,endColumn:mergeEndColumn}=primary;(isMerged||isMergedMainCell)&&mergeStartRow===startRow&&mergeStartColumn===startColumn&&mergeEndRow===endRow&&mergeEndColumn===endColumn&&(startRow=mergeStartRow,startColumn=mergeStartColumn,endRow=mergeStartRow,endColumn=mergeStartColumn)}return engineFormula.serializeRangeToRefString({sheetName:refSheetName,unitId:refUnitId,range:{startRow,endRow,startColumn,endColumn,rangeType,startAbsoluteRefType,endAbsoluteRefType}})}_syncToEditor(sequenceNodes,textSelectionOffset,editorUnitId,canUndo=!0,fromSelection=!0){let dataStream=engineFormula.generateStringWithSequence(sequenceNodes);const{textRuns,refSelections}=this._buildTextRuns(sequenceNodes);this._isSelectionMovingRefSelections=refSelections,this._allSelectionRenderServices.forEach(r=>this._updateRefSelectionStyle(r,this._isSelectionMovingRefSelections));const activeRange=this._docSelectionManagerService.getActiveTextRange();if(activeRange==null)return;this._currentInsertRefStringIndex=textSelectionOffset,editorUnitId==null&&(editorUnitId=this._univerInstanceService.getCurrentUniverDocInstance().getUnitId()),this._fitEditorSize();const editor=this._editorService.getEditor(editorUnitId);editor!=null&&editor.isSingleChoice()?(dataStream=dataStream.split(",")[0],this._selectionRenderService.setSingleSelectionEnabled(!0)):this._selectionRenderService.setSingleSelectionEnabled(!1);let formulaString=dataStream,offset=1;(!editor||!editor.onlyInputRange())&&(formulaString=`${engineFormula.compareToken.EQUALS}${dataStream}`,offset=0);const{collapsed,style}=activeRange;canUndo?(this._commandService.executeCommand(docsUi.ReplaceContentCommand.id,{unitId:editorUnitId,body:{dataStream:formulaString,textRuns},textRanges:[{startOffset:textSelectionOffset+1-offset,endOffset:textSelectionOffset+1-offset,collapsed,style}],segmentId:null,options:{fromSelection}}),this._docSelectionManagerService.replaceTextRanges([{startOffset:textSelectionOffset+1-offset,endOffset:textSelectionOffset+1-offset,style}],!0,{fromSelection})):(this._updateEditorModel(`${formulaString}\r
11
- `,textRuns),this._docSelectionManagerService.replaceTextRanges([{startOffset:textSelectionOffset+1-offset,endOffset:textSelectionOffset+1-offset,style}],!0,{fromSelection})),this._layoutService.focus()}_fitEditorSize(){const editorUnitId=this._univerInstanceService.getCurrentUniverDocInstance().getUnitId();this._editorService.isEditor(editorUnitId)&&!this._editorService.isSheetEditor(editorUnitId)||this._commandService.executeCommand(ui.SetEditorResizeOperation.id,{unitId:editorUnitId})}_updateEditorModel(dataStream,textRuns){var _a23;const documentDataModel=this._univerInstanceService.getCurrentUniverDocInstance(),editorUnitId=documentDataModel.getUnitId();if(!this._editorService.isEditor(editorUnitId))return;const docViewModel=(_a23=this._renderManagerService.getRenderById(editorUnitId))==null?void 0:_a23.with(docs.DocSkeletonManagerService).getViewModel();if(docViewModel==null||documentDataModel==null)return;const snapshot=documentDataModel==null?void 0:documentDataModel.getSnapshot();if(snapshot==null)return;const newBody={dataStream,textRuns};snapshot.body=newBody,docViewModel.reset(documentDataModel)}_insertControlSelectionReplace(currentSelection){this._previousSequenceNodes==null&&(this._previousSequenceNodes=this._formulaPromptService.getSequenceNodes()),this._previousInsertRefStringIndex==null&&(this._previousInsertRefStringIndex=this._currentInsertRefStringIndex);const insertNodes=core.Tools.deepClone(this._previousSequenceNodes);if(insertNodes==null)return;const refString=this._generateRefString(currentSelection);this._formulaPromptService.setSequenceNodes(insertNodes),this._formulaPromptService.insertSequenceRef(this._previousInsertRefStringIndex,refString),this._syncToEditor(insertNodes,this._previousInsertRefStringIndex+refString.length);const selectionDatas=this._selectionRenderService.getSelectionDataWithStyle();this._insertSelections=[],selectionDatas.forEach(currentSelection2=>{const range=sheets.convertSelectionDataToRange(currentSelection2);this._insertSelections.push(range)})}_focusIsOnlyRange(selectionCount){const currentEditor=this._editorService.getFocusEditor();return!currentEditor||!currentEditor.onlyInputRange()||this._existsSequenceNode||selectionCount>1||this._previousSequenceNodes!=null&&this._previousSequenceNodes.length>0?!0:(this._previousInsertRefStringIndex!=null&&(this._previousInsertRefStringIndex+=1),!1)}_resetSequenceNodes(selectionCount){const currentEditor=this._editorService.getFocusEditor();currentEditor&&currentEditor.onlyInputRange()&&(selectionCount>1||this._existsSequenceNode&&(this._formulaPromptService.clearSequenceNodes(),this._previousRangesCount=0,this._existsSequenceNode=!1))}_updateRefSelectionStyle(refSelectionRenderService,refSelections){const controls=refSelectionRenderService.getSelectionControls(),[unitId,sheetId]=refSelectionRenderService.getLocation(),matchedControls=new Set;for(let i=0,len=refSelections.length;i<len;i++){const refSelection=refSelections[i],{refIndex,themeColor,token}=refSelection,rangeWithSheet=engineFormula.deserializeRangeWithSheet(token),{unitId:refUnitId,sheetName,range}=rangeWithSheet;if(!refUnitId&&refUnitId.length>0&&unitId!==refUnitId)continue;const refSheetId=this._getSheetIdByName(unitId,sheetName.trim());if(refSheetId&&refSheetId!==sheetId)continue;const control=controls.find(c=>{const{startRow,startColumn,endRow,endColumn,rangeType}=c.getRange();return rangeType===core.RANGE_TYPE.COLUMN&&startColumn===range.startColumn&&endColumn===range.endColumn||rangeType===core.RANGE_TYPE.ROW&&startRow===range.startRow&&endRow===range.endRow||startRow===range.startRow&&startColumn===range.startColumn&&endRow===range.endRow&&endColumn===range.endColumn||startRow===range.startRow&&startColumn===range.startColumn&&range.startRow===range.endRow&&range.startColumn===range.endColumn});if(control){const style=getFormulaRefSelectionStyle(this._themeService,themeColor,refIndex.toString());control.updateStyle(style),matchedControls.add(control)}}}_onSelectionControlChange(toRange,selectionControl){var _a23;const{skeleton}=this._getCurrentUnitIdAndSheetId();this._formulaPromptService.enableLockedSelectionChange();const id=(_a23=selectionControl.currentStyle)==null?void 0:_a23.id;if(!id||!core.Tools.isStringNumber(id))return;let{startRow,endRow,startColumn,endColumn}=toRange;const primary=skeleton?skeleton.worksheet.getCellInfoInMergeData(startRow,startColumn):{actualRow:startRow,actualColumn:startColumn,isMergedMainCell:!1,isMerged:!1,endRow:startRow,endColumn:startColumn,startRow,startColumn};if(primary){const{isMerged,isMergedMainCell,startRow:mergeStartRow,endRow:mergeEndRow,startColumn:mergeStartColumn,endColumn:mergeEndColumn}=primary;(isMerged||isMergedMainCell)&&mergeStartRow===startRow&&mergeStartColumn===startColumn&&mergeEndRow===endRow&&mergeEndColumn===endColumn&&(startRow=mergeStartRow,startColumn=mergeStartColumn,endRow=mergeStartRow,endColumn=mergeStartColumn)}const nodeIndex=Number(id),currentNode=this._formulaPromptService.getCurrentSequenceNodeByIndex(nodeIndex);let refType={startAbsoluteRefType:core.AbsoluteRefType.NONE};if(typeof currentNode!="string"){const token=currentNode.token;refType=engineFormula.getAbsoluteRefTypeWitString(token),refType.endAbsoluteRefType==null&&(refType.endAbsoluteRefType=refType.startAbsoluteRefType)}const unitId=skeleton==null?void 0:skeleton.worksheet.getUnitId(),sheetId=skeleton==null?void 0:skeleton.worksheet.getSheetId(),refString=this._generateRefString({range:{startRow:Math.min(startRow,endRow),endRow:Math.max(startRow,endRow),startColumn:Math.min(startColumn,endColumn),endColumn:Math.max(startColumn,endColumn),...refType,sheetId,unitId},primary,style:null});this._formulaPromptService.updateSequenceRef(nodeIndex,refString);const sequenceNodes=this._formulaPromptService.getSequenceNodes(),node=sequenceNodes[nodeIndex];typeof node!="string"&&(this._syncToEditor(sequenceNodes,node.endIndex+1),selectionControl.update(toRange,void 0,void 0,void 0,this._selectionRenderService.attachPrimaryWithCoord(primary)))}_refreshFormulaAndCellEditor(unitIds){var _a23;for(const unitId of unitIds){const editorObject=sheetsUi.getEditorObject(unitId,this._renderManagerService),documentComponent=editorObject==null?void 0:editorObject.document;documentComponent!=null&&((_a23=documentComponent.getSkeleton())==null||_a23.calculate(),documentComponent.makeDirty())}}_cursorStateListener(){const editorObject=this._getEditorObject();if(editorObject==null)return;const{mainComponent:documentComponent}=editorObject;documentComponent&&this.disposeWithMe(documentComponent.onPointerDown$.subscribeEvent(()=>{this._arrowMoveActionState=1,this._inputPanelState=3}))}_pressEnter(params){const{keycode,isSingleEditor=!1}=params;if(this._formulaPromptService.isSearching()){this._formulaPromptService.accept(!0);return}isSingleEditor!==!0&&this._editorBridgeService.changeVisible({visible:!1,eventType:engineRender.DeviceInputEventType.Keyboard,keycode,unitId:""})}_pressTab(params){const{keycode,isSingleEditor=!1}=params;if(this._formulaPromptService.isSearching()){this._formulaPromptService.accept(!0);return}isSingleEditor!==!0&&this._editorBridgeService.changeVisible({visible:!1,eventType:engineRender.DeviceInputEventType.Keyboard,keycode,unitId:""})}_pressEsc(params){const{keycode}=params,focusEditor=this._editorService.getFocusEditor();(!focusEditor||(focusEditor==null?void 0:focusEditor.isSheetEditor())===!0)&&this._editorBridgeService.changeVisible({visible:!1,eventType:engineRender.DeviceInputEventType.Keyboard,keycode,unitId:""})}_pressArrowKey(params){const{keycode,metaKey}=params;let direction=core.Direction.DOWN;keycode===ui.KeyCode.ARROW_DOWN?direction=core.Direction.DOWN:keycode===ui.KeyCode.ARROW_UP?direction=core.Direction.UP:keycode===ui.KeyCode.ARROW_LEFT?direction=core.Direction.LEFT:keycode===ui.KeyCode.ARROW_RIGHT&&(direction=core.Direction.RIGHT),metaKey===ui.MetaKeys.CTRL_COMMAND?this._commandService.executeCommand(sheetsUi.MoveSelectionCommand.id,{direction,jumpOver:sheetsUi.JumpOver.moveGap}):metaKey===ui.MetaKeys.SHIFT?this._commandService.executeCommand(sheetsUi.ExpandSelectionCommand.id,{direction}):metaKey===META_KEY_CTRL_AND_SHIFT?this._commandService.executeCommand(sheetsUi.ExpandSelectionCommand.id,{direction,jumpOver:sheetsUi.JumpOver.moveGap}):this._commandService.executeCommand(sheetsUi.MoveSelectionCommand.id,{direction})}_commandExecutedListener(){const updateCommandList=[SelectEditorFormulaOperation.id];this.disposeWithMe(this._commandService.onCommandExecuted(command=>{if(command.id===ReferenceAbsoluteOperation.id)this._changeRefString();else if(updateCommandList.includes(command.id)){const params=command.params,{keycode,isSingleEditor=!1}=params;if(keycode===ui.KeyCode.ENTER){this._pressEnter(params);return}if(keycode===ui.KeyCode.TAB){this._pressTab(params);return}if(keycode===ui.KeyCode.ESC){this._pressEsc(params);return}if(this._formulaPromptService.isSearching()){if(keycode===ui.KeyCode.ARROW_DOWN){this._formulaPromptService.navigate({direction:core.Direction.DOWN});return}if(keycode===ui.KeyCode.ARROW_UP){this._formulaPromptService.navigate({direction:core.Direction.UP});return}}if(isSingleEditor===!0)return;if(this._arrowMoveActionState===1){this._moveInEditor(keycode);return}if(this._arrowMoveActionState===4){this._editorBridgeService.changeVisible({visible:!1,eventType:engineRender.DeviceInputEventType.Keyboard,keycode,unitId:""});return}if(this._arrowMoveActionState===2&&(this._arrowMoveActionState=3),this._refSelectionsService.getCurrentSelections().length===0){const selectionData=this._sheetsSelectionsService.getCurrentLastSelection();if(selectionData!=null){const selectionDataNew=core.Tools.deepClone(selectionData);this._refSelectionsService.addSelections([selectionDataNew])}}this._pressArrowKey(params);const selectionWithStyles=this._refSelectionsService.getCurrentSelections(),currentSelection=selectionWithStyles[selectionWithStyles.length-1];this._insertControlSelectionReplace(currentSelection),this._highlightFormula()}}))}_moveInEditor(keycode){if(keycode==null)return;let direction=core.Direction.LEFT;keycode===ui.KeyCode.ARROW_DOWN?direction=core.Direction.DOWN:keycode===ui.KeyCode.ARROW_UP?direction=core.Direction.UP:keycode===ui.KeyCode.ARROW_RIGHT&&(direction=core.Direction.RIGHT),this._commandService.executeCommand(docsUi.MoveCursorOperation.id,{direction})}_userMouseListener(){const editorObject=this._getEditorObject();if(editorObject==null)return;const{mainComponent:documentComponent}=editorObject;documentComponent&&this.disposeWithMe(documentComponent==null?void 0:documentComponent.onPointerDown$.subscribeEvent(()=>{this._userCursorMove=!0}))}_inputFormulaListener(){this.disposeWithMe(this._editorService.inputFormula$.subscribe(param=>{const{formulaString,editorUnitId}=param;if(formulaString.substring(0,1)!==engineFormula.compareToken.EQUALS)return;const{unitId}=this._getCurrentUnitIdAndSheetId();this._editorBridgeService.isVisible().visible===!1&&this._editorBridgeService.changeVisible({visible:!0,eventType:engineRender.DeviceInputEventType.Dblclick,unitId});const lastSequenceNodes=this._lexerTreeBuilder.sequenceNodesBuilder(formulaString)||[];this._formulaPromptService.setSequenceNodes(lastSequenceNodes),this._syncToEditor(lastSequenceNodes,formulaString.length-1,editorUnitId,!0,!1)}))}_changeRefString(){const activeRange=this._docSelectionManagerService.getActiveTextRange();if(activeRange==null)return;const{startOffset}=activeRange,strIndex=startOffset-2,nodeIndex=this._formulaPromptService.getCurrentSequenceNodeIndex(strIndex),node=this._formulaPromptService.getCurrentSequenceNodeByIndex(nodeIndex);if(node==null||typeof node=="string"||node.nodeType!==engineFormula.sequenceNodeType.REFERENCE)return;const tokenArray=node.token.split("!");let token=node.token;tokenArray.length>1&&(token=tokenArray[tokenArray.length-1]);let unitIDAndSheetName="";for(let i=0,len=tokenArray.length;i<len-1;i++)unitIDAndSheetName+=tokenArray[i];let finalToken=token;if(token.indexOf(engineFormula.matchToken.COLON)>-1)if(!this._userCursorMove)finalToken=this._changeRangeRef(token);else{const refStringSplit=token.split(engineFormula.matchToken.COLON),prefix=refStringSplit[0],suffix=refStringSplit[1];strIndex-node.startIndex<=prefix.length?finalToken=this._changeSingleRef(prefix)+engineFormula.matchToken.COLON+suffix:finalToken=prefix+engineFormula.matchToken.COLON+this._changeSingleRef(suffix)}else finalToken=this._changeSingleRef(token);finalToken=unitIDAndSheetName+finalToken;const difference=finalToken.length-node.token.length;this._formulaPromptService.updateSequenceRef(nodeIndex,finalToken),this._syncToEditor(this._formulaPromptService.getSequenceNodes(),strIndex+difference+1)}_changeRangeRef(token){const range=engineFormula.deserializeRangeWithSheet(token).range;let resultToken="";return range.startAbsoluteRefType===core.AbsoluteRefType.NONE||range.startAbsoluteRefType==null?(range.startAbsoluteRefType=core.AbsoluteRefType.ALL,range.endAbsoluteRefType=core.AbsoluteRefType.ALL):(range.startAbsoluteRefType=core.AbsoluteRefType.NONE,range.endAbsoluteRefType=core.AbsoluteRefType.NONE),resultToken=engineFormula.serializeRange(range),resultToken}_changeSingleRef(token){const range=engineFormula.deserializeRangeWithSheet(token).range,type=range.startAbsoluteRefType;let resultToken="";return type===core.AbsoluteRefType.NONE||type==null?(range.startAbsoluteRefType=core.AbsoluteRefType.ALL,range.endAbsoluteRefType=core.AbsoluteRefType.ALL):type===core.AbsoluteRefType.ALL?(range.startAbsoluteRefType=core.AbsoluteRefType.ROW,range.endAbsoluteRefType=core.AbsoluteRefType.ROW):type===core.AbsoluteRefType.ROW?(range.startAbsoluteRefType=core.AbsoluteRefType.COLUMN,range.endAbsoluteRefType=core.AbsoluteRefType.COLUMN):(range.startAbsoluteRefType=core.AbsoluteRefType.NONE,range.endAbsoluteRefType=core.AbsoluteRefType.NONE),resultToken=engineFormula.serializeRange(range),resultToken}_getEditorObject(){const editorUnitId=this._univerInstanceService.getCurrentUniverDocInstance().getUnitId(),editor=this._editorService.getEditor(editorUnitId);return editor==null?void 0:editor.render}_isFormulaEditorActivated(){return this._editorBridgeService.isVisible().visible===!0||this._contextService.getContextValue(core.FORMULA_EDITOR_ACTIVATED)}_isSheetOrFormulaEditor(editor){return editor.isSheetEditor()||editor.isFormulaEditor()}},__name(_a19,"PromptController"),_a19);PromptController=__decorateClass$1([core.OnLifecycle(core.LifecycleStages.Steady,PromptController),__decorateParam$1(0,core.ICommandService),__decorateParam$1(1,core.IContextService),__decorateParam$1(2,core.Inject(sheetsUi.IEditorBridgeService)),__decorateParam$1(3,core.Inject(IFormulaPromptService)),__decorateParam$1(4,core.Inject(engineFormula.LexerTreeBuilder)),__decorateParam$1(5,engineRender.IRenderManagerService),__decorateParam$1(6,core.Inject(core.ThemeService)),__decorateParam$1(7,core.Inject(sheets.SheetsSelectionsService)),__decorateParam$1(8,sheets.IRefSelectionsService),__decorateParam$1(9,core.IUniverInstanceService),__decorateParam$1(10,core.Inject(IDescriptionService)),__decorateParam$1(11,core.Inject(docs.DocSelectionManagerService)),__decorateParam$1(12,ui.IContextMenuService),__decorateParam$1(13,ui.IEditorService),__decorateParam$1(14,ui.ILayoutService)],PromptController);var __defProp2=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__defNormalProp2=__name((obj,key,value)=>key in obj?__defProp2(obj,key,{enumerable:!0,configurable:!0,writable:!0,value}):obj[key]=value,"__defNormalProp"),__decorateClass=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp2(target,key,result),result},"__decorateClass"),__decorateParam=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam"),__publicField2=__name((obj,key,value)=>__defNormalProp2(obj,typeof key!="symbol"?key+"":key,value),"__publicField"),_a20;exports.UniverRemoteSheetsFormulaPlugin=(_a20=class extends core.Plugin{constructor(_config=defaultPluginRemoteConfig,_injector,_configService){super(),this._config=_config,this._injector=_injector,this._configService=_configService;const{...rest}=this._config;this._configService.setConfig(PLUGIN_CONFIG_KEY_REMOTE,rest)}onStarting(){this._injector.add([exports.RemoteRegisterFunctionService]),this._injector.get(rpc.IRPCChannelService).registerChannel(RemoteRegisterFunctionServiceName,rpc.fromModule(this._injector.get(exports.RemoteRegisterFunctionService)))}},__name(_a20,"UniverRemoteSheetsFormulaPlugin"),_a20);__publicField2(exports.UniverRemoteSheetsFormulaPlugin,"pluginName","SHEET_FORMULA_REMOTE_PLUGIN");__publicField2(exports.UniverRemoteSheetsFormulaPlugin,"type",core.UniverInstanceType.UNIVER_SHEET);exports.UniverRemoteSheetsFormulaPlugin=__decorateClass([core.DependentOn(engineFormula.UniverFormulaEnginePlugin),__decorateParam(1,core.Inject(core.Injector)),__decorateParam(2,core.IConfigService)],exports.UniverRemoteSheetsFormulaPlugin);var _a21;exports.UniverSheetsFormulaPlugin=(_a21=class extends core.Plugin{constructor(_config=defaultPluginBaseConfig,_injector,_renderManagerService,_configService){super(),this._config=_config,this._injector=_injector,this._renderManagerService=_renderManagerService,this._configService=_configService;const{menu,...rest}=this._config;menu&&this._configService.setConfig("menu",menu,{merge:!0}),this._configService.setConfig(PLUGIN_CONFIG_KEY_BASE,rest)}onStarting(){const j=this._injector,dependencies=[[IFormulaPromptService,{useClass:FormulaPromptService}],[sheets.IRefSelectionsService,{useClass:sheets.RefSelectionsService}],[IDescriptionService,{useClass:exports.DescriptionService}],[IRegisterFunctionService,{useClass:exports.RegisterFunctionService}],[exports.FormulaRefRangeService],[exports.RegisterOtherFormulaService],[FormulaUIController],[FormulaAutoFillController],[FormulaClipboardController],[ArrayFormulaDisplayController],[TriggerCalculationController],[UpdateFormulaController],[FormulaEditorShowController],[ActiveDirtyController],[DefinedNameController],[FormulaRenderManagerController],[PromptController]];if(this._config.notExecuteFormula){const rpcChannelService=j.get(rpc.IRPCChannelService);dependencies.push([IRemoteRegisterFunctionService,{useFactory:__name(()=>rpc.toModule(rpcChannelService.requestChannel(RemoteRegisterFunctionServiceName)),"useFactory")}])}dependencies.forEach(dependency=>j.add(dependency))}onRendered(){[[RefSelectionsRenderService],[FormulaAlertRenderController]].forEach(dep=>{this.disposeWithMe(this._renderManagerService.registerRenderModule(core.UniverInstanceType.UNIVER_SHEET,dep))})}},__name(_a21,"UniverSheetsFormulaPlugin"),_a21);__publicField2(exports.UniverSheetsFormulaPlugin,"pluginName",FORMULA_UI_PLUGIN_NAME);__publicField2(exports.UniverSheetsFormulaPlugin,"type",core.UniverInstanceType.UNIVER_SHEET);exports.UniverSheetsFormulaPlugin=__decorateClass([core.DependentOn(engineFormula.UniverFormulaEnginePlugin),__decorateParam(1,core.Inject(core.Injector)),__decorateParam(2,engineRender.IRenderManagerService),__decorateParam(3,core.IConfigService)],exports.UniverSheetsFormulaPlugin);var _a22;exports.UniverSheetsFormulaMobilePlugin=(_a22=class extends core.Plugin{constructor(_config=defaultPluginMobileConfig,_injector,_configService){super(),this._config=_config,this._injector=_injector,this._configService=_configService;const{menu,...rest}=this._config;menu&&this._configService.setConfig("menu",menu,{merge:!0}),this._configService.setConfig(PLUGIN_CONFIG_KEY_MOBILE,rest)}onStarting(){this._init()}_init(){[[IFormulaPromptService,{useClass:FormulaPromptService}],[IDescriptionService,{useClass:exports.DescriptionService}],[IRegisterFunctionService,{useClass:exports.RegisterFunctionService}],[exports.FormulaRefRangeService],[exports.RegisterOtherFormulaService],[FormulaClipboardController],[ArrayFormulaDisplayController],[TriggerCalculationController],[UpdateFormulaController],[ActiveDirtyController],[DefinedNameController],[FormulaRenderManagerController]].forEach(dependency=>this._injector.add(dependency))}},__name(_a22,"UniverSheetsFormulaMobilePlugin"),__publicField(_a22,"pluginName",FORMULA_UI_PLUGIN_NAME),__publicField(_a22,"type",core.UniverInstanceType.UNIVER_SHEET),_a22);exports.UniverSheetsFormulaMobilePlugin=__decorateClass([__decorateParam(1,core.Inject(core.Injector)),__decorateParam(2,core.IConfigService)],exports.UniverSheetsFormulaMobilePlugin);exports.FORMULA_PROMPT_ACTIVATED=FORMULA_PROMPT_ACTIVATED;exports.HelpFunctionOperation=HelpFunctionOperation;exports.IDescriptionService=IDescriptionService;exports.IRegisterFunctionService=IRegisterFunctionService;exports.IRemoteRegisterFunctionService=IRemoteRegisterFunctionService;exports.InsertFunctionCommand=InsertFunctionCommand;exports.InsertFunctionOperation=InsertFunctionOperation;exports.MoreFunctionsOperation=MoreFunctionsOperation;exports.OtherFormulaMarkDirty=OtherFormulaMarkDirty;exports.ReferenceAbsoluteOperation=ReferenceAbsoluteOperation;exports.SearchFunctionOperation=SearchFunctionOperation;exports.SelectEditorFormulaOperation=SelectEditorFormulaOperation;exports.SheetOnlyPasteFormulaCommand=SheetOnlyPasteFormulaCommand;
11
+ `,textRuns),this._docSelectionManagerService.replaceTextRanges([{startOffset:textSelectionOffset+1-offset,endOffset:textSelectionOffset+1-offset,style}],!0,{fromSelection})),this._layoutService.focus()}_fitEditorSize(){const editorUnitId=this._univerInstanceService.getCurrentUniverDocInstance().getUnitId();this._editorService.isEditor(editorUnitId)&&!this._editorService.isSheetEditor(editorUnitId)||this._commandService.executeCommand(ui.SetEditorResizeOperation.id,{unitId:editorUnitId})}_updateEditorModel(dataStream,textRuns){var _a23;const documentDataModel=this._univerInstanceService.getCurrentUniverDocInstance(),editorUnitId=documentDataModel.getUnitId();if(!this._editorService.isEditor(editorUnitId))return;const docViewModel=(_a23=this._renderManagerService.getRenderById(editorUnitId))==null?void 0:_a23.with(docs.DocSkeletonManagerService).getViewModel();if(docViewModel==null||documentDataModel==null)return;const snapshot=documentDataModel==null?void 0:documentDataModel.getSnapshot();if(snapshot==null)return;const newBody={dataStream,textRuns};snapshot.body=newBody,docViewModel.reset(documentDataModel)}_insertControlSelectionReplace(currentSelection){this._previousSequenceNodes==null&&(this._previousSequenceNodes=this._formulaPromptService.getSequenceNodes()),this._previousInsertRefStringIndex==null&&(this._previousInsertRefStringIndex=this._currentInsertRefStringIndex);const insertNodes=core.Tools.deepClone(this._previousSequenceNodes);if(insertNodes==null)return;const refString=this._generateRefString(currentSelection);this._formulaPromptService.setSequenceNodes(insertNodes),this._formulaPromptService.insertSequenceRef(this._previousInsertRefStringIndex,refString),this._syncToEditor(insertNodes,this._previousInsertRefStringIndex+refString.length);const selectionDatas=this._selectionRenderService.getSelectionDataWithStyle();this._insertSelections=[],selectionDatas.forEach(currentSelection2=>{const range=sheets.convertSelectionDataToRange(currentSelection2);this._insertSelections.push(range)})}_focusIsOnlyRange(selectionCount){const currentEditor=this._editorService.getFocusEditor();return!currentEditor||!currentEditor.onlyInputRange()||this._existsSequenceNode||selectionCount>1||this._previousSequenceNodes!=null&&this._previousSequenceNodes.length>0?!0:(this._previousInsertRefStringIndex!=null&&(this._previousInsertRefStringIndex+=1),!1)}_resetSequenceNodes(selectionCount){const currentEditor=this._editorService.getFocusEditor();currentEditor&&currentEditor.onlyInputRange()&&(selectionCount>1||this._existsSequenceNode&&(this._formulaPromptService.clearSequenceNodes(),this._previousRangesCount=0,this._existsSequenceNode=!1))}_updateRefSelectionStyle(refSelectionRenderService,refSelections){const controls=refSelectionRenderService.getSelectionControls(),[unitId,sheetId]=refSelectionRenderService.getLocation(),matchedControls=new Set;for(let i=0,len=refSelections.length;i<len;i++){const refSelection=refSelections[i],{refIndex,themeColor,token}=refSelection,rangeWithSheet=engineFormula.deserializeRangeWithSheet(token),{unitId:refUnitId,sheetName,range}=rangeWithSheet;if(!refUnitId&&refUnitId.length>0&&unitId!==refUnitId)continue;const refSheetId=this._getSheetIdByName(unitId,sheetName.trim());if(refSheetId&&refSheetId!==sheetId)continue;const control=controls.find(c=>{const{startRow,startColumn,endRow,endColumn,rangeType}=c.getRange();return rangeType===core.RANGE_TYPE.COLUMN&&startColumn===range.startColumn&&endColumn===range.endColumn||rangeType===core.RANGE_TYPE.ROW&&startRow===range.startRow&&endRow===range.endRow||startRow===range.startRow&&startColumn===range.startColumn&&endRow===range.endRow&&endColumn===range.endColumn||startRow===range.startRow&&startColumn===range.startColumn&&range.startRow===range.endRow&&range.startColumn===range.endColumn});if(control){const style=getFormulaRefSelectionStyle(this._themeService,themeColor,refIndex.toString());control.updateStyle(style),matchedControls.add(control)}}}_onSelectionControlChange(toRange,selectionControl){var _a23;const{skeleton}=this._getCurrentUnitIdAndSheetId();this._formulaPromptService.enableLockedSelectionChange();const id=(_a23=selectionControl.currentStyle)==null?void 0:_a23.id;if(!id||!core.Tools.isStringNumber(id))return;let{startRow,endRow,startColumn,endColumn}=toRange;const primary=skeleton?skeleton.worksheet.getCellInfoInMergeData(startRow,startColumn):{actualRow:startRow,actualColumn:startColumn,isMergedMainCell:!1,isMerged:!1,endRow:startRow,endColumn:startColumn,startRow,startColumn};if(primary){const{isMerged,isMergedMainCell,startRow:mergeStartRow,endRow:mergeEndRow,startColumn:mergeStartColumn,endColumn:mergeEndColumn}=primary;(isMerged||isMergedMainCell)&&mergeStartRow===startRow&&mergeStartColumn===startColumn&&mergeEndRow===endRow&&mergeEndColumn===endColumn&&(startRow=mergeStartRow,startColumn=mergeStartColumn,endRow=mergeStartRow,endColumn=mergeStartColumn)}const nodeIndex=Number(id),currentNode=this._formulaPromptService.getCurrentSequenceNodeByIndex(nodeIndex);let refType={startAbsoluteRefType:core.AbsoluteRefType.NONE};if(typeof currentNode!="string"){const token=currentNode.token;refType=engineFormula.getAbsoluteRefTypeWitString(token),refType.endAbsoluteRefType==null&&(refType.endAbsoluteRefType=refType.startAbsoluteRefType)}const unitId=skeleton==null?void 0:skeleton.worksheet.getUnitId(),sheetId=skeleton==null?void 0:skeleton.worksheet.getSheetId(),refString=this._generateRefString({range:{startRow:Math.min(startRow,endRow),endRow:Math.max(startRow,endRow),startColumn:Math.min(startColumn,endColumn),endColumn:Math.max(startColumn,endColumn),...refType,sheetId,unitId},primary,style:null});this._formulaPromptService.updateSequenceRef(nodeIndex,refString);const sequenceNodes=this._formulaPromptService.getSequenceNodes(),node=sequenceNodes[nodeIndex];typeof node!="string"&&(this._syncToEditor(sequenceNodes,node.endIndex+1),selectionControl.update(toRange,void 0,void 0,void 0,this._selectionRenderService.attachPrimaryWithCoord(primary)))}_refreshFormulaAndCellEditor(unitIds){var _a23;for(const unitId of unitIds){const editorObject=sheetsUi.getEditorObject(unitId,this._renderManagerService),documentComponent=editorObject==null?void 0:editorObject.document;documentComponent!=null&&((_a23=documentComponent.getSkeleton())==null||_a23.calculate(),documentComponent.makeDirty())}}_cursorStateListener(){const editorObject=this._getEditorObject();if(editorObject==null)return;const{mainComponent:documentComponent}=editorObject;documentComponent&&this.disposeWithMe(documentComponent.onPointerDown$.subscribeEvent(()=>{this._arrowMoveActionState=1,this._inputPanelState=3}))}_pressEnter(params){const{keycode,isSingleEditor=!1}=params;if(this._formulaPromptService.isSearching()){this._formulaPromptService.accept(!0);return}isSingleEditor!==!0&&this._editorBridgeService.changeVisible({visible:!1,eventType:engineRender.DeviceInputEventType.Keyboard,keycode,unitId:""})}_pressTab(params){const{keycode,isSingleEditor=!1}=params;if(this._formulaPromptService.isSearching()){this._formulaPromptService.accept(!0);return}isSingleEditor!==!0&&this._editorBridgeService.changeVisible({visible:!1,eventType:engineRender.DeviceInputEventType.Keyboard,keycode,unitId:""})}_pressEsc(params){const{keycode}=params,focusEditor=this._editorService.getFocusEditor();(!focusEditor||(focusEditor==null?void 0:focusEditor.isSheetEditor())===!0)&&this._editorBridgeService.changeVisible({visible:!1,eventType:engineRender.DeviceInputEventType.Keyboard,keycode,unitId:""})}_pressArrowKey(params){const{keycode,metaKey}=params;let direction=core.Direction.DOWN;keycode===ui.KeyCode.ARROW_DOWN?direction=core.Direction.DOWN:keycode===ui.KeyCode.ARROW_UP?direction=core.Direction.UP:keycode===ui.KeyCode.ARROW_LEFT?direction=core.Direction.LEFT:keycode===ui.KeyCode.ARROW_RIGHT&&(direction=core.Direction.RIGHT),metaKey===ui.MetaKeys.CTRL_COMMAND?this._commandService.executeCommand(sheetsUi.MoveSelectionCommand.id,{direction,jumpOver:sheetsUi.JumpOver.moveGap}):metaKey===ui.MetaKeys.SHIFT?this._commandService.executeCommand(sheetsUi.ExpandSelectionCommand.id,{direction}):metaKey===META_KEY_CTRL_AND_SHIFT?this._commandService.executeCommand(sheetsUi.ExpandSelectionCommand.id,{direction,jumpOver:sheetsUi.JumpOver.moveGap}):this._commandService.executeCommand(sheetsUi.MoveSelectionCommand.id,{direction})}_commandExecutedListener(){const updateCommandList=[SelectEditorFormulaOperation.id];this.disposeWithMe(this._commandService.onCommandExecuted(command=>{if(command.id===ReferenceAbsoluteOperation.id)this._changeRefString();else if(updateCommandList.includes(command.id)){const params=command.params,{keycode,isSingleEditor=!1}=params;if(keycode===ui.KeyCode.ENTER){this._pressEnter(params);return}if(keycode===ui.KeyCode.TAB){this._pressTab(params);return}if(keycode===ui.KeyCode.ESC){this._pressEsc(params);return}if(this._formulaPromptService.isSearching()){if(keycode===ui.KeyCode.ARROW_DOWN){this._formulaPromptService.navigate({direction:core.Direction.DOWN});return}if(keycode===ui.KeyCode.ARROW_UP){this._formulaPromptService.navigate({direction:core.Direction.UP});return}}if(isSingleEditor===!0)return;if(this._arrowMoveActionState===1){this._moveInEditor(keycode);return}if(this._arrowMoveActionState===4){this._editorBridgeService.changeVisible({visible:!1,eventType:engineRender.DeviceInputEventType.Keyboard,keycode,unitId:""});return}if(this._arrowMoveActionState===2&&(this._arrowMoveActionState=3),this._refSelectionsService.getCurrentSelections().length===0){const selectionData=this._sheetsSelectionsService.getCurrentLastSelection();if(selectionData!=null){const selectionDataNew=core.Tools.deepClone(selectionData);this._refSelectionsService.addSelections([selectionDataNew])}}this._pressArrowKey(params);const selectionWithStyles=this._refSelectionsService.getCurrentSelections(),currentSelection=selectionWithStyles[selectionWithStyles.length-1];this._insertControlSelectionReplace(currentSelection),this._highlightFormula()}}))}_moveInEditor(keycode){if(keycode==null)return;let direction=core.Direction.LEFT;keycode===ui.KeyCode.ARROW_DOWN?direction=core.Direction.DOWN:keycode===ui.KeyCode.ARROW_UP?direction=core.Direction.UP:keycode===ui.KeyCode.ARROW_RIGHT&&(direction=core.Direction.RIGHT),this._commandService.executeCommand(docsUi.MoveCursorOperation.id,{direction})}_userMouseListener(){const editorObject=this._getEditorObject();if(editorObject==null)return;const{mainComponent:documentComponent}=editorObject;documentComponent&&this.disposeWithMe(documentComponent==null?void 0:documentComponent.onPointerDown$.subscribeEvent(()=>{this._userCursorMove=!0}))}_inputFormulaListener(){this.disposeWithMe(this._editorService.inputFormula$.subscribe(param=>{const{formulaString,editorUnitId}=param;if(formulaString.substring(0,1)!==engineFormula.compareToken.EQUALS)return;const{unitId}=this._getCurrentUnitIdAndSheetId();this._editorBridgeService.isVisible().visible===!1&&this._editorBridgeService.changeVisible({visible:!0,eventType:engineRender.DeviceInputEventType.Dblclick,unitId});const lastSequenceNodes=this._lexerTreeBuilder.sequenceNodesBuilder(formulaString)||[];this._formulaPromptService.setSequenceNodes(lastSequenceNodes),this._syncToEditor(lastSequenceNodes,formulaString.length-1,editorUnitId,!0,!1)}))}_changeRefString(){const activeRange=this._docSelectionManagerService.getActiveTextRange();if(activeRange==null)return;const{startOffset}=activeRange,strIndex=startOffset-2,nodeIndex=this._formulaPromptService.getCurrentSequenceNodeIndex(strIndex),node=this._formulaPromptService.getCurrentSequenceNodeByIndex(nodeIndex);if(node==null||typeof node=="string"||node.nodeType!==engineFormula.sequenceNodeType.REFERENCE)return;const tokenArray=node.token.split("!");let token=node.token;tokenArray.length>1&&(token=tokenArray[tokenArray.length-1]);let unitIDAndSheetName="";for(let i=0,len=tokenArray.length;i<len-1;i++)unitIDAndSheetName+=tokenArray[i];let finalToken=token;if(token.indexOf(engineFormula.matchToken.COLON)>-1)if(!this._userCursorMove)finalToken=this._changeRangeRef(token);else{const refStringSplit=token.split(engineFormula.matchToken.COLON),prefix=refStringSplit[0],suffix=refStringSplit[1];strIndex-node.startIndex<=prefix.length?finalToken=this._changeSingleRef(prefix)+engineFormula.matchToken.COLON+suffix:finalToken=prefix+engineFormula.matchToken.COLON+this._changeSingleRef(suffix)}else finalToken=this._changeSingleRef(token);finalToken=unitIDAndSheetName+finalToken;const difference=finalToken.length-node.token.length;this._formulaPromptService.updateSequenceRef(nodeIndex,finalToken),this._syncToEditor(this._formulaPromptService.getSequenceNodes(),strIndex+difference+1)}_changeRangeRef(token){const range=engineFormula.deserializeRangeWithSheet(token).range;let resultToken="";return range.startAbsoluteRefType===core.AbsoluteRefType.NONE||range.startAbsoluteRefType==null?(range.startAbsoluteRefType=core.AbsoluteRefType.ALL,range.endAbsoluteRefType=core.AbsoluteRefType.ALL):(range.startAbsoluteRefType=core.AbsoluteRefType.NONE,range.endAbsoluteRefType=core.AbsoluteRefType.NONE),resultToken=engineFormula.serializeRange(range),resultToken}_changeSingleRef(token){const range=engineFormula.deserializeRangeWithSheet(token).range,type=range.startAbsoluteRefType;let resultToken="";return type===core.AbsoluteRefType.NONE||type==null?(range.startAbsoluteRefType=core.AbsoluteRefType.ALL,range.endAbsoluteRefType=core.AbsoluteRefType.ALL):type===core.AbsoluteRefType.ALL?(range.startAbsoluteRefType=core.AbsoluteRefType.ROW,range.endAbsoluteRefType=core.AbsoluteRefType.ROW):type===core.AbsoluteRefType.ROW?(range.startAbsoluteRefType=core.AbsoluteRefType.COLUMN,range.endAbsoluteRefType=core.AbsoluteRefType.COLUMN):(range.startAbsoluteRefType=core.AbsoluteRefType.NONE,range.endAbsoluteRefType=core.AbsoluteRefType.NONE),resultToken=engineFormula.serializeRange(range),resultToken}_getEditorObject(){const editorUnitId=this._univerInstanceService.getCurrentUniverDocInstance().getUnitId(),editor=this._editorService.getEditor(editorUnitId);return editor==null?void 0:editor.render}_isFormulaEditorActivated(){return this._editorBridgeService.isVisible().visible===!0||this._contextService.getContextValue(core.FORMULA_EDITOR_ACTIVATED)}_isSheetOrFormulaEditor(editor){return editor.isSheetEditor()||editor.isFormulaEditor()}},__name(_a19,"PromptController"),_a19);PromptController=__decorateClass$1([core.OnLifecycle(core.LifecycleStages.Steady,PromptController),__decorateParam$1(0,core.ICommandService),__decorateParam$1(1,core.IContextService),__decorateParam$1(2,core.Inject(sheetsUi.IEditorBridgeService)),__decorateParam$1(3,core.Inject(IFormulaPromptService)),__decorateParam$1(4,core.Inject(engineFormula.LexerTreeBuilder)),__decorateParam$1(5,engineRender.IRenderManagerService),__decorateParam$1(6,core.Inject(core.ThemeService)),__decorateParam$1(7,core.Inject(sheets.SheetsSelectionsService)),__decorateParam$1(8,sheets.IRefSelectionsService),__decorateParam$1(9,core.IUniverInstanceService),__decorateParam$1(10,core.Inject(IDescriptionService)),__decorateParam$1(11,core.Inject(docs.DocSelectionManagerService)),__decorateParam$1(12,ui.IContextMenuService),__decorateParam$1(13,docsUi.IEditorService),__decorateParam$1(14,ui.ILayoutService)],PromptController);var __defProp2=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__defNormalProp2=__name((obj,key,value)=>key in obj?__defProp2(obj,key,{enumerable:!0,configurable:!0,writable:!0,value}):obj[key]=value,"__defNormalProp"),__decorateClass=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp2(target,key,result),result},"__decorateClass"),__decorateParam=__name((index,decorator)=>(target,key)=>decorator(target,key,index),"__decorateParam"),__publicField2=__name((obj,key,value)=>__defNormalProp2(obj,typeof key!="symbol"?key+"":key,value),"__publicField"),_a20;exports.UniverRemoteSheetsFormulaPlugin=(_a20=class extends core.Plugin{constructor(_config=defaultPluginRemoteConfig,_injector,_configService){super(),this._config=_config,this._injector=_injector,this._configService=_configService;const{...rest}=this._config;this._configService.setConfig(PLUGIN_CONFIG_KEY_REMOTE,rest)}onStarting(){this._injector.add([exports.RemoteRegisterFunctionService]),this._injector.get(rpc.IRPCChannelService).registerChannel(RemoteRegisterFunctionServiceName,rpc.fromModule(this._injector.get(exports.RemoteRegisterFunctionService)))}},__name(_a20,"UniverRemoteSheetsFormulaPlugin"),_a20);__publicField2(exports.UniverRemoteSheetsFormulaPlugin,"pluginName","SHEET_FORMULA_REMOTE_PLUGIN");__publicField2(exports.UniverRemoteSheetsFormulaPlugin,"type",core.UniverInstanceType.UNIVER_SHEET);exports.UniverRemoteSheetsFormulaPlugin=__decorateClass([core.DependentOn(engineFormula.UniverFormulaEnginePlugin),__decorateParam(1,core.Inject(core.Injector)),__decorateParam(2,core.IConfigService)],exports.UniverRemoteSheetsFormulaPlugin);var _a21;exports.UniverSheetsFormulaPlugin=(_a21=class extends core.Plugin{constructor(_config=defaultPluginBaseConfig,_injector,_renderManagerService,_configService){super(),this._config=_config,this._injector=_injector,this._renderManagerService=_renderManagerService,this._configService=_configService;const{menu,...rest}=this._config;menu&&this._configService.setConfig("menu",menu,{merge:!0}),this._configService.setConfig(PLUGIN_CONFIG_KEY_BASE,rest)}onStarting(){const j=this._injector,dependencies=[[IFormulaPromptService,{useClass:FormulaPromptService}],[sheets.IRefSelectionsService,{useClass:sheets.RefSelectionsService}],[IDescriptionService,{useClass:exports.DescriptionService}],[IRegisterFunctionService,{useClass:exports.RegisterFunctionService}],[exports.FormulaRefRangeService],[exports.RegisterOtherFormulaService],[FormulaUIController],[FormulaAutoFillController],[FormulaClipboardController],[ArrayFormulaDisplayController],[TriggerCalculationController],[UpdateFormulaController],[FormulaEditorShowController],[ActiveDirtyController],[DefinedNameController],[FormulaRenderManagerController],[PromptController]];if(this._config.notExecuteFormula){const rpcChannelService=j.get(rpc.IRPCChannelService);dependencies.push([IRemoteRegisterFunctionService,{useFactory:__name(()=>rpc.toModule(rpcChannelService.requestChannel(RemoteRegisterFunctionServiceName)),"useFactory")}])}dependencies.forEach(dependency=>j.add(dependency))}onRendered(){[[RefSelectionsRenderService],[FormulaAlertRenderController]].forEach(dep=>{this.disposeWithMe(this._renderManagerService.registerRenderModule(core.UniverInstanceType.UNIVER_SHEET,dep))})}},__name(_a21,"UniverSheetsFormulaPlugin"),_a21);__publicField2(exports.UniverSheetsFormulaPlugin,"pluginName",FORMULA_UI_PLUGIN_NAME);__publicField2(exports.UniverSheetsFormulaPlugin,"type",core.UniverInstanceType.UNIVER_SHEET);exports.UniverSheetsFormulaPlugin=__decorateClass([core.DependentOn(engineFormula.UniverFormulaEnginePlugin),__decorateParam(1,core.Inject(core.Injector)),__decorateParam(2,engineRender.IRenderManagerService),__decorateParam(3,core.IConfigService)],exports.UniverSheetsFormulaPlugin);var _a22;exports.UniverSheetsFormulaMobilePlugin=(_a22=class extends core.Plugin{constructor(_config=defaultPluginMobileConfig,_injector,_configService){super(),this._config=_config,this._injector=_injector,this._configService=_configService;const{menu,...rest}=this._config;menu&&this._configService.setConfig("menu",menu,{merge:!0}),this._configService.setConfig(PLUGIN_CONFIG_KEY_MOBILE,rest)}onStarting(){this._init()}_init(){[[IFormulaPromptService,{useClass:FormulaPromptService}],[IDescriptionService,{useClass:exports.DescriptionService}],[IRegisterFunctionService,{useClass:exports.RegisterFunctionService}],[exports.FormulaRefRangeService],[exports.RegisterOtherFormulaService],[FormulaClipboardController],[ArrayFormulaDisplayController],[TriggerCalculationController],[UpdateFormulaController],[ActiveDirtyController],[DefinedNameController],[FormulaRenderManagerController]].forEach(dependency=>this._injector.add(dependency))}},__name(_a22,"UniverSheetsFormulaMobilePlugin"),__publicField(_a22,"pluginName",FORMULA_UI_PLUGIN_NAME),__publicField(_a22,"type",core.UniverInstanceType.UNIVER_SHEET),_a22);exports.UniverSheetsFormulaMobilePlugin=__decorateClass([__decorateParam(1,core.Inject(core.Injector)),__decorateParam(2,core.IConfigService)],exports.UniverSheetsFormulaMobilePlugin);exports.FORMULA_PROMPT_ACTIVATED=FORMULA_PROMPT_ACTIVATED;exports.HelpFunctionOperation=HelpFunctionOperation;exports.IDescriptionService=IDescriptionService;exports.IRegisterFunctionService=IRegisterFunctionService;exports.IRemoteRegisterFunctionService=IRemoteRegisterFunctionService;exports.InsertFunctionCommand=InsertFunctionCommand;exports.InsertFunctionOperation=InsertFunctionOperation;exports.MoreFunctionsOperation=MoreFunctionsOperation;exports.OtherFormulaMarkDirty=OtherFormulaMarkDirty;exports.ReferenceAbsoluteOperation=ReferenceAbsoluteOperation;exports.SearchFunctionOperation=SearchFunctionOperation;exports.SelectEditorFormulaOperation=SelectEditorFormulaOperation;exports.SheetOnlyPasteFormulaCommand=SheetOnlyPasteFormulaCommand;