index.js 501 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209421042114212421342144215421642174218421942204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245424642474248424942504251425242534254425542564257425842594260426142624263426442654266426742684269427042714272427342744275427642774278427942804281428242834284428542864287428842894290429142924293429442954296429742984299430043014302430343044305430643074308430943104311431243134314431543164317431843194320432143224323432443254326432743284329433043314332433343344335433643374338433943404341434243434344434543464347434843494350435143524353435443554356435743584359436043614362436343644365436643674368436943704371437243734374437543764377437843794380438143824383438443854386438743884389439043914392439343944395439643974398439944004401440244034404440544064407440844094410441144124413441444154416441744184419442044214422442344244425442644274428442944304431443244334434443544364437443844394440444144424443444444454446444744484449445044514452445344544455445644574458445944604461446244634464446544664467446844694470447144724473447444754476447744784479448044814482448344844485448644874488448944904491449244934494449544964497449844994500450145024503450445054506450745084509451045114512451345144515451645174518451945204521452245234524452545264527452845294530453145324533453445354536453745384539454045414542454345444545454645474548454945504551455245534554455545564557455845594560456145624563456445654566456745684569457045714572457345744575457645774578457945804581458245834584458545864587458845894590459145924593459445954596459745984599460046014602460346044605460646074608460946104611461246134614461546164617461846194620462146224623462446254626462746284629463046314632463346344635463646374638463946404641464246434644464546464647464846494650465146524653465446554656465746584659466046614662466346644665466646674668466946704671467246734674467546764677467846794680468146824683468446854686468746884689469046914692469346944695469646974698469947004701470247034704470547064707470847094710471147124713471447154716471747184719472047214722472347244725472647274728472947304731473247334734473547364737473847394740474147424743474447454746474747484749475047514752475347544755475647574758475947604761476247634764476547664767476847694770477147724773477447754776477747784779478047814782478347844785478647874788478947904791479247934794479547964797479847994800480148024803480448054806480748084809481048114812481348144815481648174818481948204821482248234824482548264827482848294830483148324833483448354836483748384839484048414842484348444845484648474848484948504851485248534854485548564857485848594860486148624863486448654866486748684869487048714872487348744875487648774878487948804881488248834884488548864887488848894890489148924893489448954896489748984899490049014902490349044905490649074908490949104911491249134914491549164917491849194920492149224923492449254926492749284929493049314932493349344935493649374938493949404941494249434944494549464947494849494950495149524953495449554956495749584959496049614962496349644965496649674968496949704971497249734974497549764977497849794980498149824983498449854986498749884989499049914992499349944995499649974998499950005001500250035004500550065007500850095010501150125013501450155016501750185019502050215022502350245025502650275028502950305031503250335034503550365037503850395040504150425043504450455046504750485049505050515052505350545055505650575058505950605061506250635064506550665067506850695070507150725073507450755076507750785079508050815082508350845085508650875088508950905091509250935094509550965097509850995100510151025103510451055106510751085109511051115112511351145115511651175118511951205121512251235124512551265127512851295130513151325133513451355136513751385139514051415142514351445145514651475148514951505151515251535154515551565157515851595160516151625163516451655166516751685169517051715172517351745175517651775178517951805181518251835184518551865187518851895190519151925193519451955196519751985199520052015202520352045205520652075208520952105211521252135214521552165217521852195220522152225223522452255226522752285229523052315232523352345235523652375238523952405241524252435244524552465247524852495250525152525253525452555256525752585259526052615262526352645265526652675268526952705271527252735274527552765277527852795280528152825283528452855286528752885289529052915292529352945295529652975298529953005301530253035304530553065307530853095310531153125313531453155316531753185319532053215322532353245325532653275328532953305331533253335334533553365337533853395340534153425343534453455346534753485349535053515352535353545355535653575358535953605361536253635364536553665367536853695370537153725373537453755376537753785379538053815382538353845385538653875388538953905391539253935394539553965397539853995400540154025403540454055406540754085409541054115412541354145415541654175418541954205421542254235424542554265427542854295430543154325433543454355436543754385439544054415442544354445445544654475448544954505451545254535454545554565457545854595460546154625463546454655466546754685469547054715472547354745475547654775478547954805481548254835484548554865487548854895490549154925493549454955496549754985499550055015502550355045505550655075508550955105511551255135514551555165517551855195520552155225523552455255526552755285529553055315532553355345535553655375538553955405541554255435544554555465547554855495550555155525553555455555556555755585559556055615562556355645565556655675568556955705571557255735574557555765577557855795580558155825583558455855586558755885589559055915592559355945595559655975598559956005601560256035604560556065607560856095610561156125613561456155616561756185619562056215622562356245625562656275628562956305631563256335634563556365637563856395640564156425643564456455646564756485649565056515652565356545655565656575658565956605661566256635664566556665667566856695670567156725673567456755676567756785679568056815682568356845685568656875688568956905691569256935694569556965697569856995700570157025703570457055706570757085709571057115712571357145715571657175718571957205721572257235724572557265727572857295730573157325733573457355736573757385739574057415742574357445745574657475748574957505751575257535754575557565757575857595760576157625763576457655766576757685769577057715772577357745775577657775778577957805781578257835784578557865787578857895790579157925793579457955796579757985799580058015802580358045805580658075808580958105811581258135814581558165817581858195820582158225823582458255826582758285829583058315832583358345835583658375838583958405841584258435844584558465847584858495850585158525853585458555856585758585859586058615862586358645865586658675868586958705871587258735874587558765877587858795880588158825883588458855886588758885889589058915892589358945895589658975898589959005901590259035904590559065907590859095910591159125913591459155916591759185919592059215922592359245925592659275928592959305931593259335934593559365937593859395940594159425943594459455946594759485949595059515952595359545955595659575958595959605961596259635964596559665967596859695970597159725973597459755976597759785979598059815982598359845985598659875988598959905991599259935994599559965997599859996000600160026003600460056006600760086009601060116012601360146015601660176018601960206021602260236024602560266027602860296030603160326033603460356036603760386039604060416042604360446045604660476048604960506051605260536054605560566057605860596060606160626063606460656066606760686069607060716072607360746075607660776078607960806081608260836084608560866087608860896090609160926093609460956096609760986099610061016102610361046105610661076108610961106111611261136114611561166117611861196120612161226123612461256126612761286129613061316132613361346135613661376138613961406141614261436144614561466147614861496150615161526153615461556156615761586159616061616162616361646165616661676168616961706171617261736174617561766177617861796180618161826183618461856186618761886189619061916192619361946195619661976198619962006201620262036204620562066207620862096210621162126213621462156216621762186219622062216222622362246225622662276228622962306231623262336234623562366237623862396240624162426243624462456246624762486249625062516252625362546255625662576258625962606261626262636264626562666267626862696270627162726273627462756276627762786279628062816282628362846285628662876288628962906291629262936294629562966297629862996300630163026303630463056306630763086309631063116312631363146315631663176318631963206321632263236324632563266327632863296330633163326333633463356336633763386339634063416342634363446345634663476348634963506351635263536354635563566357635863596360636163626363636463656366636763686369637063716372637363746375637663776378637963806381638263836384638563866387638863896390639163926393639463956396639763986399640064016402640364046405640664076408640964106411641264136414641564166417641864196420642164226423642464256426642764286429643064316432643364346435643664376438643964406441644264436444644564466447644864496450645164526453645464556456645764586459646064616462646364646465646664676468646964706471647264736474647564766477647864796480648164826483648464856486648764886489649064916492649364946495649664976498649965006501650265036504650565066507650865096510651165126513651465156516651765186519652065216522652365246525652665276528652965306531653265336534653565366537653865396540654165426543654465456546654765486549655065516552655365546555655665576558655965606561656265636564656565666567656865696570657165726573657465756576657765786579658065816582658365846585658665876588658965906591659265936594659565966597659865996600660166026603660466056606660766086609661066116612661366146615661666176618661966206621662266236624662566266627662866296630663166326633663466356636663766386639664066416642664366446645664666476648664966506651665266536654665566566657665866596660666166626663666466656666666766686669667066716672667366746675667666776678667966806681668266836684668566866687668866896690669166926693669466956696669766986699670067016702670367046705670667076708670967106711671267136714671567166717671867196720672167226723672467256726672767286729673067316732673367346735673667376738673967406741674267436744674567466747674867496750675167526753675467556756675767586759676067616762676367646765676667676768676967706771677267736774677567766777677867796780678167826783678467856786678767886789679067916792679367946795679667976798679968006801680268036804680568066807680868096810681168126813681468156816681768186819682068216822682368246825682668276828682968306831683268336834683568366837683868396840684168426843684468456846684768486849685068516852685368546855685668576858685968606861686268636864686568666867686868696870687168726873687468756876687768786879688068816882688368846885688668876888688968906891689268936894689568966897689868996900690169026903690469056906690769086909691069116912691369146915691669176918691969206921692269236924692569266927692869296930693169326933693469356936693769386939694069416942694369446945694669476948694969506951695269536954695569566957695869596960696169626963696469656966696769686969697069716972697369746975697669776978697969806981698269836984698569866987698869896990699169926993699469956996699769986999700070017002700370047005700670077008700970107011701270137014701570167017701870197020702170227023702470257026702770287029703070317032703370347035703670377038703970407041704270437044704570467047704870497050705170527053705470557056705770587059706070617062706370647065706670677068706970707071707270737074707570767077707870797080708170827083708470857086708770887089709070917092709370947095709670977098709971007101710271037104710571067107710871097110711171127113711471157116711771187119712071217122712371247125712671277128712971307131713271337134713571367137713871397140714171427143714471457146714771487149715071517152715371547155715671577158715971607161716271637164716571667167716871697170717171727173717471757176717771787179718071817182718371847185718671877188718971907191719271937194719571967197719871997200720172027203720472057206720772087209721072117212721372147215721672177218721972207221722272237224722572267227722872297230723172327233723472357236723772387239724072417242724372447245724672477248724972507251725272537254725572567257725872597260726172627263726472657266726772687269727072717272727372747275727672777278727972807281728272837284728572867287728872897290729172927293729472957296729772987299730073017302730373047305730673077308730973107311731273137314731573167317731873197320732173227323732473257326732773287329733073317332733373347335733673377338733973407341734273437344734573467347734873497350735173527353735473557356735773587359736073617362736373647365736673677368736973707371737273737374737573767377737873797380738173827383738473857386738773887389739073917392739373947395739673977398739974007401740274037404740574067407740874097410741174127413741474157416741774187419742074217422742374247425742674277428742974307431743274337434743574367437743874397440744174427443744474457446744774487449745074517452745374547455745674577458745974607461746274637464746574667467746874697470747174727473747474757476747774787479748074817482748374847485748674877488748974907491749274937494749574967497749874997500750175027503750475057506750775087509751075117512751375147515751675177518751975207521752275237524752575267527752875297530753175327533753475357536753775387539754075417542754375447545754675477548754975507551755275537554755575567557755875597560756175627563756475657566756775687569757075717572757375747575757675777578757975807581758275837584758575867587758875897590759175927593759475957596759775987599760076017602760376047605760676077608760976107611761276137614761576167617761876197620762176227623762476257626762776287629763076317632763376347635763676377638763976407641764276437644764576467647764876497650765176527653765476557656765776587659766076617662766376647665766676677668766976707671767276737674767576767677767876797680768176827683768476857686768776887689769076917692769376947695769676977698769977007701770277037704770577067707770877097710771177127713771477157716771777187719772077217722772377247725772677277728772977307731773277337734773577367737773877397740774177427743774477457746774777487749775077517752775377547755775677577758775977607761776277637764776577667767776877697770777177727773777477757776777777787779778077817782778377847785778677877788778977907791779277937794779577967797779877997800780178027803780478057806780778087809781078117812781378147815781678177818781978207821782278237824782578267827782878297830783178327833783478357836783778387839784078417842784378447845784678477848784978507851785278537854785578567857785878597860786178627863786478657866786778687869787078717872787378747875787678777878787978807881788278837884788578867887788878897890789178927893789478957896789778987899790079017902790379047905790679077908790979107911791279137914791579167917791879197920792179227923792479257926792779287929793079317932793379347935793679377938793979407941794279437944794579467947794879497950795179527953795479557956795779587959796079617962796379647965796679677968796979707971797279737974797579767977797879797980798179827983798479857986798779887989799079917992799379947995799679977998799980008001800280038004800580068007800880098010801180128013801480158016801780188019802080218022802380248025802680278028802980308031803280338034803580368037803880398040804180428043804480458046804780488049805080518052805380548055805680578058805980608061806280638064806580668067806880698070807180728073807480758076807780788079808080818082808380848085808680878088808980908091809280938094809580968097809880998100810181028103810481058106810781088109811081118112811381148115811681178118811981208121812281238124812581268127812881298130813181328133813481358136813781388139814081418142814381448145814681478148814981508151815281538154815581568157815881598160816181628163816481658166816781688169817081718172817381748175817681778178817981808181818281838184818581868187818881898190819181928193819481958196819781988199820082018202820382048205820682078208820982108211821282138214821582168217821882198220822182228223822482258226822782288229823082318232823382348235823682378238823982408241824282438244824582468247824882498250825182528253825482558256825782588259826082618262826382648265826682678268826982708271827282738274827582768277827882798280828182828283828482858286828782888289829082918292829382948295829682978298829983008301830283038304830583068307830883098310831183128313831483158316831783188319832083218322832383248325832683278328832983308331833283338334833583368337833883398340834183428343834483458346834783488349835083518352835383548355835683578358835983608361836283638364836583668367836883698370837183728373837483758376837783788379838083818382838383848385838683878388838983908391839283938394839583968397839883998400840184028403840484058406840784088409841084118412841384148415841684178418841984208421842284238424842584268427842884298430843184328433843484358436843784388439844084418442844384448445844684478448844984508451845284538454845584568457845884598460846184628463846484658466846784688469847084718472847384748475847684778478847984808481848284838484848584868487848884898490849184928493849484958496849784988499850085018502850385048505850685078508850985108511851285138514851585168517851885198520852185228523852485258526852785288529853085318532853385348535853685378538853985408541854285438544854585468547854885498550855185528553855485558556855785588559856085618562856385648565856685678568856985708571857285738574857585768577857885798580858185828583858485858586858785888589859085918592859385948595859685978598859986008601860286038604860586068607860886098610861186128613861486158616861786188619862086218622862386248625862686278628862986308631863286338634863586368637863886398640864186428643864486458646864786488649865086518652865386548655865686578658865986608661866286638664866586668667866886698670867186728673867486758676867786788679868086818682868386848685868686878688868986908691869286938694869586968697869886998700870187028703870487058706870787088709871087118712871387148715871687178718871987208721872287238724872587268727872887298730873187328733873487358736873787388739874087418742874387448745874687478748874987508751875287538754875587568757875887598760876187628763876487658766876787688769877087718772877387748775877687778778877987808781878287838784878587868787878887898790879187928793879487958796879787988799880088018802880388048805880688078808880988108811881288138814881588168817881888198820882188228823882488258826882788288829883088318832883388348835883688378838883988408841884288438844884588468847884888498850885188528853885488558856885788588859886088618862886388648865886688678868886988708871887288738874887588768877887888798880888188828883888488858886888788888889889088918892889388948895889688978898889989008901890289038904890589068907890889098910891189128913891489158916891789188919892089218922892389248925892689278928892989308931893289338934893589368937893889398940894189428943894489458946894789488949895089518952895389548955895689578958895989608961896289638964896589668967896889698970897189728973897489758976897789788979898089818982898389848985898689878988898989908991899289938994899589968997899889999000900190029003900490059006900790089009901090119012901390149015901690179018901990209021902290239024902590269027902890299030903190329033903490359036903790389039904090419042904390449045904690479048904990509051905290539054905590569057905890599060906190629063906490659066906790689069907090719072907390749075907690779078907990809081908290839084908590869087908890899090909190929093909490959096909790989099910091019102910391049105910691079108910991109111911291139114911591169117911891199120912191229123912491259126912791289129913091319132913391349135913691379138913991409141914291439144914591469147914891499150915191529153915491559156915791589159916091619162916391649165916691679168916991709171917291739174917591769177917891799180918191829183918491859186918791889189919091919192919391949195919691979198919992009201920292039204920592069207920892099210921192129213921492159216921792189219922092219222922392249225922692279228922992309231923292339234923592369237923892399240924192429243924492459246924792489249925092519252925392549255925692579258925992609261926292639264926592669267926892699270927192729273927492759276927792789279928092819282928392849285928692879288928992909291929292939294929592969297929892999300930193029303930493059306930793089309931093119312931393149315931693179318931993209321932293239324932593269327932893299330933193329333933493359336933793389339934093419342934393449345934693479348934993509351935293539354935593569357935893599360936193629363936493659366936793689369937093719372937393749375937693779378937993809381938293839384938593869387938893899390939193929393939493959396939793989399940094019402940394049405940694079408940994109411941294139414941594169417941894199420942194229423942494259426942794289429943094319432943394349435943694379438943994409441944294439444944594469447944894499450945194529453945494559456945794589459946094619462946394649465946694679468946994709471947294739474947594769477947894799480948194829483948494859486948794889489949094919492949394949495949694979498949995009501950295039504950595069507950895099510951195129513951495159516951795189519952095219522952395249525952695279528952995309531953295339534953595369537953895399540954195429543954495459546954795489549955095519552955395549555955695579558955995609561956295639564956595669567956895699570957195729573957495759576957795789579958095819582958395849585958695879588958995909591959295939594959595969597959895999600960196029603960496059606960796089609961096119612961396149615961696179618961996209621962296239624962596269627962896299630963196329633963496359636963796389639964096419642964396449645964696479648964996509651965296539654965596569657965896599660966196629663966496659666966796689669967096719672967396749675967696779678967996809681968296839684968596869687968896899690969196929693969496959696969796989699970097019702970397049705970697079708970997109711971297139714971597169717971897199720972197229723972497259726972797289729973097319732973397349735973697379738973997409741974297439744974597469747974897499750975197529753975497559756975797589759976097619762976397649765976697679768976997709771977297739774977597769777977897799780978197829783978497859786978797889789979097919792979397949795979697979798979998009801980298039804980598069807980898099810981198129813981498159816981798189819982098219822982398249825982698279828982998309831983298339834983598369837983898399840984198429843984498459846984798489849985098519852985398549855985698579858985998609861986298639864986598669867986898699870987198729873987498759876987798789879988098819882988398849885988698879888988998909891989298939894989598969897989898999900990199029903990499059906990799089909991099119912991399149915991699179918991999209921992299239924992599269927992899299930993199329933993499359936993799389939994099419942994399449945994699479948994999509951995299539954995599569957995899599960996199629963996499659966996799689969997099719972997399749975997699779978997999809981998299839984998599869987998899899990999199929993999499959996999799989999100001000110002100031000410005100061000710008100091001010011100121001310014100151001610017100181001910020100211002210023100241002510026100271002810029100301003110032100331003410035100361003710038100391004010041100421004310044100451004610047100481004910050100511005210053100541005510056100571005810059100601006110062100631006410065100661006710068100691007010071100721007310074100751007610077100781007910080100811008210083100841008510086100871008810089100901009110092100931009410095100961009710098100991010010101101021010310104101051010610107101081010910110101111011210113101141011510116101171011810119101201012110122101231012410125101261012710128101291013010131101321013310134101351013610137101381013910140101411014210143101441014510146101471014810149101501015110152101531015410155101561015710158101591016010161101621016310164101651016610167101681016910170101711017210173101741017510176101771017810179101801018110182101831018410185101861018710188101891019010191101921019310194101951019610197101981019910200102011020210203102041020510206102071020810209102101021110212102131021410215102161021710218102191022010221102221022310224102251022610227102281022910230102311023210233102341023510236102371023810239102401024110242102431024410245102461024710248102491025010251102521025310254102551025610257102581025910260102611026210263102641026510266102671026810269102701027110272102731027410275102761027710278102791028010281102821028310284102851028610287102881028910290102911029210293102941029510296102971029810299103001030110302103031030410305103061030710308103091031010311103121031310314103151031610317103181031910320103211032210323103241032510326103271032810329103301033110332103331033410335103361033710338103391034010341103421034310344103451034610347103481034910350103511035210353103541035510356103571035810359103601036110362103631036410365103661036710368103691037010371103721037310374103751037610377103781037910380103811038210383103841038510386103871038810389103901039110392103931039410395103961039710398103991040010401104021040310404104051040610407104081040910410104111041210413104141041510416104171041810419104201042110422104231042410425104261042710428104291043010431104321043310434104351043610437104381043910440104411044210443104441044510446104471044810449104501045110452104531045410455104561045710458104591046010461104621046310464104651046610467104681046910470104711047210473104741047510476104771047810479104801048110482104831048410485104861048710488104891049010491104921049310494104951049610497104981049910500105011050210503105041050510506105071050810509105101051110512105131051410515105161051710518105191052010521105221052310524105251052610527105281052910530105311053210533105341053510536105371053810539105401054110542105431054410545105461054710548105491055010551105521055310554105551055610557105581055910560105611056210563105641056510566105671056810569105701057110572105731057410575105761057710578105791058010581105821058310584105851058610587105881058910590105911059210593105941059510596105971059810599106001060110602106031060410605106061060710608106091061010611106121061310614106151061610617106181061910620106211062210623106241062510626106271062810629106301063110632106331063410635106361063710638106391064010641106421064310644106451064610647106481064910650106511065210653106541065510656106571065810659106601066110662106631066410665106661066710668106691067010671106721067310674106751067610677106781067910680106811068210683106841068510686106871068810689106901069110692106931069410695106961069710698106991070010701107021070310704107051070610707107081070910710107111071210713107141071510716107171071810719107201072110722107231072410725107261072710728107291073010731107321073310734107351073610737107381073910740107411074210743107441074510746107471074810749107501075110752107531075410755107561075710758107591076010761107621076310764107651076610767107681076910770107711077210773107741077510776107771077810779107801078110782107831078410785107861078710788107891079010791107921079310794107951079610797107981079910800108011080210803108041080510806108071080810809108101081110812108131081410815108161081710818108191082010821108221082310824108251082610827108281082910830108311083210833108341083510836108371083810839108401084110842108431084410845108461084710848108491085010851108521085310854108551085610857108581085910860108611086210863108641086510866108671086810869108701087110872108731087410875108761087710878108791088010881108821088310884108851088610887108881088910890108911089210893108941089510896108971089810899109001090110902109031090410905109061090710908109091091010911109121091310914109151091610917109181091910920109211092210923109241092510926109271092810929109301093110932109331093410935109361093710938109391094010941109421094310944109451094610947109481094910950109511095210953109541095510956109571095810959109601096110962109631096410965109661096710968109691097010971109721097310974109751097610977109781097910980109811098210983109841098510986109871098810989109901099110992109931099410995109961099710998109991100011001110021100311004110051100611007110081100911010110111101211013110141101511016110171101811019110201102111022110231102411025110261102711028110291103011031110321103311034110351103611037110381103911040110411104211043110441104511046110471104811049110501105111052110531105411055110561105711058110591106011061110621106311064110651106611067110681106911070110711107211073110741107511076110771107811079110801108111082110831108411085110861108711088110891109011091110921109311094110951109611097110981109911100111011110211103111041110511106111071110811109111101111111112111131111411115111161111711118111191112011121111221112311124111251112611127111281112911130111311113211133111341113511136111371113811139111401114111142111431114411145111461114711148111491115011151111521115311154111551115611157111581115911160111611116211163111641116511166111671116811169111701117111172111731117411175111761117711178111791118011181111821118311184111851118611187111881118911190111911119211193111941119511196111971119811199112001120111202112031120411205112061120711208112091121011211112121121311214112151121611217112181121911220112211122211223112241122511226112271122811229112301123111232112331123411235112361123711238112391124011241112421124311244112451124611247112481124911250112511125211253112541125511256112571125811259112601126111262112631126411265112661126711268112691127011271112721127311274112751127611277112781127911280112811128211283112841128511286112871128811289112901129111292112931129411295112961129711298112991130011301113021130311304113051130611307113081130911310113111131211313113141131511316113171131811319113201132111322113231132411325113261132711328113291133011331113321133311334113351133611337113381133911340113411134211343113441134511346113471134811349113501135111352113531135411355113561135711358113591136011361113621136311364113651136611367113681136911370113711137211373113741137511376113771137811379113801138111382113831138411385113861138711388113891139011391113921139311394113951139611397113981139911400114011140211403114041140511406114071140811409114101141111412114131141411415114161141711418114191142011421114221142311424114251142611427114281142911430114311143211433114341143511436114371143811439114401144111442114431144411445114461144711448114491145011451114521145311454114551145611457114581145911460114611146211463114641146511466114671146811469114701147111472114731147411475114761147711478114791148011481114821148311484114851148611487114881148911490114911149211493114941149511496114971149811499115001150111502115031150411505115061150711508115091151011511115121151311514115151151611517115181151911520115211152211523115241152511526115271152811529115301153111532115331153411535115361153711538115391154011541115421154311544115451154611547115481154911550115511155211553115541155511556115571155811559115601156111562115631156411565115661156711568115691157011571115721157311574115751157611577115781157911580115811158211583115841158511586115871158811589115901159111592115931159411595115961159711598115991160011601116021160311604116051160611607116081160911610116111161211613116141161511616116171161811619116201162111622116231162411625116261162711628116291163011631116321163311634116351163611637116381163911640116411164211643116441164511646116471164811649116501165111652116531165411655116561165711658116591166011661116621166311664116651166611667116681166911670116711167211673116741167511676116771167811679116801168111682116831168411685116861168711688116891169011691116921169311694116951169611697116981169911700117011170211703117041170511706117071170811709117101171111712117131171411715117161171711718117191172011721117221172311724117251172611727117281172911730117311173211733117341173511736117371173811739117401174111742117431174411745117461174711748117491175011751117521175311754117551175611757117581175911760117611176211763117641176511766117671176811769117701177111772117731177411775117761177711778117791178011781117821178311784117851178611787117881178911790117911179211793117941179511796117971179811799118001180111802118031180411805118061180711808118091181011811118121181311814118151181611817118181181911820118211182211823118241182511826118271182811829118301183111832118331183411835118361183711838118391184011841118421184311844118451184611847118481184911850118511185211853118541185511856118571185811859118601186111862118631186411865118661186711868118691187011871118721187311874118751187611877118781187911880118811188211883118841188511886118871188811889118901189111892118931189411895118961189711898118991190011901119021190311904119051190611907119081190911910119111191211913119141191511916119171191811919119201192111922119231192411925119261192711928119291193011931119321193311934119351193611937119381193911940119411194211943119441194511946119471194811949119501195111952119531195411955119561195711958119591196011961119621196311964119651196611967119681196911970119711197211973119741197511976119771197811979119801198111982119831198411985119861198711988119891199011991119921199311994119951199611997119981199912000120011200212003120041200512006120071200812009120101201112012120131201412015120161201712018120191202012021120221202312024120251202612027120281202912030120311203212033120341203512036120371203812039120401204112042120431204412045120461204712048120491205012051120521205312054120551205612057120581205912060120611206212063120641206512066120671206812069120701207112072120731207412075120761207712078120791208012081120821208312084120851208612087120881208912090120911209212093120941209512096120971209812099121001210112102121031210412105121061210712108121091211012111121121211312114121151211612117121181211912120121211212212123121241212512126121271212812129121301213112132121331213412135121361213712138121391214012141121421214312144121451214612147121481214912150121511215212153121541215512156121571215812159121601216112162121631216412165121661216712168121691217012171121721217312174121751217612177121781217912180121811218212183121841218512186121871218812189121901219112192121931219412195121961219712198121991220012201122021220312204122051220612207122081220912210122111221212213122141221512216122171221812219122201222112222122231222412225122261222712228122291223012231122321223312234122351223612237122381223912240122411224212243122441224512246122471224812249122501225112252122531225412255122561225712258122591226012261122621226312264122651226612267122681226912270122711227212273122741227512276122771227812279122801228112282122831228412285122861228712288122891229012291122921229312294122951229612297122981229912300123011230212303123041230512306123071230812309123101231112312123131231412315123161231712318123191232012321123221232312324123251232612327123281232912330123311233212333123341233512336123371233812339123401234112342123431234412345123461234712348123491235012351123521235312354123551235612357123581235912360123611236212363123641236512366123671236812369123701237112372123731237412375123761237712378123791238012381123821238312384123851238612387123881238912390123911239212393123941239512396123971239812399124001240112402124031240412405124061240712408124091241012411124121241312414124151241612417124181241912420124211242212423124241242512426124271242812429124301243112432124331243412435124361243712438124391244012441124421244312444124451244612447124481244912450124511245212453124541245512456124571245812459124601246112462124631246412465124661246712468124691247012471124721247312474124751247612477124781247912480124811248212483124841248512486124871248812489124901249112492124931249412495124961249712498124991250012501125021250312504125051250612507125081250912510125111251212513125141251512516125171251812519125201252112522125231252412525125261252712528125291253012531125321253312534125351253612537125381253912540125411254212543125441254512546125471254812549125501255112552125531255412555125561255712558125591256012561125621256312564125651256612567125681256912570125711257212573125741257512576125771257812579125801258112582125831258412585125861258712588125891259012591125921259312594125951259612597125981259912600126011260212603126041260512606126071260812609126101261112612126131261412615126161261712618126191262012621126221262312624126251262612627126281262912630126311263212633126341263512636126371263812639126401264112642126431264412645126461264712648126491265012651126521265312654126551265612657126581265912660126611266212663126641266512666126671266812669126701267112672126731267412675126761267712678126791268012681126821268312684126851268612687126881268912690126911269212693126941269512696126971269812699127001270112702127031270412705127061270712708127091271012711127121271312714127151271612717127181271912720127211272212723127241272512726127271272812729127301273112732127331273412735127361273712738127391274012741127421274312744127451274612747127481274912750127511275212753127541275512756127571275812759127601276112762127631276412765127661276712768127691277012771127721277312774127751277612777127781277912780127811278212783127841278512786127871278812789127901279112792127931279412795127961279712798127991280012801128021280312804128051280612807128081280912810128111281212813128141281512816128171281812819128201282112822128231282412825128261282712828128291283012831128321283312834128351283612837128381283912840128411284212843128441284512846128471284812849128501285112852128531285412855128561285712858128591286012861128621286312864128651286612867128681286912870128711287212873128741287512876128771287812879128801288112882128831288412885128861288712888128891289012891128921289312894128951289612897128981289912900129011290212903129041290512906129071290812909129101291112912129131291412915129161291712918129191292012921129221292312924129251292612927129281292912930129311293212933129341293512936129371293812939129401294112942129431294412945129461294712948129491295012951129521295312954129551295612957129581295912960129611296212963129641296512966129671296812969129701297112972129731297412975129761297712978129791298012981129821298312984129851298612987129881298912990129911299212993129941299512996129971299812999130001300113002130031300413005130061300713008130091301013011130121301313014130151301613017130181301913020130211302213023130241302513026130271302813029130301303113032130331303413035130361303713038130391304013041130421304313044130451304613047130481304913050130511305213053130541305513056130571305813059130601306113062130631306413065130661306713068130691307013071130721307313074130751307613077130781307913080130811308213083130841308513086130871308813089130901309113092130931309413095130961309713098130991310013101131021310313104131051310613107131081310913110131111311213113131141311513116131171311813119131201312113122131231312413125131261312713128131291313013131131321313313134131351313613137131381313913140131411314213143131441314513146131471314813149131501315113152131531315413155131561315713158131591316013161131621316313164131651316613167131681316913170131711317213173131741317513176131771317813179131801318113182131831318413185131861318713188131891319013191131921319313194131951319613197131981319913200132011320213203132041320513206132071320813209132101321113212132131321413215132161321713218132191322013221132221322313224132251322613227132281322913230132311323213233132341323513236132371323813239132401324113242132431324413245132461324713248132491325013251132521325313254132551325613257132581325913260132611326213263132641326513266132671326813269132701327113272132731327413275132761327713278132791328013281132821328313284132851328613287132881328913290132911329213293132941329513296132971329813299133001330113302133031330413305133061330713308133091331013311133121331313314133151331613317133181331913320133211332213323133241332513326133271332813329133301333113332133331333413335133361333713338133391334013341133421334313344133451334613347133481334913350133511335213353133541335513356133571335813359133601336113362133631336413365133661336713368133691337013371133721337313374133751337613377133781337913380133811338213383133841338513386133871338813389133901339113392133931339413395133961339713398133991340013401134021340313404134051340613407134081340913410134111341213413134141341513416134171341813419134201342113422134231342413425134261342713428134291343013431134321343313434134351343613437134381343913440134411344213443134441344513446134471344813449134501345113452134531345413455134561345713458134591346013461134621346313464134651346613467134681346913470134711347213473134741347513476134771347813479134801348113482134831348413485134861348713488134891349013491134921349313494134951349613497134981349913500135011350213503135041350513506135071350813509135101351113512135131351413515135161351713518135191352013521135221352313524135251352613527135281352913530135311353213533135341353513536135371353813539135401354113542135431354413545135461354713548135491355013551135521355313554135551355613557135581355913560135611356213563135641356513566135671356813569135701357113572135731357413575135761357713578135791358013581135821358313584135851358613587135881358913590135911359213593135941359513596135971359813599136001360113602136031360413605136061360713608136091361013611136121361313614136151361613617136181361913620136211362213623136241362513626136271362813629136301363113632136331363413635136361363713638136391364013641136421364313644136451364613647136481364913650136511365213653136541365513656136571365813659136601366113662136631366413665136661366713668136691367013671136721367313674136751367613677136781367913680136811368213683136841368513686136871368813689136901369113692136931369413695136961369713698136991370013701137021370313704137051370613707137081370913710137111371213713137141371513716137171371813719137201372113722137231372413725137261372713728137291373013731137321373313734137351373613737137381373913740137411374213743137441374513746137471374813749137501375113752137531375413755137561375713758137591376013761137621376313764137651376613767137681376913770137711377213773137741377513776137771377813779137801378113782137831378413785137861378713788137891379013791137921379313794137951379613797137981379913800138011380213803138041380513806138071380813809138101381113812138131381413815138161381713818138191382013821138221382313824138251382613827138281382913830138311383213833138341383513836138371383813839138401384113842138431384413845138461384713848138491385013851138521385313854138551385613857138581385913860138611386213863138641386513866138671386813869138701387113872138731387413875138761387713878138791388013881138821388313884138851388613887138881388913890138911389213893138941389513896138971389813899139001390113902139031390413905139061390713908139091391013911139121391313914139151391613917139181391913920139211392213923139241392513926139271392813929139301393113932139331393413935139361393713938139391394013941139421394313944139451394613947139481394913950139511395213953139541395513956139571395813959139601396113962139631396413965139661396713968139691397013971139721397313974139751397613977139781397913980139811398213983139841398513986139871398813989139901399113992139931399413995139961399713998139991400014001140021400314004140051400614007140081400914010140111401214013140141401514016140171401814019140201402114022140231402414025140261402714028140291403014031140321403314034140351403614037140381403914040140411404214043140441404514046140471404814049140501405114052140531405414055140561405714058140591406014061140621406314064140651406614067140681406914070140711407214073140741407514076140771407814079140801408114082140831408414085140861408714088140891409014091140921409314094140951409614097140981409914100141011410214103141041410514106141071410814109141101411114112141131411414115141161411714118141191412014121141221412314124141251412614127141281412914130141311413214133141341413514136141371413814139141401414114142141431414414145141461414714148141491415014151141521415314154141551415614157141581415914160141611416214163141641416514166141671416814169141701417114172141731417414175141761417714178141791418014181141821418314184141851418614187141881418914190141911419214193141941419514196141971419814199142001420114202142031420414205142061420714208142091421014211142121421314214142151421614217142181421914220142211422214223142241422514226142271422814229142301423114232142331423414235142361423714238142391424014241142421424314244142451424614247142481424914250142511425214253142541425514256142571425814259142601426114262142631426414265142661426714268142691427014271142721427314274142751427614277142781427914280142811428214283142841428514286142871428814289142901429114292142931429414295142961429714298142991430014301143021430314304143051430614307143081430914310143111431214313143141431514316143171431814319143201432114322143231432414325143261432714328143291433014331143321433314334143351433614337143381433914340143411434214343143441434514346143471434814349143501435114352143531435414355143561435714358143591436014361143621436314364143651436614367143681436914370143711437214373143741437514376143771437814379143801438114382143831438414385143861438714388143891439014391143921439314394143951439614397143981439914400144011440214403144041440514406144071440814409144101441114412144131441414415144161441714418144191442014421144221442314424144251442614427144281442914430144311443214433144341443514436144371443814439144401444114442144431444414445144461444714448144491445014451144521445314454144551445614457144581445914460144611446214463144641446514466144671446814469144701447114472144731447414475144761447714478144791448014481144821448314484144851448614487144881448914490144911449214493144941449514496144971449814499145001450114502145031450414505145061450714508145091451014511145121451314514145151451614517145181451914520145211452214523145241452514526145271452814529145301453114532145331453414535145361453714538145391454014541145421454314544145451454614547145481454914550145511455214553145541455514556145571455814559145601456114562145631456414565145661456714568145691457014571145721457314574145751457614577145781457914580145811458214583145841458514586145871458814589145901459114592145931459414595145961459714598145991460014601146021460314604146051460614607146081460914610146111461214613146141461514616146171461814619146201462114622146231462414625146261462714628146291463014631146321463314634146351463614637146381463914640146411464214643146441464514646146471464814649146501465114652146531465414655146561465714658146591466014661146621466314664146651466614667146681466914670146711467214673146741467514676146771467814679146801468114682146831468414685146861468714688146891469014691146921469314694146951469614697146981469914700147011470214703147041470514706147071470814709147101471114712147131471414715147161471714718147191472014721147221472314724147251472614727147281472914730147311473214733147341473514736147371473814739147401474114742147431474414745147461474714748147491475014751147521475314754147551475614757147581475914760147611476214763147641476514766147671476814769147701477114772147731477414775147761477714778147791478014781147821478314784147851478614787147881478914790147911479214793147941479514796147971479814799148001480114802148031480414805148061480714808148091481014811148121481314814148151481614817148181481914820148211482214823148241482514826148271482814829148301483114832148331483414835148361483714838148391484014841148421484314844148451484614847148481484914850148511485214853148541485514856148571485814859148601486114862148631486414865148661486714868148691487014871148721487314874148751487614877148781487914880148811488214883148841488514886148871488814889148901489114892148931489414895148961489714898148991490014901149021490314904149051490614907149081490914910149111491214913149141491514916149171491814919149201492114922149231492414925149261492714928149291493014931149321493314934149351493614937149381493914940149411494214943149441494514946149471494814949149501495114952149531495414955149561495714958149591496014961149621496314964149651496614967149681496914970149711497214973149741497514976149771497814979149801498114982149831498414985149861498714988149891499014991149921499314994149951499614997149981499915000150011500215003150041500515006150071500815009150101501115012150131501415015150161501715018150191502015021150221502315024150251502615027150281502915030150311503215033150341503515036150371503815039150401504115042150431504415045150461504715048150491505015051150521505315054150551505615057150581505915060150611506215063150641506515066150671506815069150701507115072150731507415075150761507715078150791508015081150821508315084150851508615087150881508915090150911509215093150941509515096150971509815099151001510115102151031510415105151061510715108151091511015111151121511315114151151511615117151181511915120151211512215123151241512515126151271512815129151301513115132151331513415135151361513715138151391514015141151421514315144151451514615147151481514915150151511515215153151541515515156151571515815159151601516115162151631516415165151661516715168151691517015171151721517315174151751517615177151781517915180151811518215183151841518515186151871518815189151901519115192151931519415195151961519715198151991520015201152021520315204152051520615207152081520915210152111521215213152141521515216152171521815219152201522115222152231522415225152261522715228152291523015231152321523315234152351523615237152381523915240152411524215243152441524515246152471524815249152501525115252152531525415255152561525715258152591526015261152621526315264152651526615267152681526915270152711527215273152741527515276152771527815279152801528115282152831528415285152861528715288152891529015291152921529315294152951529615297152981529915300153011530215303153041530515306153071530815309153101531115312153131531415315153161531715318153191532015321153221532315324153251532615327153281532915330153311533215333153341533515336153371533815339153401534115342153431534415345153461534715348153491535015351153521535315354153551535615357153581535915360153611536215363153641536515366153671536815369153701537115372153731537415375153761537715378153791538015381153821538315384153851538615387153881538915390153911539215393153941539515396153971539815399154001540115402154031540415405154061540715408154091541015411154121541315414154151541615417154181541915420154211542215423154241542515426154271542815429154301543115432154331543415435154361543715438154391544015441154421544315444154451544615447154481544915450154511545215453154541545515456154571545815459154601546115462154631546415465154661546715468154691547015471154721547315474154751547615477154781547915480154811548215483154841548515486154871548815489154901549115492154931549415495154961549715498154991550015501155021550315504155051550615507155081550915510155111551215513155141551515516155171551815519155201552115522155231552415525155261552715528155291553015531155321553315534155351553615537155381553915540155411554215543155441554515546155471554815549155501555115552155531555415555155561555715558155591556015561155621556315564155651556615567155681556915570155711557215573155741557515576155771557815579155801558115582155831558415585155861558715588155891559015591155921559315594155951559615597155981559915600156011560215603156041560515606156071560815609156101561115612156131561415615156161561715618156191562015621156221562315624156251562615627156281562915630156311563215633156341563515636156371563815639156401564115642156431564415645156461564715648156491565015651156521565315654156551565615657156581565915660156611566215663156641566515666156671566815669156701567115672156731567415675156761567715678156791568015681156821568315684156851568615687156881568915690156911569215693156941569515696156971569815699157001570115702157031570415705157061570715708157091571015711157121571315714157151571615717157181571915720157211572215723157241572515726157271572815729157301573115732157331573415735157361573715738157391574015741157421574315744157451574615747157481574915750157511575215753157541575515756157571575815759157601576115762157631576415765157661576715768157691577015771157721577315774157751577615777157781577915780157811578215783157841578515786157871578815789157901579115792157931579415795157961579715798157991580015801158021580315804158051580615807158081580915810158111581215813158141581515816158171581815819158201582115822158231582415825158261582715828158291583015831158321583315834158351583615837158381583915840158411584215843158441584515846158471584815849158501585115852158531585415855158561585715858158591586015861158621586315864158651586615867158681586915870158711587215873158741587515876158771587815879158801588115882158831588415885158861588715888158891589015891158921589315894158951589615897158981589915900159011590215903159041590515906159071590815909159101591115912159131591415915159161591715918159191592015921159221592315924159251592615927159281592915930159311593215933159341593515936159371593815939159401594115942159431594415945159461594715948159491595015951159521595315954159551595615957159581595915960159611596215963159641596515966159671596815969159701597115972159731597415975159761597715978159791598015981159821598315984159851598615987159881598915990159911599215993159941599515996159971599815999160001600116002160031600416005160061600716008160091601016011160121601316014160151601616017160181601916020160211602216023160241602516026160271602816029160301603116032160331603416035160361603716038160391604016041160421604316044160451604616047160481604916050160511605216053160541605516056160571605816059160601606116062160631606416065160661606716068160691607016071160721607316074160751607616077160781607916080160811608216083160841608516086
  1. var Ha = Object.defineProperty;
  2. var Ya = (n, e, a) => e in n ? Ha(n, e, { enumerable: !0, configurable: !0, writable: !0, value: a }) : n[e] = a;
  3. var X = (n, e, a) => Ya(n, typeof e != "symbol" ? e + "" : e, a);
  4. import { CommandType as ma, ICommandService as de, ObjectMatrix as w, Tools as Ne, Rectangle as De, cellToRange as fa, Direction as He, isFormulaString as be, isFormulaId as ca, getIntersectRange as Ve, RANGE_TYPE as Y, Inject as W, Disposable as te, UniverInstanceType as ee, IUniverInstanceService as xe, LifecycleService as wa, LocaleService as Ot, ILogService as Xa, IConfigService as _e, Injector as at, createIdentifier as Mt, toDisposable as se, moveRangeByOffset as Et, DisposableCollection as Ye, AbsoluteRefType as we, Optional as Wa, Dimension as Bt, InterceptorEffectEnum as Ka, CellValueType as vt, isRealNum as Qa, DependentOn as la, Plugin as sa, merge as pa, touchDependencies as qe, isNodeEnv as Vt } from "@univerjs/core";
  5. import { SetRangeValuesCommand as ka, SetRangeValuesMutation as ie, handleMoveRange as da, EffectRefRangId as G, runRefRangeMutations as H, handleMoveRows as La, handleMoveCols as Pa, handleInsertRow as Ta, handleInsertCol as Ea, handleIRemoveRow as Ia, handleIRemoveCol as Na, handleDeleteRangeMoveLeft as Ra, handleDeleteRangeMoveUp as Aa, handleInsertRangeMoveDown as Sa, handleInsertRangeMoveRight as Ca, RemoveDefinedNameCommand as Da, SetDefinedNameCommand as ba, RemoveSheetCommand as $a, SetWorksheetNameCommand as ja, DeleteRangeMoveLeftCommand as za, DeleteRangeMoveUpCommand as Za, RemoveColCommand as Ja, RemoveRowCommand as en, InsertRangeMoveDownCommand as tn, InsertRangeMoveRightCommand as an, InsertColCommand as nn, InsertRowCommand as rn, MoveColsCommand as on, MoveRowsCommand as un, MoveRangeCommand as mn, SheetInterceptorService as xt, SetStyleCommand as _t, SetBorderCommand as Oa, ClearSelectionFormatCommand as Ma, RemoveSheetMutation as It, InsertSheetMutation as Nt, RefRangeService as fn, handleDefaultRangeChangeWithEffectRefCommands as Gt, getSeparateEffectedRangesOnCommand as cn, handleCommonDefaultRangeChangeWithEffectRefCommands as ln, MoveRangeMutation as Ht, MoveRowsMutation as Yt, MoveColsMutation as wt, ReorderRangeMutation as Xt, RemoveRowMutation as Wt, RemoveColMutation as Kt, InsertColMutation as Qt, InsertRowMutation as kt, INTERCEPTOR_POINT as sn, SetWorksheetActiveOperation as pn, SCOPE_WORKBOOK_VALUE_DEFINED_NAME as mt, UniverSheetsPlugin as dn } from "@univerjs/sheets";
  6. import { sequenceNodeType as J, deserializeRangeWithSheetWithCache as pe, serializeRangeToRefString as nt, ErrorType as j, LexerTreeBuilder as yt, generateStringWithSequence as Xe, SetDefinedNameMutation as Me, IDefinedNamesService as qt, SetFormulaCalculationResultMutation as Ln, RemoveOtherFormulaMutation as Pn, IActiveDirtyManagerService as gt, SetOtherFormulaMutation as Tn, FormulaDataModel as it, SetFormulaCalculationStartMutation as Se, SetFormulaCalculationStopMutation as $t, ENGINE_FORMULA_CYCLE_REFERENCE_COUNT as jt, SetFormulaCalculationNotificationMutation as En, FormulaExecuteStageType as ge, FormulaExecutedStateType as Re, SetFormulaDataMutation as he, SetArrayFormulaDataMutation as Rt, initSheetFormulaData as zt, FUNCTION_NAMES_ARRAY as Zt, FunctionType as t, FUNCTION_NAMES_COMPATIBILITY as _, FUNCTION_NAMES_CUBE as ce, FUNCTION_NAMES_DATABASE as $, FUNCTION_NAMES_DATE as B, FUNCTION_NAMES_ENGINEERING as A, FUNCTION_NAMES_FINANCIAL as C, FUNCTION_NAMES_INFORMATION as v, FUNCTION_NAMES_LOGICAL as K, FUNCTION_NAMES_LOOKUP as y, FUNCTION_NAMES_MATH as T, FUNCTION_NAMES_STATISTICAL as l, FUNCTION_NAMES_TEXT as D, FUNCTION_NAMES_WEB as ft, isReferenceStrings as In, functionArray as Nn, functionCompatibility as Rn, functionCube as An, functionDatabase as Sn, functionDate as Cn, functionEngineering as Dn, functionFinancial as bn, functionInformation as On, functionLogical as Mn, functionLookup as xn, functionMath as _n, functionMeta as yn, functionStatistical as qn, functionText as gn, functionUniver as hn, functionWeb as Un, IFunctionService as ht, serializeRangeWithSpreadsheet as Jt, serializeRangeWithSheet as ea, serializeRange as ta, CustomFunction as At, AsyncCustomFunction as xa, RemoveDefinedNameMutation as St, stripErrorMargin as Fn, UniverFormulaEnginePlugin as _a } from "@univerjs/engine-formula";
  7. import { Subject as aa, BehaviorSubject as ya, bufferWhen as Bn, filter as na, map as vn } from "rxjs";
  8. import { IRPCChannelService as qa, fromModule as Vn, toModule as Gn } from "@univerjs/rpc";
  9. const Hn = {
  10. id: "formula.command.insert-function",
  11. type: ma.COMMAND,
  12. handler: async (n, e) => {
  13. const { list: a } = e, i = n.get(de), r = new w();
  14. a.forEach((u) => {
  15. const { range: m, primary: f, formula: s } = u, { row: p, column: d } = f, L = Ne.generateRandomId(6);
  16. r.setValue(p, d, {
  17. f: s,
  18. si: L
  19. });
  20. const { startRow: E, startColumn: I, endRow: S, endColumn: c } = m;
  21. for (let N = E; N <= S; N++)
  22. for (let R = I; R <= c; R++)
  23. (N !== p || R !== d) && r.setValue(N, R, {
  24. si: L
  25. });
  26. });
  27. const o = {
  28. value: r.getData()
  29. };
  30. return i.executeCommand(ka.id, o);
  31. }
  32. }, Ge = {
  33. type: ma.MUTATION,
  34. id: "sheet.mutation.data-validation-formula-mark-dirty",
  35. handler() {
  36. return !0;
  37. }
  38. };
  39. function Yn(n, e, a) {
  40. var i;
  41. return n == null || n[e] == null || ((i = n[e]) == null ? void 0 : i[a]) == null;
  42. }
  43. function ct(n, e, a) {
  44. var i;
  45. if (a) {
  46. if (n && n[e] && ((i = n[e]) != null && i[a]))
  47. return delete n[e][a], {
  48. [e]: {
  49. [a]: null
  50. }
  51. };
  52. } else if (n && n[e])
  53. return delete n[e], {
  54. [e]: null
  55. };
  56. }
  57. var q = /* @__PURE__ */ ((n) => (n[n.MoveRange = 0] = "MoveRange", n[n.MoveRows = 1] = "MoveRows", n[n.MoveCols = 2] = "MoveCols", n[n.InsertRow = 3] = "InsertRow", n[n.InsertColumn = 4] = "InsertColumn", n[n.RemoveRow = 5] = "RemoveRow", n[n.RemoveColumn = 6] = "RemoveColumn", n[n.DeleteMoveLeft = 7] = "DeleteMoveLeft", n[n.DeleteMoveUp = 8] = "DeleteMoveUp", n[n.InsertMoveDown = 9] = "InsertMoveDown", n[n.InsertMoveRight = 10] = "InsertMoveRight", n[n.SetName = 11] = "SetName", n[n.RemoveSheet = 12] = "RemoveSheet", n[n.SetDefinedName = 13] = "SetDefinedName", n[n.RemoveDefinedName = 14] = "RemoveDefinedName", n))(q || {});
  58. const wn = [
  59. 11,
  60. 12,
  61. 13,
  62. 14
  63. /* RemoveDefinedName */
  64. ];
  65. function Xn(n, e, a) {
  66. const { type: i } = a;
  67. return wn.includes(i) ? Wn(n, e) : Kn(n, e, a);
  68. }
  69. function Wn(n, e) {
  70. const a = [], i = [];
  71. return Object.keys(e).forEach((r) => {
  72. const o = e[r], u = n[r];
  73. if (o == null || u == null)
  74. return !0;
  75. Object.keys(o).forEach((m) => {
  76. const f = new w(o[m] || {}), s = new w(u[m] || {}), p = new w(), d = new w();
  77. if (f.forValue((c, N, R) => {
  78. if (R == null)
  79. return !0;
  80. const P = rt(R);
  81. P !== null && (p.setValue(c, N, P), d.setValue(c, N, s.getValue(c, N)));
  82. }), p.getSizeOf() === 0)
  83. return;
  84. const L = {
  85. subUnitId: m,
  86. unitId: r,
  87. cellValue: p.getMatrix()
  88. }, E = {
  89. id: ie.id,
  90. params: L
  91. };
  92. i.push(E);
  93. const I = {
  94. subUnitId: m,
  95. unitId: r,
  96. cellValue: d.getMatrix()
  97. }, S = {
  98. id: ie.id,
  99. params: I
  100. };
  101. a.push(S);
  102. });
  103. }), {
  104. undos: a,
  105. redos: i
  106. };
  107. }
  108. function Kn(n, e, a) {
  109. const { redoFormulaData: i, undoFormulaData: r } = Qn(n, e, a);
  110. if (Ne.diffValue(i, r))
  111. return {
  112. undos: [],
  113. redos: []
  114. };
  115. const o = [], u = [];
  116. return Object.keys(i).forEach((m) => {
  117. Object.keys(i[m]).forEach((f) => {
  118. if (Object.keys(i[m][f]).length !== 0) {
  119. const s = {
  120. subUnitId: f,
  121. unitId: m,
  122. cellValue: i[m][f]
  123. }, p = {
  124. id: ie.id,
  125. params: s
  126. };
  127. o.push(p);
  128. }
  129. });
  130. }), Object.keys(r).forEach((m) => {
  131. Object.keys(r[m]).forEach((f) => {
  132. if (Object.keys(r[m][f]).length !== 0) {
  133. const s = {
  134. subUnitId: f,
  135. unitId: m,
  136. cellValue: r[m][f]
  137. }, p = {
  138. id: ie.id,
  139. params: s
  140. };
  141. u.push(p);
  142. }
  143. });
  144. }), {
  145. undos: u,
  146. redos: o
  147. };
  148. }
  149. function Qn(n, e, a) {
  150. const i = {}, r = {}, { type: o, unitId: u, sheetId: m, range: f, from: s, to: p } = a;
  151. return (/* @__PURE__ */ new Set([...Object.keys(n), ...Object.keys(e)])).forEach((L) => {
  152. if (Yn(n, L, m))
  153. return;
  154. (/* @__PURE__ */ new Set([
  155. ...Object.keys(n[L] || {}),
  156. ...Object.keys(e[L] || {})
  157. ])).forEach((I) => {
  158. var F, U;
  159. const S = (F = n[L]) == null ? void 0 : F[I], c = (U = e[L]) == null ? void 0 : U[I], N = new w(S || {}), R = new w(c || {});
  160. let P = [];
  161. L !== u || I !== m ? P = $n(R) : P = kn(N, o, s, p, f);
  162. const O = fi(P, N, R), M = ci(P, N);
  163. i[L] || (i[L] = {}), r[L] || (r[L] = {}), i[L][I] = {
  164. ...i[L][I],
  165. ...O
  166. }, r[L][I] = {
  167. ...r[L][I],
  168. ...M
  169. };
  170. });
  171. }), {
  172. redoFormulaData: i,
  173. undoFormulaData: r
  174. };
  175. }
  176. function kn(n, e, a, i, r) {
  177. const o = [];
  178. return n.forValue((u, m, f) => {
  179. if (f == null || !ga(f)) return !0;
  180. const s = fa(u, m);
  181. let p = null, d = !1;
  182. if ([
  183. 0,
  184. 1,
  185. 2
  186. /* MoveCols */
  187. ].includes(e))
  188. p = jn(e, a, i, s);
  189. else if (r != null) {
  190. const L = zn(e, r, s);
  191. p = L.newCell, d = L.isReverse;
  192. }
  193. d ? o.unshift({ oldCell: s, newCell: p }) : o.push({ oldCell: s, newCell: p });
  194. }), o;
  195. }
  196. function $n(n) {
  197. const e = [];
  198. return n.forValue((a, i, r) => {
  199. if (r == null || !ga(r)) return !0;
  200. const o = fa(a, i);
  201. e.push({ oldCell: o, newCell: o });
  202. }), e;
  203. }
  204. function jn(n, e, a, i) {
  205. if (e == null || a == null)
  206. return null;
  207. switch (n) {
  208. case 0:
  209. return Zn(e, a, i);
  210. case 1:
  211. return Jn(e, a, i);
  212. case 2:
  213. return ei(e, a, i);
  214. default:
  215. return null;
  216. }
  217. }
  218. function zn(n, e, a) {
  219. let i = null, r = !1;
  220. switch (n) {
  221. case 3:
  222. i = ti(e, a), r = !0;
  223. break;
  224. case 4:
  225. i = ai(e, a), r = !0;
  226. break;
  227. case 5:
  228. i = ni(e, a);
  229. break;
  230. case 6:
  231. i = ii(e, a);
  232. break;
  233. case 7:
  234. i = ri(e, a);
  235. break;
  236. case 8:
  237. i = oi(e, a);
  238. break;
  239. case 9:
  240. i = ui(e, a), r = !0;
  241. break;
  242. case 10:
  243. i = mi(e, a), r = !0;
  244. break;
  245. }
  246. return { newCell: i, isReverse: r };
  247. }
  248. function Zn(n, e, a) {
  249. const i = da(
  250. {
  251. id: G.MoveRangeCommandId,
  252. params: { toRange: e, fromRange: n }
  253. },
  254. a
  255. );
  256. return H(i, a);
  257. }
  258. function Jn(n, e, a) {
  259. const i = La(
  260. {
  261. id: G.MoveRowsCommandId,
  262. params: { toRange: e, fromRange: n }
  263. },
  264. a
  265. );
  266. return H(i, a);
  267. }
  268. function ei(n, e, a) {
  269. const i = Pa(
  270. {
  271. id: G.MoveColsCommandId,
  272. params: { toRange: e, fromRange: n }
  273. },
  274. a
  275. );
  276. return H(i, a);
  277. }
  278. function ti(n, e) {
  279. const a = Ta(
  280. {
  281. id: G.InsertRowCommandId,
  282. params: { range: n, unitId: "", subUnitId: "", direction: He.DOWN }
  283. },
  284. e
  285. );
  286. return H(a, e);
  287. }
  288. function ai(n, e) {
  289. const a = Ea(
  290. {
  291. id: G.InsertColCommandId,
  292. params: { range: n, unitId: "", subUnitId: "", direction: He.RIGHT }
  293. },
  294. e
  295. );
  296. return H(a, e);
  297. }
  298. function ni(n, e) {
  299. const a = Ia(
  300. {
  301. id: G.RemoveRowCommandId,
  302. params: { range: n }
  303. },
  304. e
  305. );
  306. return H(a, e);
  307. }
  308. function ii(n, e) {
  309. const a = Na(
  310. {
  311. id: G.RemoveColCommandId,
  312. params: { range: n }
  313. },
  314. e
  315. );
  316. return H(a, e);
  317. }
  318. function ri(n, e) {
  319. const a = Ra(
  320. {
  321. id: G.DeleteRangeMoveLeftCommandId,
  322. params: { range: n }
  323. },
  324. e
  325. );
  326. return H(a, e);
  327. }
  328. function oi(n, e) {
  329. const a = Aa(
  330. {
  331. id: G.DeleteRangeMoveUpCommandId,
  332. params: { range: n }
  333. },
  334. e
  335. );
  336. return H(a, e);
  337. }
  338. function ui(n, e) {
  339. const a = Sa(
  340. {
  341. id: G.InsertRangeMoveDownCommandId,
  342. params: { range: n }
  343. },
  344. e
  345. );
  346. return H(a, e);
  347. }
  348. function mi(n, e) {
  349. const a = Ca(
  350. {
  351. id: G.InsertRangeMoveRightCommandId,
  352. params: { range: n }
  353. },
  354. e
  355. );
  356. return H(a, e);
  357. }
  358. function fi(n, e, a) {
  359. const i = new w({});
  360. return n.forEach((r) => {
  361. const { oldCell: o, newCell: u } = r, { startRow: m, startColumn: f } = o, s = a.getValue(m, f) || e.getValue(m, f), p = rt(s);
  362. if (i.setValue(m, f, { f: null, si: null }), u) {
  363. const { startRow: d, startColumn: L } = u;
  364. i.setValue(d, L, p);
  365. }
  366. }), i.getMatrix();
  367. }
  368. function ci(n, e) {
  369. const a = new w({});
  370. return n.reverse().forEach((i) => {
  371. const { oldCell: r, newCell: o } = i, { startRow: u, startColumn: m } = r, f = e.getValue(u, m), s = rt(f);
  372. if (o) {
  373. const { startRow: p, startColumn: d } = o;
  374. a.setValue(p, d, { f: null, si: null });
  375. }
  376. a.setValue(u, m, s);
  377. }), a.getMatrix();
  378. }
  379. function rt(n) {
  380. if (n == null)
  381. return;
  382. const { f: e, si: a, x: i = 0, y: r = 0 } = n, o = be(e), u = ca(a);
  383. if (!o && !u)
  384. return {
  385. f: null,
  386. si: null
  387. };
  388. const m = {};
  389. return u && (m.si = a), o && i === 0 && r === 0 && (m.f = e), m.f === void 0 && (m.f = null), m.si === void 0 && (m.si = null), m;
  390. }
  391. function li(n) {
  392. const e = new w({});
  393. return new w(n).forValue((i, r, o) => {
  394. const u = rt(o);
  395. u && e.setValue(i, r, u);
  396. }), e.getMatrix();
  397. }
  398. function ga(n) {
  399. const e = (n == null ? void 0 : n.f) || "", a = (n == null ? void 0 : n.si) || "", i = be(e), r = ca(a);
  400. return !!(i || r);
  401. }
  402. function ha(n, e, a, i, r, o) {
  403. if ((r == null || r.length === 0) && (o == null || o.length === 0)) {
  404. if (n === a && e === i)
  405. return !0;
  406. } else if ((n === r || r == null || r.length === 0) && e === o)
  407. return !0;
  408. return !1;
  409. }
  410. function Ua(n, e, a = 0, i = 0) {
  411. const r = [];
  412. for (let o = 0, u = n.length; o < u; o++) {
  413. const m = n[o];
  414. if (typeof m == "string" || m.nodeType !== J.REFERENCE || e.includes(o)) {
  415. r.push(m);
  416. continue;
  417. }
  418. const { token: f } = m, s = pe(f), { range: p, sheetName: d, unitId: L } = s, E = De.moveOffset(p, a, i);
  419. r.push({
  420. ...m,
  421. token: nt({
  422. range: E,
  423. unitId: L,
  424. sheetName: d
  425. })
  426. });
  427. }
  428. return r;
  429. }
  430. function Fa(n, e, a, i) {
  431. const { type: r, unitId: o, sheetId: u, range: m, from: f, to: s } = e, {
  432. range: p,
  433. sheetId: d,
  434. unitId: L,
  435. sheetName: E,
  436. refOffsetX: I,
  437. refOffsetY: S
  438. } = n;
  439. if (!ha(
  440. o,
  441. u,
  442. a,
  443. i,
  444. L,
  445. d
  446. ))
  447. return;
  448. const c = De.moveOffset(p, I, S);
  449. let N = null;
  450. if (r === q.MoveRange) {
  451. if (f == null || s == null)
  452. return;
  453. const R = st(c, f), P = Ve(c, f);
  454. if (P == null || R !== 4)
  455. return;
  456. const O = da(
  457. { id: G.MoveRangeCommandId, params: { toRange: s, fromRange: f } },
  458. P
  459. ), M = H(O, P);
  460. if (M == null)
  461. return j.REF;
  462. N = lt(R, M, f, s, c, P);
  463. } else if (r === q.MoveRows) {
  464. if (f == null || s == null)
  465. return;
  466. const R = st(c, f);
  467. let P = Ve(c, f);
  468. if (P == null && (f.endRow < c.startRow && s.endRow < c.startRow || f.startRow > c.endRow && s.startRow > c.endRow))
  469. return;
  470. P == null && (P = {
  471. startRow: c.startRow,
  472. endRow: c.endRow,
  473. startColumn: c.startColumn,
  474. endColumn: c.endColumn,
  475. rangeType: Y.NORMAL
  476. });
  477. const O = La(
  478. { id: G.MoveRowsCommandId, params: { toRange: s, fromRange: f } },
  479. P
  480. ), M = H(O, P);
  481. if (M == null)
  482. return j.REF;
  483. N = lt(R, M, f, s, c, P);
  484. } else if (r === q.MoveCols) {
  485. if (f == null || s == null)
  486. return;
  487. const R = st(c, f);
  488. let P = Ve(c, f);
  489. if (P == null && (f.endColumn < c.startColumn && s.endColumn < c.startColumn || f.startColumn > c.endColumn && s.startColumn > c.endColumn))
  490. return;
  491. P == null && (P = {
  492. startRow: c.startRow,
  493. endRow: c.endRow,
  494. startColumn: c.startColumn,
  495. endColumn: c.endColumn,
  496. rangeType: Y.NORMAL
  497. });
  498. const O = Pa(
  499. { id: G.MoveColsCommandId, params: { toRange: s, fromRange: f } },
  500. P
  501. ), M = H(O, P);
  502. if (M == null)
  503. return j.REF;
  504. N = lt(R, M, f, s, c, P);
  505. }
  506. if (m != null) {
  507. if (r === q.InsertRow) {
  508. const R = Ta(
  509. {
  510. id: G.InsertRowCommandId,
  511. params: { range: m, unitId: "", subUnitId: "", direction: He.DOWN }
  512. },
  513. c
  514. ), P = H(R, c);
  515. if (P == null)
  516. return;
  517. N = {
  518. ...c,
  519. ...P
  520. };
  521. } else if (r === q.InsertColumn) {
  522. const R = Ea(
  523. {
  524. id: G.InsertColCommandId,
  525. params: { range: m, unitId: "", subUnitId: "", direction: He.RIGHT }
  526. },
  527. c
  528. ), P = H(R, c);
  529. if (P == null)
  530. return;
  531. N = {
  532. ...c,
  533. ...P
  534. };
  535. } else if (r === q.RemoveRow) {
  536. const R = Ia(
  537. {
  538. id: G.RemoveRowCommandId,
  539. params: { range: m }
  540. },
  541. c
  542. ), P = H(R, c);
  543. if (P == null)
  544. return j.REF;
  545. N = {
  546. ...c,
  547. ...P
  548. };
  549. } else if (r === q.RemoveColumn) {
  550. const R = Na(
  551. {
  552. id: G.RemoveColCommandId,
  553. params: { range: m }
  554. },
  555. c
  556. ), P = H(R, c);
  557. if (P == null)
  558. return j.REF;
  559. N = {
  560. ...c,
  561. ...P
  562. };
  563. } else if (r === q.DeleteMoveLeft) {
  564. const R = Ra(
  565. {
  566. id: G.DeleteRangeMoveLeftCommandId,
  567. params: { range: m }
  568. },
  569. c
  570. ), P = H(R, c);
  571. if (P == null)
  572. return j.REF;
  573. N = {
  574. ...c,
  575. ...P
  576. };
  577. } else if (r === q.DeleteMoveUp) {
  578. const R = Aa(
  579. {
  580. id: G.DeleteRangeMoveUpCommandId,
  581. params: { range: m }
  582. },
  583. c
  584. ), P = H(R, c);
  585. if (P == null)
  586. return j.REF;
  587. N = {
  588. ...c,
  589. ...P
  590. };
  591. } else if (r === q.InsertMoveDown) {
  592. const R = Sa(
  593. {
  594. id: G.InsertRangeMoveDownCommandId,
  595. params: { range: m }
  596. },
  597. c
  598. ), P = H(R, c);
  599. if (P == null)
  600. return;
  601. N = {
  602. ...c,
  603. ...P
  604. };
  605. } else if (r === q.InsertMoveRight) {
  606. const R = Ca(
  607. {
  608. id: G.InsertRangeMoveRightCommandId,
  609. params: { range: m }
  610. },
  611. c
  612. ), P = H(R, c);
  613. if (P == null)
  614. return;
  615. N = {
  616. ...c,
  617. ...P
  618. };
  619. }
  620. }
  621. if (N != null)
  622. return nt({
  623. range: N,
  624. sheetName: E,
  625. unitId: L
  626. });
  627. }
  628. function lt(n, e, a, i, r, o) {
  629. const { startRow: u, endRow: m, startColumn: f, endColumn: s, rangeType: p } = Ae(e), {
  630. startRow: d,
  631. startColumn: L,
  632. endRow: E,
  633. endColumn: I,
  634. rangeType: S = Y.NORMAL
  635. } = Ae(a), { startRow: c, startColumn: N, endRow: R, endColumn: P } = Ae(i), {
  636. startRow: O,
  637. endRow: M,
  638. startColumn: F,
  639. endColumn: U
  640. } = Ae(o), {
  641. startRow: g,
  642. endRow: x,
  643. startColumn: h,
  644. endColumn: V,
  645. rangeType: k = Y.NORMAL
  646. } = Ae(r), b = { ...r };
  647. function Le() {
  648. return p === Y.COLUMN && k === Y.COLUMN ? !0 : f >= h && s <= V;
  649. }
  650. function ae() {
  651. return p === Y.ROW && k === Y.ROW ? !0 : u >= g && m <= x;
  652. }
  653. if (n === 0)
  654. if (Le())
  655. if (u < g)
  656. b.startRow = u;
  657. else if (u >= x)
  658. b.endRow -= E + 1 - g;
  659. else
  660. return;
  661. else
  662. return;
  663. else if (n === 1)
  664. if (Le())
  665. if (m > x)
  666. b.endRow = m;
  667. else if (m <= g)
  668. b.startRow += x - d + 1;
  669. else
  670. return;
  671. else
  672. return;
  673. else if (n === 2)
  674. if (ae())
  675. if (f < h)
  676. b.startColumn = f;
  677. else if (f >= V)
  678. b.endColumn -= I + 1 - h;
  679. else
  680. return;
  681. else
  682. return;
  683. else if (n === 3)
  684. if (ae())
  685. if (s > V)
  686. b.endColumn = s;
  687. else if (s <= h)
  688. b.startColumn += V - L + 1;
  689. else
  690. return;
  691. else
  692. return;
  693. else n === 4 ? (b.startRow = u, b.startColumn = f, b.endRow = m, b.endColumn = s) : L <= h && I >= V || S === Y.ROW && k === Y.ROW ? a.endRow < g ? (c >= g && (b.startRow -= E - d + 1), c >= x && (b.endRow -= E - d + 1)) : a.startRow > x ? (R <= x && (b.endRow += E - d + 1), R <= g && (b.startRow += E - d + 1)) : a.startRow >= g && a.endRow <= x && (c <= g ? b.startRow += E - d + 1 : c >= x && (b.endRow -= E - d + 1)) : d <= g && E >= x || S === Y.COLUMN && k === Y.COLUMN ? a.endColumn < h ? (N >= h && (b.startColumn -= I - L + 1), N >= V && (b.endColumn -= I - L + 1)) : a.startColumn > V ? (P <= V && (b.endColumn += I - L + 1), P <= h && (b.startColumn += I - L + 1)) : a.startColumn >= h && a.endColumn <= V && (N <= h ? b.startColumn += I - L + 1 : N >= V && (b.endColumn -= I - L + 1)) : ((N <= U + 1 && P >= V || N <= h && P >= F - 1) && c <= g && R >= x || (c <= M + 1 && R >= x || c <= g && R >= O - 1) && N <= h && P >= V, b.startRow = u, b.startColumn = f, b.endRow = m, b.endColumn = s);
  694. return b;
  695. }
  696. function st(n, e) {
  697. const a = Ee(n.startRow), i = Ie(n.endRow), r = Ee(n.startColumn), o = Ie(n.endColumn), u = Ee(e.startRow), m = Ie(e.endRow), f = Ee(e.startColumn), s = Ie(e.endColumn);
  698. function p() {
  699. return n.rangeType === Y.COLUMN && e.rangeType === Y.COLUMN ? !0 : a >= u && i <= m;
  700. }
  701. function d() {
  702. return n.rangeType === Y.ROW && e.rangeType === Y.ROW ? !0 : r >= f && o <= s;
  703. }
  704. function L() {
  705. return n.rangeType === Y.ALL && e.rangeType === Y.ALL;
  706. }
  707. return p() && d() || L() ? 4 : d() && a >= u && a <= m && i > m ? 0 : d() && i >= u && i <= m && a < u ? 1 : p() && r >= f && r <= s && o > s ? 2 : p() && o >= f && o <= s && r < f ? 3 : null;
  708. }
  709. function Ee(n) {
  710. return isNaN(n) ? -1 / 0 : n;
  711. }
  712. function Ie(n) {
  713. return isNaN(n) ? 1 / 0 : n;
  714. }
  715. function Ae(n) {
  716. const { startRow: e, endRow: a, startColumn: i, endColumn: r } = n;
  717. return {
  718. ...n,
  719. startRow: Ee(e),
  720. endRow: Ie(a),
  721. startColumn: Ee(i),
  722. endColumn: Ie(r)
  723. };
  724. }
  725. function Ba(n, e) {
  726. const { id: a } = e;
  727. let i = null;
  728. switch (a) {
  729. case mn.id:
  730. i = si(e, n);
  731. break;
  732. case un.id:
  733. i = pi(e, n);
  734. break;
  735. case on.id:
  736. i = di(e, n);
  737. break;
  738. case rn.id:
  739. i = Li(e);
  740. break;
  741. case nn.id:
  742. i = Pi(e);
  743. break;
  744. case an.id:
  745. i = Ti(e, n);
  746. break;
  747. case tn.id:
  748. i = Ei(e, n);
  749. break;
  750. case en.id:
  751. i = Ii(e, n);
  752. break;
  753. case Ja.id:
  754. i = Ni(e, n);
  755. break;
  756. case Za.id:
  757. i = Ri(e, n);
  758. break;
  759. case za.id:
  760. i = Ai(e, n);
  761. break;
  762. case ja.id:
  763. i = Si(e, n);
  764. break;
  765. case $a.id:
  766. i = Ci(e, n);
  767. break;
  768. case ba.id:
  769. i = Di(e, n);
  770. break;
  771. case Da.id:
  772. i = bi(e, n);
  773. break;
  774. }
  775. return i;
  776. }
  777. function Z(n) {
  778. var i;
  779. const e = n.getUnitId(), a = ((i = n.getActiveSheet()) == null ? void 0 : i.getSheetId()) || "";
  780. return {
  781. unitId: e,
  782. sheetId: a
  783. };
  784. }
  785. function si(n, e) {
  786. const { params: a } = n;
  787. if (!a) return null;
  788. const { fromRange: i, toRange: r } = a;
  789. if (!i || !r) return null;
  790. const { unitId: o, sheetId: u } = Z(e);
  791. return {
  792. type: q.MoveRange,
  793. from: i,
  794. to: r,
  795. unitId: o,
  796. sheetId: u
  797. };
  798. }
  799. function pi(n, e) {
  800. const { params: a } = n;
  801. if (!a) return null;
  802. const {
  803. fromRange: { startRow: i, endRow: r },
  804. toRange: { startRow: o, endRow: u }
  805. } = a, m = e.getUnitId(), f = e.getActiveSheet();
  806. if (!f) return null;
  807. const s = f.getSheetId(), p = {
  808. startRow: i,
  809. startColumn: 0,
  810. endRow: r,
  811. endColumn: f.getColumnCount() - 1,
  812. rangeType: Y.ROW
  813. }, d = {
  814. startRow: o,
  815. startColumn: 0,
  816. endRow: u,
  817. endColumn: f.getColumnCount() - 1,
  818. rangeType: Y.ROW
  819. };
  820. return {
  821. type: q.MoveRows,
  822. from: p,
  823. to: d,
  824. unitId: m,
  825. sheetId: s
  826. };
  827. }
  828. function di(n, e) {
  829. const { params: a } = n;
  830. if (!a) return null;
  831. const {
  832. fromRange: { startColumn: i, endColumn: r },
  833. toRange: { startColumn: o, endColumn: u }
  834. } = a, m = e.getUnitId(), f = e.getActiveSheet();
  835. if (!f) return null;
  836. const s = f.getSheetId(), p = {
  837. startRow: 0,
  838. startColumn: i,
  839. endRow: f.getRowCount() - 1,
  840. endColumn: r,
  841. rangeType: Y.COLUMN
  842. }, d = {
  843. startRow: 0,
  844. startColumn: o,
  845. endRow: f.getRowCount() - 1,
  846. endColumn: u,
  847. rangeType: Y.COLUMN
  848. };
  849. return {
  850. type: q.MoveCols,
  851. from: p,
  852. to: d,
  853. unitId: m,
  854. sheetId: s
  855. };
  856. }
  857. function Li(n) {
  858. const { params: e } = n;
  859. if (!e) return null;
  860. const { range: a, unitId: i, subUnitId: r } = e;
  861. return {
  862. type: q.InsertRow,
  863. range: a,
  864. unitId: i,
  865. sheetId: r
  866. };
  867. }
  868. function Pi(n) {
  869. const { params: e } = n;
  870. if (!e) return null;
  871. const { range: a, unitId: i, subUnitId: r } = e;
  872. return {
  873. type: q.InsertColumn,
  874. range: a,
  875. unitId: i,
  876. sheetId: r
  877. };
  878. }
  879. function Ti(n, e) {
  880. const { params: a } = n;
  881. if (!a) return null;
  882. const { range: i } = a, { unitId: r, sheetId: o } = Z(e);
  883. return {
  884. type: q.InsertMoveRight,
  885. range: i,
  886. unitId: r,
  887. sheetId: o
  888. };
  889. }
  890. function Ei(n, e) {
  891. const { params: a } = n;
  892. if (!a) return null;
  893. const { range: i } = a, { unitId: r, sheetId: o } = Z(e);
  894. return {
  895. type: q.InsertMoveDown,
  896. range: i,
  897. unitId: r,
  898. sheetId: o
  899. };
  900. }
  901. function Ii(n, e) {
  902. const { params: a } = n;
  903. if (!a) return null;
  904. const { range: i } = a, { unitId: r, sheetId: o } = Z(e);
  905. return {
  906. type: q.RemoveRow,
  907. range: i,
  908. unitId: r,
  909. sheetId: o
  910. };
  911. }
  912. function Ni(n, e) {
  913. const { params: a } = n;
  914. if (!a) return null;
  915. const { range: i } = a, { unitId: r, sheetId: o } = Z(e);
  916. return {
  917. type: q.RemoveColumn,
  918. range: i,
  919. unitId: r,
  920. sheetId: o
  921. };
  922. }
  923. function Ri(n, e) {
  924. const { params: a } = n;
  925. if (!a) return null;
  926. const { range: i } = a, { unitId: r, sheetId: o } = Z(e);
  927. return {
  928. type: q.DeleteMoveUp,
  929. range: i,
  930. unitId: r,
  931. sheetId: o
  932. };
  933. }
  934. function Ai(n, e) {
  935. const { params: a } = n;
  936. if (!a) return null;
  937. const { range: i } = a, { unitId: r, sheetId: o } = Z(e);
  938. return {
  939. type: q.DeleteMoveLeft,
  940. range: i,
  941. unitId: r,
  942. sheetId: o
  943. };
  944. }
  945. function Si(n, e) {
  946. const { params: a } = n;
  947. if (!a) return null;
  948. const { unitId: i, subUnitId: r, name: o } = a, { unitId: u, sheetId: m } = Z(e);
  949. return {
  950. type: q.SetName,
  951. unitId: i || u,
  952. sheetId: r || m,
  953. sheetName: o
  954. };
  955. }
  956. function Ci(n, e) {
  957. const { params: a } = n;
  958. if (!a) return null;
  959. const { unitId: i, subUnitId: r } = a, { unitId: o, sheetId: u } = Z(e);
  960. return {
  961. type: q.RemoveSheet,
  962. unitId: i || o,
  963. sheetId: r || u
  964. };
  965. }
  966. function Di(n, e) {
  967. const { params: a } = n;
  968. if (!a) return null;
  969. const { unitId: i, name: r, id: o } = a, { sheetId: u } = Z(e);
  970. return {
  971. type: q.SetDefinedName,
  972. unitId: i,
  973. sheetId: u,
  974. definedName: r,
  975. definedNameId: o
  976. };
  977. }
  978. function bi(n, e) {
  979. const { params: a } = n;
  980. if (!a) return null;
  981. const { unitId: i, name: r, id: o } = a, { sheetId: u } = Z(e);
  982. return {
  983. type: q.RemoveDefinedName,
  984. unitId: i,
  985. sheetId: u,
  986. definedName: r,
  987. definedNameId: o
  988. };
  989. }
  990. var Oi = Object.defineProperty, Mi = Object.getOwnPropertyDescriptor, xi = (n, e, a, i) => {
  991. for (var r = i > 1 ? void 0 : i ? Mi(e, a) : e, o = n.length - 1, u; o >= 0; o--)
  992. (u = n[o]) && (r = (i ? u(e, a, r) : u(r)) || r);
  993. return i && r && Oi(e, a, r), r;
  994. }, Ue = (n, e) => (a, i) => e(a, i, n);
  995. let We = class extends te {
  996. constructor(n, e, a, i) {
  997. super(), this._definedNamesService = n, this._univerInstanceService = e, this._sheetInterceptorService = a, this._lexerTreeBuilder = i, this._initialize();
  998. }
  999. _initialize() {
  1000. this._commandExecutedListener();
  1001. }
  1002. _commandExecutedListener() {
  1003. this.disposeWithMe(
  1004. this._sheetInterceptorService.interceptCommand({
  1005. getMutations: (n) => {
  1006. if (n.id === ba.id || n.id === Da.id)
  1007. return {
  1008. redos: [],
  1009. undos: []
  1010. };
  1011. const e = this._univerInstanceService.getCurrentUnitForType(ee.UNIVER_SHEET);
  1012. if (e == null)
  1013. return {
  1014. redos: [],
  1015. undos: []
  1016. };
  1017. const a = Ba(e, n);
  1018. return a ? this._getUpdateDefinedNameMutations(e, a) : {
  1019. redos: [],
  1020. undos: []
  1021. };
  1022. }
  1023. })
  1024. );
  1025. }
  1026. // eslint-disable-next-line max-lines-per-function
  1027. _getUpdateDefinedNameMutations(n, e) {
  1028. const { type: a, unitId: i, sheetId: r } = e, o = this._definedNamesService.getDefinedNameMap(i);
  1029. if (!o)
  1030. return {
  1031. redos: [],
  1032. undos: []
  1033. };
  1034. const u = [], m = [];
  1035. return Object.values(o).forEach((f) => {
  1036. var c;
  1037. const { formulaOrRefString: s } = f, p = this._lexerTreeBuilder.sequenceNodesBuilder(s);
  1038. if (p == null)
  1039. return !0;
  1040. let d = !1;
  1041. const L = [];
  1042. for (let N = 0, R = p.length; N < R; N++) {
  1043. const P = p[N];
  1044. if (typeof P == "string" || P.nodeType !== J.REFERENCE)
  1045. continue;
  1046. const { token: O } = P, M = pe(O), { range: F, sheetName: U, unitId: g } = M, x = ((c = n.getSheetBySheetName(U)) == null ? void 0 : c.getSheetId()) || "", h = {
  1047. range: F,
  1048. sheetId: x,
  1049. unitId: g,
  1050. sheetName: U,
  1051. refOffsetX: 0,
  1052. refOffsetY: 0
  1053. };
  1054. let V = null;
  1055. if (a === q.RemoveSheet)
  1056. V = this._removeSheet(f, i, r);
  1057. else if (a === q.SetName) {
  1058. const {
  1059. sheetId: k,
  1060. sheetName: b
  1061. } = e;
  1062. if (b == null || x == null || x.length === 0 || k !== x)
  1063. continue;
  1064. V = nt({
  1065. range: F,
  1066. sheetName: b,
  1067. unitId: g
  1068. });
  1069. } else
  1070. V = Fa(
  1071. h,
  1072. e,
  1073. i,
  1074. r
  1075. );
  1076. V != null && (p[N] = {
  1077. ...P,
  1078. token: V
  1079. }, d = !0, L.push(N));
  1080. }
  1081. if (!d)
  1082. return !0;
  1083. const E = Xe(Ua(p, L)), I = {
  1084. id: Me.id,
  1085. params: {
  1086. unitId: i,
  1087. ...f,
  1088. formulaOrRefString: E
  1089. }
  1090. };
  1091. u.push(I);
  1092. const S = {
  1093. id: Me.id,
  1094. params: {
  1095. unitId: i,
  1096. ...f
  1097. }
  1098. };
  1099. m.push(S);
  1100. }), {
  1101. redos: u,
  1102. undos: m
  1103. };
  1104. }
  1105. _removeSheet(n, e, a) {
  1106. var o;
  1107. const { formulaOrRefString: i } = n;
  1108. return ((o = this._definedNamesService.getWorksheetByRef(e, i)) == null ? void 0 : o.getSheetId()) === a ? j.REF : null;
  1109. }
  1110. };
  1111. We = xi([
  1112. Ue(0, qt),
  1113. Ue(1, xe),
  1114. Ue(2, W(xt)),
  1115. Ue(3, W(yt))
  1116. ], We);
  1117. var Ce = /* @__PURE__ */ ((n) => (n[n.NOT_REGISTER = 1] = "NOT_REGISTER", n[n.SUCCESS = 2] = "SUCCESS", n[n.WAIT = 3] = "WAIT", n[n.ERROR = 4] = "ERROR", n))(Ce || {}), _i = Object.defineProperty, yi = Object.getOwnPropertyDescriptor, qi = (n, e, a, i) => {
  1118. for (var r = i > 1 ? void 0 : i ? yi(e, a) : e, o = n.length - 1, u; o >= 0; o--)
  1119. (u = n[o]) && (r = (i ? u(e, a, r) : u(r)) || r);
  1120. return i && r && _i(e, a, r), r;
  1121. }, pt = (n, e) => (a, i) => e(a, i, n);
  1122. let Ke = class extends te {
  1123. constructor(e, a, i) {
  1124. super();
  1125. X(this, "_formulaCacheMap", /* @__PURE__ */ new Map());
  1126. X(this, "_formulaChangeWithRange$", new aa());
  1127. X(this, "formulaChangeWithRange$", this._formulaChangeWithRange$.asObservable());
  1128. // FIXME: this design could be improved.
  1129. X(this, "_formulaResult$", new aa());
  1130. X(this, "formulaResult$", this._formulaResult$.asObservable());
  1131. X(this, "calculateStarted$", new ya(!1));
  1132. this._commandService = e, this._activeDirtyManagerService = a, this._lifecycleService = i, this._initFormulaRegister(), this._initFormulaCalculationResultChange();
  1133. }
  1134. dispose() {
  1135. super.dispose(), this._formulaChangeWithRange$.complete(), this._formulaResult$.complete(), this.calculateStarted$.complete();
  1136. }
  1137. _ensureCacheMap(e, a) {
  1138. let i = this._formulaCacheMap.get(e);
  1139. i || (i = /* @__PURE__ */ new Map(), this._formulaCacheMap.set(e, i));
  1140. let r = i.get(a);
  1141. return r || (r = /* @__PURE__ */ new Map(), i.set(a, r)), r;
  1142. }
  1143. _createFormulaId(e, a) {
  1144. return `formula.${e}_${a}_${Ne.generateRandomId(8)}`;
  1145. }
  1146. _initFormulaRegister() {
  1147. this._activeDirtyManagerService.register(
  1148. Ge.id,
  1149. {
  1150. commandId: Ge.id,
  1151. getDirtyData(a) {
  1152. return {
  1153. dirtyUnitOtherFormulaMap: a.params
  1154. };
  1155. }
  1156. }
  1157. );
  1158. const e = (a) => {
  1159. const { unitId: i, subUnitId: r, formulaText: o, formulaId: u, ranges: m } = a;
  1160. if (!this._ensureCacheMap(i, r).has(u))
  1161. return;
  1162. const s = {
  1163. unitId: i,
  1164. subUnitId: r,
  1165. formulaMap: {
  1166. [u]: {
  1167. f: o,
  1168. ranges: m
  1169. }
  1170. }
  1171. };
  1172. this._commandService.executeCommand(Tn.id, s).then(() => {
  1173. this._commandService.executeCommand(
  1174. Ge.id,
  1175. { [i]: { [r]: { [u]: !0 } } }
  1176. );
  1177. });
  1178. };
  1179. this.disposeWithMe(
  1180. this._formulaChangeWithRange$.pipe(Bn(() => this.calculateStarted$.pipe(na((a) => a)))).subscribe((a) => a.forEach(e))
  1181. ), this.disposeWithMe(
  1182. this._formulaChangeWithRange$.pipe(na(() => this.calculateStarted$.getValue())).subscribe(e)
  1183. );
  1184. }
  1185. _initFormulaCalculationResultChange() {
  1186. this.disposeWithMe(this._commandService.onCommandExecuted((e) => {
  1187. if (e.id === Ln.id) {
  1188. const a = e.params, { unitOtherData: i } = a, r = {};
  1189. for (const o in i) {
  1190. const u = i[o], m = {};
  1191. r[o] = m;
  1192. for (const f in u) {
  1193. const s = this._ensureCacheMap(o, f), p = u[f], d = [];
  1194. m[f] = d;
  1195. for (const L in p) {
  1196. const E = p[L];
  1197. if (s.has(L)) {
  1198. const I = s.get(L);
  1199. if (!I)
  1200. continue;
  1201. I.result || (I.result = {});
  1202. const S = new w(E), c = new w(I.result);
  1203. S.forValue((N, R, P) => {
  1204. c.setValue(N, R, P);
  1205. }), I.status = Ce.SUCCESS, I.callbacks.forEach((N) => {
  1206. N(E);
  1207. }), I.callbacks.clear(), d.push(I);
  1208. }
  1209. }
  1210. }
  1211. }
  1212. this._formulaResult$.next(r);
  1213. }
  1214. }));
  1215. }
  1216. registerFormulaWithRange(e, a, i, r = [{ startRow: 0, endRow: 0, startColumn: 0, endColumn: 0 }], o) {
  1217. const u = this._createFormulaId(e, a);
  1218. return this._ensureCacheMap(e, a).set(u, {
  1219. result: void 0,
  1220. status: Ce.WAIT,
  1221. formulaId: u,
  1222. callbacks: /* @__PURE__ */ new Set(),
  1223. extra: o
  1224. }), this._formulaChangeWithRange$.next({
  1225. unitId: e,
  1226. subUnitId: a,
  1227. formulaText: i,
  1228. formulaId: u,
  1229. ranges: r
  1230. }), u;
  1231. }
  1232. deleteFormula(e, a, i) {
  1233. const r = {
  1234. unitId: e,
  1235. subUnitId: a,
  1236. formulaIdList: i
  1237. };
  1238. this._commandService.executeCommand(Pn.id, r);
  1239. const o = this._ensureCacheMap(e, a);
  1240. i.forEach((u) => o.delete(u));
  1241. }
  1242. getFormulaValue(e, a, i) {
  1243. const r = this._ensureCacheMap(e, a), o = r.get(i);
  1244. return o ? o.status === Ce.SUCCESS || o.status === Ce.ERROR ? Promise.resolve(o) : new Promise((u) => {
  1245. o.callbacks.add(() => {
  1246. u(r.get(i));
  1247. });
  1248. }) : Promise.resolve(null);
  1249. }
  1250. getFormulaValueSync(e, a, i) {
  1251. return this._ensureCacheMap(e, a).get(i);
  1252. }
  1253. };
  1254. Ke = qi([
  1255. pt(0, de),
  1256. pt(1, gt),
  1257. pt(2, W(wa))
  1258. ], Ke);
  1259. const ot = "sheets-formula.base.config";
  1260. var ne = /* @__PURE__ */ ((n) => (n[n.FORCED = 0] = "FORCED", n[n.WHEN_EMPTY = 1] = "WHEN_EMPTY", n[n.NO_CALCULATION = 2] = "NO_CALCULATION", n))(ne || {});
  1261. const ia = {}, gi = "sheets-formula.remote.config", ra = {};
  1262. var hi = Object.defineProperty, Ui = Object.getOwnPropertyDescriptor, Fi = (n, e, a, i) => {
  1263. for (var r = i > 1 ? void 0 : i ? Ui(e, a) : e, o = n.length - 1, u; o >= 0; o--)
  1264. (u = n[o]) && (r = (i ? u(e, a, r) : u(r)) || r);
  1265. return i && r && hi(e, a, r), r;
  1266. }, le = (n, e) => (a, i) => e(a, i, n);
  1267. const oa = { done: 0, count: 0 }, dt = { onlyLocal: !0 };
  1268. let Oe = class extends te {
  1269. constructor(e, a, i, r, o, u, m) {
  1270. var s;
  1271. super();
  1272. X(this, "_waitingCommandQueue", []);
  1273. X(this, "_executingDirtyData", {
  1274. forceCalculation: !1,
  1275. dirtyRanges: [],
  1276. dirtyNameMap: {},
  1277. dirtyDefinedNameMap: {},
  1278. dirtyUnitFeatureMap: {},
  1279. dirtyUnitOtherFormulaMap: {},
  1280. clearDependencyTreeCache: {}
  1281. });
  1282. X(this, "_setTimeoutKey", -1);
  1283. X(this, "_startExecutionTime", 0);
  1284. X(this, "_totalCalculationTaskCount", 0);
  1285. X(this, "_doneCalculationTaskCount", 0);
  1286. X(this, "_executionInProgressParams", null);
  1287. X(this, "_restartCalculation", !1);
  1288. X(this, "_calculationMode", ne.WHEN_EMPTY);
  1289. /**
  1290. * The mark of forced calculation. If a new mutation triggers dirty area calculation during the forced calculation process, forced calculation is still required.
  1291. */
  1292. X(this, "_forceCalculating", !1);
  1293. X(this, "_progress$", new ya(oa));
  1294. X(this, "progress$", this._progress$.asObservable());
  1295. this._commandService = e, this._activeDirtyManagerService = a, this._logService = i, this._configService = r, this._formulaDataModel = o, this._localeService = u, this._registerOtherFormulaService = m;
  1296. const f = this._configService.getConfig(ot);
  1297. this._calculationMode = (s = f == null ? void 0 : f.initialFormulaComputing) != null ? s : ne.WHEN_EMPTY, this._commandExecutedListener(), this._initialExecuteFormulaProcessListener(), this._initialExecuteFormula();
  1298. }
  1299. _emitProgress(e) {
  1300. this._progress$.next({ done: this._doneCalculationTaskCount, count: this._totalCalculationTaskCount, label: e });
  1301. }
  1302. _startProgress() {
  1303. this._doneCalculationTaskCount = 0, this._totalCalculationTaskCount = 1;
  1304. const e = this._localeService.t("formula.progress.analyzing");
  1305. this._emitProgress(e);
  1306. }
  1307. _calculateProgress(e) {
  1308. if (this._executionInProgressParams) {
  1309. const { totalFormulasToCalculate: a, completedFormulasCount: i, totalArrayFormulasToCalculate: r, completedArrayFormulasCount: o } = this._executionInProgressParams;
  1310. if (this._doneCalculationTaskCount = i + o, this._totalCalculationTaskCount = a + r, this._totalCalculationTaskCount === 0)
  1311. return;
  1312. this._emitProgress(e);
  1313. }
  1314. }
  1315. _completeProgress() {
  1316. this._doneCalculationTaskCount = this._totalCalculationTaskCount = 1;
  1317. const e = this._localeService.t("formula.progress.done");
  1318. this._emitProgress(e);
  1319. }
  1320. clearProgress() {
  1321. this._doneCalculationTaskCount = 0, this._totalCalculationTaskCount = 0, this._emitProgress();
  1322. }
  1323. dispose() {
  1324. super.dispose(), this._progress$.next(oa), this._progress$.complete();
  1325. }
  1326. _commandExecutedListener() {
  1327. this.disposeWithMe(
  1328. this._commandService.onCommandExecuted((e, a) => {
  1329. if (this._activeDirtyManagerService.get(e.id)) {
  1330. if (e.id === ie.id) {
  1331. const i = e.params;
  1332. if (a && a.onlyLocal === !0 || i.trigger === _t.id || i.trigger === Oa.id || i.trigger === Ma.id)
  1333. return;
  1334. }
  1335. this._waitingCommandQueue.push(e), clearTimeout(this._setTimeoutKey), this._setTimeoutKey = setTimeout(() => {
  1336. const i = this._generateDirty(this._waitingCommandQueue);
  1337. this._executingDirtyData = this._mergeDirty(this._executingDirtyData, i), this._executionInProgressParams == null ? this._commandService.executeCommand(Se.id, { ...this._executingDirtyData }, dt) : (this._restartCalculation = !0, this._commandService.executeCommand($t.id, {})), this._waitingCommandQueue = [];
  1338. }, 100);
  1339. }
  1340. })
  1341. );
  1342. }
  1343. _generateDirty(e) {
  1344. const a = [], i = {}, r = {}, o = {}, u = {}, m = {};
  1345. for (const f of e) {
  1346. const s = this._activeDirtyManagerService.get(f.id);
  1347. if (s == null)
  1348. continue;
  1349. const p = s.getDirtyData(f), { dirtyRanges: d, dirtyNameMap: L, dirtyDefinedNameMap: E, dirtyUnitFeatureMap: I, dirtyUnitOtherFormulaMap: S, clearDependencyTreeCache: c } = p;
  1350. d != null && this._mergeDirtyRanges(a, d), L != null && this._mergeDirtyNameMap(i, L), E != null && this._mergeDirtyNameMap(r, E), I != null && this._mergeDirtyUnitFeatureOrOtherFormulaMap(o, I), S != null && this._mergeDirtyUnitFeatureOrOtherFormulaMap(u, S), c != null && this._mergeDirtyNameMap(m, c);
  1351. }
  1352. return {
  1353. dirtyRanges: a,
  1354. dirtyNameMap: i,
  1355. dirtyDefinedNameMap: r,
  1356. dirtyUnitFeatureMap: o,
  1357. dirtyUnitOtherFormulaMap: u,
  1358. forceCalculation: !1,
  1359. clearDependencyTreeCache: m,
  1360. maxIteration: this._configService.getConfig(jt)
  1361. // numfmtItemMap,
  1362. };
  1363. }
  1364. _mergeDirty(e, a) {
  1365. const i = [...e.dirtyRanges, ...a.dirtyRanges], r = { ...e.dirtyNameMap }, o = { ...e.dirtyDefinedNameMap }, u = { ...e.dirtyUnitFeatureMap }, m = { ...e.dirtyUnitOtherFormulaMap }, f = { ...e.clearDependencyTreeCache };
  1366. this._mergeDirtyNameMap(r, a.dirtyNameMap), this._mergeDirtyNameMap(o, a.dirtyDefinedNameMap), this._mergeDirtyUnitFeatureOrOtherFormulaMap(u, a.dirtyUnitFeatureMap), this._mergeDirtyUnitFeatureOrOtherFormulaMap(m, a.dirtyUnitOtherFormulaMap), this._mergeDirtyNameMap(f, a.clearDependencyTreeCache);
  1367. const s = e.maxIteration || a.maxIteration;
  1368. return {
  1369. dirtyRanges: i,
  1370. dirtyNameMap: r,
  1371. dirtyDefinedNameMap: o,
  1372. dirtyUnitFeatureMap: u,
  1373. dirtyUnitOtherFormulaMap: m,
  1374. forceCalculation: !!this._forceCalculating,
  1375. clearDependencyTreeCache: f,
  1376. maxIteration: s
  1377. };
  1378. }
  1379. /**
  1380. * dirtyRanges may overlap with the ranges in allDirtyRanges and need to be deduplicated
  1381. * @param allDirtyRanges
  1382. * @param dirtyRanges
  1383. */
  1384. _mergeDirtyRanges(e, a) {
  1385. for (const i of a) {
  1386. let r = !1;
  1387. for (const o of e)
  1388. if (i.unitId === o.unitId && i.sheetId === o.sheetId) {
  1389. const { startRow: u, startColumn: m, endRow: f, endColumn: s } = i.range, { startRow: p, startColumn: d, endRow: L, endColumn: E } = o.range;
  1390. if (u === p && m === d && f === L && s === E) {
  1391. r = !0;
  1392. break;
  1393. }
  1394. }
  1395. r || e.push(i);
  1396. }
  1397. }
  1398. _mergeDirtyNameMap(e, a) {
  1399. Object.keys(a).forEach((i) => {
  1400. e[i] == null && (e[i] = {}), Object.keys(a[i]).forEach((r) => {
  1401. var o;
  1402. (o = a[i]) != null && o[r] && (e[i][r] = a[i][r]);
  1403. });
  1404. });
  1405. }
  1406. _mergeDirtyUnitFeatureOrOtherFormulaMap(e, a) {
  1407. Object.keys(a).forEach((i) => {
  1408. e[i] == null && (e[i] = {}), Object.keys(a[i]).forEach((r) => {
  1409. e[i][r] == null && (e[i][r] = {}), Object.keys(a[i][r]).forEach((o) => {
  1410. e[i][r][o] = a[i][r][o] || !1;
  1411. });
  1412. });
  1413. });
  1414. }
  1415. // eslint-disable-next-line max-lines-per-function
  1416. _initialExecuteFormulaProcessListener() {
  1417. let e = null, a = 0;
  1418. this.disposeWithMe(
  1419. // eslint-disable-next-line max-lines-per-function, complexity
  1420. this._commandService.onCommandExecuted((i) => {
  1421. if (i.id === Se.id) {
  1422. const { forceCalculation: o = !1 } = i.params;
  1423. o && (this._forceCalculating = !0);
  1424. } else i.id === $t.id && this.clearProgress();
  1425. if (i.id !== En.id)
  1426. return;
  1427. const r = i.params;
  1428. if (r.stageInfo != null) {
  1429. const {
  1430. stage: o
  1431. } = r.stageInfo;
  1432. if (o === ge.START) {
  1433. if (this._calculationMode === ne.NO_CALCULATION)
  1434. return;
  1435. a === 0 && (this._startExecutionTime = performance.now()), a++, e !== null && (clearTimeout(e), e = null), e = setTimeout(() => {
  1436. e = null, this._startProgress();
  1437. }, 1e3);
  1438. } else if (o === ge.CURRENTLY_CALCULATING) {
  1439. if (this._executionInProgressParams = r.stageInfo, e === null) {
  1440. const u = this._localeService.t("formula.progress.calculating");
  1441. this._calculateProgress(u);
  1442. }
  1443. } else if (o === ge.START_DEPENDENCY_ARRAY_FORMULA) {
  1444. if (this._executionInProgressParams = r.stageInfo, e === null) {
  1445. const u = this._localeService.t("formula.progress.array-analysis");
  1446. this._calculateProgress(u);
  1447. }
  1448. } else if (o === ge.CURRENTLY_CALCULATING_ARRAY_FORMULA && (this._executionInProgressParams = r.stageInfo, e === null)) {
  1449. const u = this._localeService.t("formula.progress.array-calculation");
  1450. this._calculateProgress(u);
  1451. }
  1452. } else {
  1453. const o = r.functionsExecutedState;
  1454. let u = "";
  1455. switch (a--, o) {
  1456. case Re.NOT_EXECUTED:
  1457. u = "No tasks are being executed anymore", this._resetExecutingDirtyData();
  1458. break;
  1459. case Re.STOP_EXECUTION:
  1460. u = "The execution of the formula has been stopped", a = 0;
  1461. break;
  1462. case Re.SUCCESS:
  1463. u = "Formula calculation succeeded", (a === 0 || a === -1) && (u += `. Total time consumed: ${performance.now() - this._startExecutionTime} ms`), this._resetExecutingDirtyData();
  1464. break;
  1465. case Re.INITIAL:
  1466. u = "Waiting for calculation", this._resetExecutingDirtyData();
  1467. break;
  1468. }
  1469. (a === 0 || a === -1) && (e ? (clearTimeout(e), e = null, this.clearProgress()) : this._completeProgress(), a = 0, this._doneCalculationTaskCount = 0, this._totalCalculationTaskCount = 0, this._forceCalculating = !1), o === Re.STOP_EXECUTION && this._restartCalculation ? (this._restartCalculation = !1, this._commandService.executeCommand(
  1470. Se.id,
  1471. {
  1472. ...this._executingDirtyData
  1473. },
  1474. dt
  1475. )) : this._executionInProgressParams = null, this._logService.debug("[TriggerCalculationController]", u);
  1476. }
  1477. })
  1478. );
  1479. }
  1480. _resetExecutingDirtyData() {
  1481. this._executingDirtyData = {
  1482. dirtyRanges: [],
  1483. dirtyNameMap: {},
  1484. dirtyDefinedNameMap: {},
  1485. dirtyUnitFeatureMap: {},
  1486. dirtyUnitOtherFormulaMap: {},
  1487. forceCalculation: !1,
  1488. clearDependencyTreeCache: {}
  1489. };
  1490. }
  1491. _initialExecuteFormula() {
  1492. const e = this._getDirtyDataByCalculationMode(this._calculationMode);
  1493. this._commandService.executeCommand(Se.id, e, dt), this._registerOtherFormulaService.calculateStarted$.next(!0);
  1494. }
  1495. _getDirtyDataByCalculationMode(e) {
  1496. const a = e === ne.FORCED, i = e === ne.WHEN_EMPTY ? this._formulaDataModel.getFormulaDirtyRanges() : [];
  1497. return {
  1498. forceCalculation: a,
  1499. dirtyRanges: i,
  1500. dirtyNameMap: {},
  1501. dirtyDefinedNameMap: {},
  1502. dirtyUnitFeatureMap: {},
  1503. dirtyUnitOtherFormulaMap: {},
  1504. clearDependencyTreeCache: {},
  1505. maxIteration: this._configService.getConfig(jt)
  1506. };
  1507. }
  1508. };
  1509. Oe = Fi([
  1510. le(0, de),
  1511. le(1, gt),
  1512. le(2, Xa),
  1513. le(3, _e),
  1514. le(4, W(it)),
  1515. le(5, W(Ot)),
  1516. le(6, W(Ke))
  1517. ], Oe);
  1518. var Bi = Object.defineProperty, vi = Object.getOwnPropertyDescriptor, Vi = (n, e, a, i) => {
  1519. for (var r = i > 1 ? void 0 : i ? vi(e, a) : e, o = n.length - 1, u; o >= 0; o--)
  1520. (u = n[o]) && (r = (i ? u(e, a, r) : u(r)) || r);
  1521. return i && r && Bi(e, a, r), r;
  1522. }, me = (n, e) => (a, i) => e(a, i, n);
  1523. let Qe = class extends te {
  1524. constructor(n, e, a, i, r, o, u, m) {
  1525. super(), this._univerInstanceService = n, this._commandService = e, this._lexerTreeBuilder = a, this._formulaDataModel = i, this._sheetInterceptorService = r, this._definedNamesService = o, this._configService = u, this._injector = m, this._commandExecutedListener();
  1526. }
  1527. _commandExecutedListener() {
  1528. this.disposeWithMe(this._sheetInterceptorService.interceptCommand({
  1529. getMutations: (n) => this._getUpdateFormula(n)
  1530. })), this.disposeWithMe(
  1531. this._commandService.onCommandExecuted((n) => {
  1532. if (n.params)
  1533. if (n.id === It.id) {
  1534. const { subUnitId: e, unitId: a } = n.params;
  1535. this._handleWorkbookDisposed(a, e);
  1536. } else n.id === Nt.id && this._handleInsertSheetMutation(n.params);
  1537. })
  1538. ), this.disposeWithMe(
  1539. this._commandService.beforeCommandExecuted((n, e) => {
  1540. if (n.id === ie.id) {
  1541. const a = n.params;
  1542. if (e && e.onlyLocal === !0 || a.trigger === _t.id || a.trigger === Oa.id || a.trigger === Ma.id)
  1543. return;
  1544. this._handleSetRangeValuesMutation(a);
  1545. }
  1546. })
  1547. ), this.disposeWithMe(this._univerInstanceService.getTypeOfUnitAdded$(ee.UNIVER_SHEET).subscribe((n) => this._handleWorkbookAdded(n))), this.disposeWithMe(this._univerInstanceService.getTypeOfUnitDisposed$(ee.UNIVER_SHEET).pipe(vn((n) => n.getUnitId())).subscribe((n) => this._handleWorkbookDisposed(n)));
  1548. }
  1549. _handleSetRangeValuesMutation(n) {
  1550. const { subUnitId: e, unitId: a, cellValue: i } = n;
  1551. if (i == null)
  1552. return;
  1553. const r = this._formulaDataModel.updateFormulaData(a, e, i), o = {
  1554. [a]: {
  1555. [e]: r
  1556. }
  1557. };
  1558. this._commandService.executeCommand(
  1559. ie.id,
  1560. {
  1561. unitId: a,
  1562. subUnitId: e,
  1563. cellValue: li(r)
  1564. },
  1565. {
  1566. onlyLocal: !0,
  1567. fromFormula: !0
  1568. }
  1569. ), this._formulaDataModel.updateArrayFormulaCellData(a, e, i), this._formulaDataModel.updateArrayFormulaRange(a, e, i), this._commandService.executeCommand(
  1570. he.id,
  1571. {
  1572. formulaData: o
  1573. },
  1574. {
  1575. onlyLocal: !0
  1576. }
  1577. ), this._commandService.executeCommand(
  1578. Rt.id,
  1579. {
  1580. arrayFormulaRange: this._formulaDataModel.getArrayFormulaRange(),
  1581. arrayFormulaCellData: this._formulaDataModel.getArrayFormulaCellData()
  1582. },
  1583. {
  1584. onlyLocal: !0,
  1585. remove: !0
  1586. // remove array formula range shape
  1587. }
  1588. );
  1589. }
  1590. _handleWorkbookDisposed(n, e) {
  1591. const a = this._formulaDataModel.getFormulaData(), i = ct(a, n, e), r = this._formulaDataModel.getArrayFormulaRange(), o = ct(r, n, e), u = this._formulaDataModel.getArrayFormulaCellData(), m = ct(u, n, e);
  1592. i && this._commandService.executeCommand(
  1593. he.id,
  1594. {
  1595. formulaData: i
  1596. },
  1597. {
  1598. onlyLocal: !0
  1599. }
  1600. ), o && m && this._commandService.executeCommand(
  1601. Rt.id,
  1602. {
  1603. arrayFormulaRange: r,
  1604. arrayFormulaCellData: u
  1605. },
  1606. {
  1607. onlyLocal: !0
  1608. }
  1609. );
  1610. }
  1611. _handleInsertSheetMutation(n) {
  1612. const { sheet: e, unitId: a } = n, i = this._formulaDataModel.getFormulaData(), { id: r, cellData: o } = e, u = new w(o), m = zt(i, a, r, u);
  1613. this._commandService.executeCommand(
  1614. he.id,
  1615. {
  1616. formulaData: m
  1617. },
  1618. {
  1619. onlyLocal: !0
  1620. }
  1621. );
  1622. }
  1623. _handleWorkbookAdded(n) {
  1624. var f;
  1625. const e = {}, a = n.getUnitId(), i = { [a]: {} };
  1626. n.getSheets().forEach((s) => {
  1627. var E;
  1628. const p = s.getCellMatrix(), d = s.getSheetId(), L = zt(e, a, d, p);
  1629. i[a][d] = (E = L[a]) == null ? void 0 : E[d];
  1630. }), this._commandService.executeCommand(he.id, { formulaData: i }, { onlyLocal: !0 });
  1631. const o = this._configService.getConfig(ot), u = (f = o == null ? void 0 : o.initialFormulaComputing) != null ? f : ne.WHEN_EMPTY, m = this._getDiryDataByCalculationMode(u);
  1632. this._commandService.executeCommand(Se.id, m, { onlyLocal: !0 });
  1633. }
  1634. _getDiryDataByCalculationMode(n) {
  1635. const e = n === ne.FORCED, a = n === ne.WHEN_EMPTY ? this._formulaDataModel.getFormulaDirtyRanges() : [];
  1636. return {
  1637. forceCalculation: e,
  1638. dirtyRanges: a,
  1639. dirtyNameMap: {},
  1640. dirtyDefinedNameMap: {},
  1641. dirtyUnitFeatureMap: {},
  1642. dirtyUnitOtherFormulaMap: {},
  1643. clearDependencyTreeCache: {}
  1644. };
  1645. }
  1646. _getUpdateFormula(n) {
  1647. const e = this._univerInstanceService.getCurrentUnitForType(ee.UNIVER_SHEET);
  1648. if (!e)
  1649. return {
  1650. undos: [],
  1651. redos: []
  1652. };
  1653. const a = Ba(e, n);
  1654. if (a) {
  1655. const { unitSheetNameMap: i } = this._formulaDataModel.getCalculateData(), r = this._formulaDataModel.getFormulaData(), { newFormulaData: o } = this._getFormulaReferenceMoveInfo(
  1656. r,
  1657. i,
  1658. a
  1659. ), { undos: u, redos: m } = Xn(r, o, a);
  1660. return {
  1661. undos: u,
  1662. redos: m
  1663. };
  1664. }
  1665. return {
  1666. undos: [],
  1667. redos: []
  1668. };
  1669. }
  1670. // eslint-disable-next-line max-lines-per-function
  1671. _getFormulaReferenceMoveInfo(n, e, a) {
  1672. if (!Ne.isDefine(n)) return { newFormulaData: {}, oldFormulaData: {} };
  1673. const i = Object.keys(n);
  1674. if (i.length === 0) return { newFormulaData: {}, oldFormulaData: {} };
  1675. const r = {}, o = {};
  1676. for (const u of i) {
  1677. const m = n[u];
  1678. if (m == null)
  1679. continue;
  1680. const f = Object.keys(m);
  1681. Ne.isDefine(r[u]) || (r[u] = {}), Ne.isDefine(o[u]) || (o[u] = {});
  1682. for (const s of f) {
  1683. const p = new w(m[s] || {}), d = new w();
  1684. p.forValue((L, E, I) => {
  1685. var U;
  1686. if (!I) return !0;
  1687. const { f: S, x: c, y: N, si: R } = I, P = this._lexerTreeBuilder.sequenceNodesBuilder(S);
  1688. if (P == null)
  1689. return !0;
  1690. let O = !1;
  1691. const M = [];
  1692. for (let g = 0, x = P.length; g < x; g++) {
  1693. const h = P[g];
  1694. if (typeof h == "string")
  1695. continue;
  1696. const { token: V, nodeType: k } = h, { type: b } = a;
  1697. if ((b === q.SetDefinedName || b === q.RemoveDefinedName) && (k === J.DEFINED_NAME || k === J.FUNCTION)) {
  1698. const { definedNameId: Pe, definedName: Te } = a;
  1699. if (Pe === void 0 || Te === void 0)
  1700. continue;
  1701. const fe = this._definedNamesService.getValueById(u, Pe);
  1702. if (fe == null || fe.name !== V)
  1703. continue;
  1704. P[g] = {
  1705. ...h,
  1706. token: b === q.SetDefinedName ? Te : j.REF
  1707. }, O = !0, M.push(g);
  1708. continue;
  1709. } else if (k !== J.REFERENCE)
  1710. continue;
  1711. const Le = pe(V), { range: ae, sheetName: re, unitId: Q } = Le, oe = Q == null || Q.length === 0 ? u : Q, z = ((U = e == null ? void 0 : e[oe]) == null ? void 0 : U[re]) || "";
  1712. if (!ha(
  1713. a.unitId,
  1714. a.sheetId,
  1715. u,
  1716. s,
  1717. Q,
  1718. z
  1719. ))
  1720. continue;
  1721. const ye = {
  1722. range: ae,
  1723. sheetId: z,
  1724. unitId: Q,
  1725. sheetName: re,
  1726. refOffsetX: c || 0,
  1727. refOffsetY: N || 0
  1728. };
  1729. let ue = null;
  1730. if (b === q.SetName) {
  1731. const {
  1732. unitId: Pe,
  1733. sheetId: Te,
  1734. sheetName: fe
  1735. } = a;
  1736. if (fe == null || z == null || z.length === 0 || Te !== z)
  1737. continue;
  1738. ue = nt({
  1739. range: ae,
  1740. sheetName: fe,
  1741. unitId: Q
  1742. });
  1743. } else if (b === q.RemoveSheet) {
  1744. const {
  1745. unitId: Pe,
  1746. sheetId: Te,
  1747. sheetName: fe
  1748. } = a;
  1749. if (z == null || z.length === 0 || Te !== z)
  1750. continue;
  1751. ue = j.REF;
  1752. } else b !== q.SetDefinedName && (ue = Fa(
  1753. ye,
  1754. a,
  1755. u,
  1756. s
  1757. ));
  1758. ue != null && (P[g] = {
  1759. ...h,
  1760. token: ue
  1761. }, O = !0, M.push(g));
  1762. }
  1763. if (!O)
  1764. return !0;
  1765. const F = Ua(P, M, c, N);
  1766. d.setValue(L, E, {
  1767. f: `=${Xe(F)}`
  1768. });
  1769. }), o[u] && (o[u][s] = d.getData());
  1770. }
  1771. }
  1772. return { newFormulaData: o };
  1773. }
  1774. };
  1775. Qe = Vi([
  1776. me(0, xe),
  1777. me(1, de),
  1778. me(2, W(yt)),
  1779. me(3, W(it)),
  1780. me(4, W(xt)),
  1781. me(5, qt),
  1782. me(6, _e),
  1783. me(7, W(at))
  1784. ], Qe);
  1785. const Gi = [
  1786. {
  1787. functionName: Zt.ARRAY_CONSTRAIN,
  1788. functionType: t.Array,
  1789. description: "formula.functionList.ARRAY_CONSTRAIN.description",
  1790. abstract: "formula.functionList.ARRAY_CONSTRAIN.abstract",
  1791. functionParameter: [
  1792. {
  1793. name: "formula.functionList.ARRAY_CONSTRAIN.functionParameter.inputRange.name",
  1794. detail: "formula.functionList.ARRAY_CONSTRAIN.functionParameter.inputRange.detail",
  1795. example: "A1:C3",
  1796. require: 1,
  1797. repeat: 0
  1798. },
  1799. {
  1800. name: "formula.functionList.ARRAY_CONSTRAIN.functionParameter.numRows.name",
  1801. detail: "formula.functionList.ARRAY_CONSTRAIN.functionParameter.numRows.detail",
  1802. example: "2",
  1803. require: 1,
  1804. repeat: 0
  1805. },
  1806. {
  1807. name: "formula.functionList.ARRAY_CONSTRAIN.functionParameter.numCols.name",
  1808. detail: "formula.functionList.ARRAY_CONSTRAIN.functionParameter.numCols.detail",
  1809. example: "2",
  1810. require: 1,
  1811. repeat: 0
  1812. }
  1813. ]
  1814. },
  1815. {
  1816. functionName: Zt.FLATTEN,
  1817. functionType: t.Array,
  1818. description: "formula.functionList.FLATTEN.description",
  1819. abstract: "formula.functionList.FLATTEN.abstract",
  1820. functionParameter: [
  1821. {
  1822. name: "formula.functionList.FLATTEN.functionParameter.range1.name",
  1823. detail: "formula.functionList.FLATTEN.functionParameter.range1.detail",
  1824. example: "A1:C3",
  1825. require: 1,
  1826. repeat: 0
  1827. },
  1828. {
  1829. name: "formula.functionList.FLATTEN.functionParameter.range2.name",
  1830. detail: "formula.functionList.FLATTEN.functionParameter.range2.detail",
  1831. example: "D1:F3",
  1832. require: 0,
  1833. repeat: 1
  1834. }
  1835. ]
  1836. }
  1837. ], Hi = [
  1838. {
  1839. functionName: _.BETADIST,
  1840. functionType: t.Compatibility,
  1841. description: "formula.functionList.BETADIST.description",
  1842. abstract: "formula.functionList.BETADIST.abstract",
  1843. functionParameter: [
  1844. {
  1845. name: "formula.functionList.BETADIST.functionParameter.x.name",
  1846. detail: "formula.functionList.BETADIST.functionParameter.x.detail",
  1847. example: "2",
  1848. require: 1,
  1849. repeat: 0
  1850. },
  1851. {
  1852. name: "formula.functionList.BETADIST.functionParameter.alpha.name",
  1853. detail: "formula.functionList.BETADIST.functionParameter.alpha.detail",
  1854. example: "8",
  1855. require: 1,
  1856. repeat: 0
  1857. },
  1858. {
  1859. name: "formula.functionList.BETADIST.functionParameter.beta.name",
  1860. detail: "formula.functionList.BETADIST.functionParameter.beta.detail",
  1861. example: "10",
  1862. require: 1,
  1863. repeat: 0
  1864. },
  1865. {
  1866. name: "formula.functionList.BETADIST.functionParameter.A.name",
  1867. detail: "formula.functionList.BETADIST.functionParameter.A.detail",
  1868. example: "1",
  1869. require: 0,
  1870. repeat: 0
  1871. },
  1872. {
  1873. name: "formula.functionList.BETADIST.functionParameter.B.name",
  1874. detail: "formula.functionList.BETADIST.functionParameter.B.detail",
  1875. example: "3",
  1876. require: 0,
  1877. repeat: 0
  1878. }
  1879. ]
  1880. },
  1881. {
  1882. functionName: _.BETAINV,
  1883. functionType: t.Compatibility,
  1884. description: "formula.functionList.BETAINV.description",
  1885. abstract: "formula.functionList.BETAINV.abstract",
  1886. functionParameter: [
  1887. {
  1888. name: "formula.functionList.BETAINV.functionParameter.probability.name",
  1889. detail: "formula.functionList.BETAINV.functionParameter.probability.detail",
  1890. example: "0.685470581",
  1891. require: 1,
  1892. repeat: 0
  1893. },
  1894. {
  1895. name: "formula.functionList.BETAINV.functionParameter.alpha.name",
  1896. detail: "formula.functionList.BETAINV.functionParameter.alpha.detail",
  1897. example: "8",
  1898. require: 1,
  1899. repeat: 0
  1900. },
  1901. {
  1902. name: "formula.functionList.BETAINV.functionParameter.beta.name",
  1903. detail: "formula.functionList.BETAINV.functionParameter.beta.detail",
  1904. example: "10",
  1905. require: 1,
  1906. repeat: 0
  1907. },
  1908. {
  1909. name: "formula.functionList.BETAINV.functionParameter.A.name",
  1910. detail: "formula.functionList.BETAINV.functionParameter.A.detail",
  1911. example: "1",
  1912. require: 0,
  1913. repeat: 0
  1914. },
  1915. {
  1916. name: "formula.functionList.BETAINV.functionParameter.B.name",
  1917. detail: "formula.functionList.BETAINV.functionParameter.B.detail",
  1918. example: "3",
  1919. require: 0,
  1920. repeat: 0
  1921. }
  1922. ]
  1923. },
  1924. {
  1925. functionName: _.BINOMDIST,
  1926. functionType: t.Compatibility,
  1927. description: "formula.functionList.BINOMDIST.description",
  1928. abstract: "formula.functionList.BINOMDIST.abstract",
  1929. functionParameter: [
  1930. {
  1931. name: "formula.functionList.BINOMDIST.functionParameter.numberS.name",
  1932. detail: "formula.functionList.BINOMDIST.functionParameter.numberS.detail",
  1933. example: "6",
  1934. require: 1,
  1935. repeat: 0
  1936. },
  1937. {
  1938. name: "formula.functionList.BINOMDIST.functionParameter.trials.name",
  1939. detail: "formula.functionList.BINOMDIST.functionParameter.trials.detail",
  1940. example: "10",
  1941. require: 1,
  1942. repeat: 0
  1943. },
  1944. {
  1945. name: "formula.functionList.BINOMDIST.functionParameter.probabilityS.name",
  1946. detail: "formula.functionList.BINOMDIST.functionParameter.probabilityS.detail",
  1947. example: "0.5",
  1948. require: 1,
  1949. repeat: 0
  1950. },
  1951. {
  1952. name: "formula.functionList.BINOMDIST.functionParameter.cumulative.name",
  1953. detail: "formula.functionList.BINOMDIST.functionParameter.cumulative.detail",
  1954. example: "false",
  1955. require: 1,
  1956. repeat: 0
  1957. }
  1958. ]
  1959. },
  1960. {
  1961. functionName: _.CHIDIST,
  1962. functionType: t.Compatibility,
  1963. description: "formula.functionList.CHIDIST.description",
  1964. abstract: "formula.functionList.CHIDIST.abstract",
  1965. functionParameter: [
  1966. {
  1967. name: "formula.functionList.CHIDIST.functionParameter.x.name",
  1968. detail: "formula.functionList.CHIDIST.functionParameter.x.detail",
  1969. example: "0.5",
  1970. require: 1,
  1971. repeat: 0
  1972. },
  1973. {
  1974. name: "formula.functionList.CHIDIST.functionParameter.degFreedom.name",
  1975. detail: "formula.functionList.CHIDIST.functionParameter.degFreedom.detail",
  1976. example: "1",
  1977. require: 1,
  1978. repeat: 0
  1979. }
  1980. ]
  1981. },
  1982. {
  1983. functionName: _.CHIINV,
  1984. functionType: t.Compatibility,
  1985. description: "formula.functionList.CHIINV.description",
  1986. abstract: "formula.functionList.CHIINV.abstract",
  1987. functionParameter: [
  1988. {
  1989. name: "formula.functionList.CHIINV.functionParameter.probability.name",
  1990. detail: "formula.functionList.CHIINV.functionParameter.probability.detail",
  1991. example: "0.93",
  1992. require: 1,
  1993. repeat: 0
  1994. },
  1995. {
  1996. name: "formula.functionList.CHIINV.functionParameter.degFreedom.name",
  1997. detail: "formula.functionList.CHIINV.functionParameter.degFreedom.detail",
  1998. example: "1",
  1999. require: 1,
  2000. repeat: 0
  2001. }
  2002. ]
  2003. },
  2004. {
  2005. functionName: _.CHITEST,
  2006. functionType: t.Compatibility,
  2007. description: "formula.functionList.CHITEST.description",
  2008. abstract: "formula.functionList.CHITEST.abstract",
  2009. functionParameter: [
  2010. {
  2011. name: "formula.functionList.CHITEST.functionParameter.actualRange.name",
  2012. detail: "formula.functionList.CHITEST.functionParameter.actualRange.detail",
  2013. example: "A1:A4",
  2014. require: 1,
  2015. repeat: 0
  2016. },
  2017. {
  2018. name: "formula.functionList.CHITEST.functionParameter.expectedRange.name",
  2019. detail: "formula.functionList.CHITEST.functionParameter.expectedRange.detail",
  2020. example: "B1:B4",
  2021. require: 1,
  2022. repeat: 0
  2023. }
  2024. ]
  2025. },
  2026. {
  2027. functionName: _.CONFIDENCE,
  2028. functionType: t.Compatibility,
  2029. description: "formula.functionList.CONFIDENCE.description",
  2030. abstract: "formula.functionList.CONFIDENCE.abstract",
  2031. functionParameter: [
  2032. {
  2033. name: "formula.functionList.CONFIDENCE.functionParameter.alpha.name",
  2034. detail: "formula.functionList.CONFIDENCE.functionParameter.alpha.detail",
  2035. example: "0.05",
  2036. require: 1,
  2037. repeat: 0
  2038. },
  2039. {
  2040. name: "formula.functionList.CONFIDENCE.functionParameter.standardDev.name",
  2041. detail: "formula.functionList.CONFIDENCE.functionParameter.standardDev.detail",
  2042. example: "2.5",
  2043. require: 1,
  2044. repeat: 0
  2045. },
  2046. {
  2047. name: "formula.functionList.CONFIDENCE.functionParameter.size.name",
  2048. detail: "formula.functionList.CONFIDENCE.functionParameter.size.detail",
  2049. example: "50",
  2050. require: 1,
  2051. repeat: 0
  2052. }
  2053. ]
  2054. },
  2055. {
  2056. functionName: _.COVAR,
  2057. functionType: t.Compatibility,
  2058. description: "formula.functionList.COVAR.description",
  2059. abstract: "formula.functionList.COVAR.abstract",
  2060. functionParameter: [
  2061. {
  2062. name: "formula.functionList.COVAR.functionParameter.array1.name",
  2063. detail: "formula.functionList.COVAR.functionParameter.array1.detail",
  2064. example: "A1:A4",
  2065. require: 1,
  2066. repeat: 0
  2067. },
  2068. {
  2069. name: "formula.functionList.COVAR.functionParameter.array2.name",
  2070. detail: "formula.functionList.COVAR.functionParameter.array2.detail",
  2071. example: "B1:B4",
  2072. require: 1,
  2073. repeat: 0
  2074. }
  2075. ]
  2076. },
  2077. {
  2078. functionName: _.CRITBINOM,
  2079. functionType: t.Compatibility,
  2080. description: "formula.functionList.CRITBINOM.description",
  2081. abstract: "formula.functionList.CRITBINOM.abstract",
  2082. functionParameter: [
  2083. {
  2084. name: "formula.functionList.CRITBINOM.functionParameter.trials.name",
  2085. detail: "formula.functionList.CRITBINOM.functionParameter.trials.detail",
  2086. example: "6",
  2087. require: 1,
  2088. repeat: 0
  2089. },
  2090. {
  2091. name: "formula.functionList.CRITBINOM.functionParameter.probabilityS.name",
  2092. detail: "formula.functionList.CRITBINOM.functionParameter.probabilityS.detail",
  2093. example: "0.5",
  2094. require: 1,
  2095. repeat: 0
  2096. },
  2097. {
  2098. name: "formula.functionList.CRITBINOM.functionParameter.alpha.name",
  2099. detail: "formula.functionList.CRITBINOM.functionParameter.alpha.detail",
  2100. example: "0.75",
  2101. require: 1,
  2102. repeat: 0
  2103. }
  2104. ]
  2105. },
  2106. {
  2107. functionName: _.EXPONDIST,
  2108. functionType: t.Compatibility,
  2109. description: "formula.functionList.EXPONDIST.description",
  2110. abstract: "formula.functionList.EXPONDIST.abstract",
  2111. functionParameter: [
  2112. {
  2113. name: "formula.functionList.EXPONDIST.functionParameter.x.name",
  2114. detail: "formula.functionList.EXPONDIST.functionParameter.x.detail",
  2115. example: "0.2",
  2116. require: 1,
  2117. repeat: 0
  2118. },
  2119. {
  2120. name: "formula.functionList.EXPONDIST.functionParameter.lambda.name",
  2121. detail: "formula.functionList.EXPONDIST.functionParameter.lambda.detail",
  2122. example: "10",
  2123. require: 1,
  2124. repeat: 0
  2125. },
  2126. {
  2127. name: "formula.functionList.EXPONDIST.functionParameter.cumulative.name",
  2128. detail: "formula.functionList.EXPONDIST.functionParameter.cumulative.detail",
  2129. example: "true",
  2130. require: 1,
  2131. repeat: 0
  2132. }
  2133. ]
  2134. },
  2135. {
  2136. functionName: _.FDIST,
  2137. functionType: t.Compatibility,
  2138. description: "formula.functionList.FDIST.description",
  2139. abstract: "formula.functionList.FDIST.abstract",
  2140. functionParameter: [
  2141. {
  2142. name: "formula.functionList.FDIST.functionParameter.x.name",
  2143. detail: "formula.functionList.FDIST.functionParameter.x.detail",
  2144. example: "15.2069",
  2145. require: 1,
  2146. repeat: 0
  2147. },
  2148. {
  2149. name: "formula.functionList.FDIST.functionParameter.degFreedom1.name",
  2150. detail: "formula.functionList.FDIST.functionParameter.degFreedom1.detail",
  2151. example: "6",
  2152. require: 1,
  2153. repeat: 0
  2154. },
  2155. {
  2156. name: "formula.functionList.FDIST.functionParameter.degFreedom2.name",
  2157. detail: "formula.functionList.FDIST.functionParameter.degFreedom2.detail",
  2158. example: "4",
  2159. require: 1,
  2160. repeat: 0
  2161. }
  2162. ]
  2163. },
  2164. {
  2165. functionName: _.FINV,
  2166. functionType: t.Compatibility,
  2167. description: "formula.functionList.FINV.description",
  2168. abstract: "formula.functionList.FINV.abstract",
  2169. functionParameter: [
  2170. {
  2171. name: "formula.functionList.FINV.functionParameter.probability.name",
  2172. detail: "formula.functionList.FINV.functionParameter.probability.detail",
  2173. example: "0.01",
  2174. require: 1,
  2175. repeat: 0
  2176. },
  2177. {
  2178. name: "formula.functionList.FINV.functionParameter.degFreedom1.name",
  2179. detail: "formula.functionList.FINV.functionParameter.degFreedom1.detail",
  2180. example: "6",
  2181. require: 1,
  2182. repeat: 0
  2183. },
  2184. {
  2185. name: "formula.functionList.FINV.functionParameter.degFreedom2.name",
  2186. detail: "formula.functionList.FINV.functionParameter.degFreedom2.detail",
  2187. example: "4",
  2188. require: 1,
  2189. repeat: 0
  2190. }
  2191. ]
  2192. },
  2193. {
  2194. functionName: _.FTEST,
  2195. functionType: t.Compatibility,
  2196. description: "formula.functionList.FTEST.description",
  2197. abstract: "formula.functionList.FTEST.abstract",
  2198. functionParameter: [
  2199. {
  2200. name: "formula.functionList.FTEST.functionParameter.array1.name",
  2201. detail: "formula.functionList.FTEST.functionParameter.array1.detail",
  2202. example: "A1:A4",
  2203. require: 1,
  2204. repeat: 0
  2205. },
  2206. {
  2207. name: "formula.functionList.FTEST.functionParameter.array2.name",
  2208. detail: "formula.functionList.FTEST.functionParameter.array2.detail",
  2209. example: "B1:B4",
  2210. require: 1,
  2211. repeat: 0
  2212. }
  2213. ]
  2214. },
  2215. {
  2216. functionName: _.GAMMADIST,
  2217. functionType: t.Compatibility,
  2218. description: "formula.functionList.GAMMADIST.description",
  2219. abstract: "formula.functionList.GAMMADIST.abstract",
  2220. functionParameter: [
  2221. {
  2222. name: "formula.functionList.GAMMADIST.functionParameter.x.name",
  2223. detail: "formula.functionList.GAMMADIST.functionParameter.x.detail",
  2224. example: "10",
  2225. require: 1,
  2226. repeat: 0
  2227. },
  2228. {
  2229. name: "formula.functionList.GAMMADIST.functionParameter.alpha.name",
  2230. detail: "formula.functionList.GAMMADIST.functionParameter.alpha.detail",
  2231. example: "8",
  2232. require: 1,
  2233. repeat: 0
  2234. },
  2235. {
  2236. name: "formula.functionList.GAMMADIST.functionParameter.beta.name",
  2237. detail: "formula.functionList.GAMMADIST.functionParameter.beta.detail",
  2238. example: "2",
  2239. require: 1,
  2240. repeat: 0
  2241. },
  2242. {
  2243. name: "formula.functionList.GAMMADIST.functionParameter.cumulative.name",
  2244. detail: "formula.functionList.GAMMADIST.functionParameter.cumulative.detail",
  2245. example: "true",
  2246. require: 1,
  2247. repeat: 0
  2248. }
  2249. ]
  2250. },
  2251. {
  2252. functionName: _.GAMMAINV,
  2253. functionType: t.Compatibility,
  2254. description: "formula.functionList.GAMMAINV.description",
  2255. abstract: "formula.functionList.GAMMAINV.abstract",
  2256. functionParameter: [
  2257. {
  2258. name: "formula.functionList.GAMMAINV.functionParameter.probability.name",
  2259. detail: "formula.functionList.GAMMAINV.functionParameter.probability.detail",
  2260. example: "0.068094",
  2261. require: 1,
  2262. repeat: 0
  2263. },
  2264. {
  2265. name: "formula.functionList.GAMMAINV.functionParameter.alpha.name",
  2266. detail: "formula.functionList.GAMMAINV.functionParameter.alpha.detail",
  2267. example: "9",
  2268. require: 1,
  2269. repeat: 0
  2270. },
  2271. {
  2272. name: "formula.functionList.GAMMAINV.functionParameter.beta.name",
  2273. detail: "formula.functionList.GAMMAINV.functionParameter.beta.detail",
  2274. example: "2",
  2275. require: 1,
  2276. repeat: 0
  2277. }
  2278. ]
  2279. },
  2280. {
  2281. functionName: _.HYPGEOMDIST,
  2282. functionType: t.Compatibility,
  2283. description: "formula.functionList.HYPGEOMDIST.description",
  2284. abstract: "formula.functionList.HYPGEOMDIST.abstract",
  2285. functionParameter: [
  2286. {
  2287. name: "formula.functionList.HYPGEOMDIST.functionParameter.sampleS.name",
  2288. detail: "formula.functionList.HYPGEOMDIST.functionParameter.sampleS.detail",
  2289. example: "1",
  2290. require: 1,
  2291. repeat: 0
  2292. },
  2293. {
  2294. name: "formula.functionList.HYPGEOMDIST.functionParameter.numberSample.name",
  2295. detail: "formula.functionList.HYPGEOMDIST.functionParameter.numberSample.detail",
  2296. example: "4",
  2297. require: 1,
  2298. repeat: 0
  2299. },
  2300. {
  2301. name: "formula.functionList.HYPGEOMDIST.functionParameter.populationS.name",
  2302. detail: "formula.functionList.HYPGEOMDIST.functionParameter.populationS.detail",
  2303. example: "8",
  2304. require: 1,
  2305. repeat: 0
  2306. },
  2307. {
  2308. name: "formula.functionList.HYPGEOMDIST.functionParameter.numberPop.name",
  2309. detail: "formula.functionList.HYPGEOMDIST.functionParameter.numberPop.detail",
  2310. example: "20",
  2311. require: 1,
  2312. repeat: 0
  2313. }
  2314. ]
  2315. },
  2316. {
  2317. functionName: _.LOGINV,
  2318. functionType: t.Compatibility,
  2319. description: "formula.functionList.LOGINV.description",
  2320. abstract: "formula.functionList.LOGINV.abstract",
  2321. functionParameter: [
  2322. {
  2323. name: "formula.functionList.LOGINV.functionParameter.probability.name",
  2324. detail: "formula.functionList.LOGINV.functionParameter.probability.detail",
  2325. example: "0.908789",
  2326. require: 1,
  2327. repeat: 0
  2328. },
  2329. {
  2330. name: "formula.functionList.LOGINV.functionParameter.mean.name",
  2331. detail: "formula.functionList.LOGINV.functionParameter.mean.detail",
  2332. example: "40",
  2333. require: 1,
  2334. repeat: 0
  2335. },
  2336. {
  2337. name: "formula.functionList.LOGINV.functionParameter.standardDev.name",
  2338. detail: "formula.functionList.LOGINV.functionParameter.standardDev.detail",
  2339. example: "1.5",
  2340. require: 1,
  2341. repeat: 0
  2342. }
  2343. ]
  2344. },
  2345. {
  2346. functionName: _.LOGNORMDIST,
  2347. functionType: t.Compatibility,
  2348. description: "formula.functionList.LOGNORMDIST.description",
  2349. abstract: "formula.functionList.LOGNORMDIST.abstract",
  2350. functionParameter: [
  2351. {
  2352. name: "formula.functionList.LOGNORMDIST.functionParameter.x.name",
  2353. detail: "formula.functionList.LOGNORMDIST.functionParameter.x.detail",
  2354. example: "42",
  2355. require: 1,
  2356. repeat: 0
  2357. },
  2358. {
  2359. name: "formula.functionList.LOGNORMDIST.functionParameter.mean.name",
  2360. detail: "formula.functionList.LOGNORMDIST.functionParameter.mean.detail",
  2361. example: "40",
  2362. require: 1,
  2363. repeat: 0
  2364. },
  2365. {
  2366. name: "formula.functionList.LOGNORMDIST.functionParameter.standardDev.name",
  2367. detail: "formula.functionList.LOGNORMDIST.functionParameter.standardDev.detail",
  2368. example: "1.5",
  2369. require: 1,
  2370. repeat: 0
  2371. }
  2372. ]
  2373. },
  2374. {
  2375. functionName: _.MODE,
  2376. functionType: t.Compatibility,
  2377. description: "formula.functionList.MODE.description",
  2378. abstract: "formula.functionList.MODE.abstract",
  2379. functionParameter: [
  2380. {
  2381. name: "formula.functionList.MODE.functionParameter.number1.name",
  2382. detail: "formula.functionList.MODE.functionParameter.number1.detail",
  2383. example: "A1:A4",
  2384. require: 1,
  2385. repeat: 0
  2386. },
  2387. {
  2388. name: "formula.functionList.MODE.functionParameter.number2.name",
  2389. detail: "formula.functionList.MODE.functionParameter.number2.detail",
  2390. example: "2",
  2391. require: 0,
  2392. repeat: 1
  2393. }
  2394. ]
  2395. },
  2396. {
  2397. functionName: _.NEGBINOMDIST,
  2398. functionType: t.Compatibility,
  2399. description: "formula.functionList.NEGBINOMDIST.description",
  2400. abstract: "formula.functionList.NEGBINOMDIST.abstract",
  2401. functionParameter: [
  2402. {
  2403. name: "formula.functionList.NEGBINOMDIST.functionParameter.numberF.name",
  2404. detail: "formula.functionList.NEGBINOMDIST.functionParameter.numberF.detail",
  2405. example: "10",
  2406. require: 1,
  2407. repeat: 0
  2408. },
  2409. {
  2410. name: "formula.functionList.NEGBINOMDIST.functionParameter.numberS.name",
  2411. detail: "formula.functionList.NEGBINOMDIST.functionParameter.numberS.detail",
  2412. example: "5",
  2413. require: 1,
  2414. repeat: 0
  2415. },
  2416. {
  2417. name: "formula.functionList.NEGBINOMDIST.functionParameter.probabilityS.name",
  2418. detail: "formula.functionList.NEGBINOMDIST.functionParameter.probabilityS.detail",
  2419. example: "0.25",
  2420. require: 1,
  2421. repeat: 0
  2422. }
  2423. ]
  2424. },
  2425. {
  2426. functionName: _.NORMDIST,
  2427. functionType: t.Compatibility,
  2428. description: "formula.functionList.NORMDIST.description",
  2429. abstract: "formula.functionList.NORMDIST.abstract",
  2430. functionParameter: [
  2431. {
  2432. name: "formula.functionList.NORMDIST.functionParameter.x.name",
  2433. detail: "formula.functionList.NORMDIST.functionParameter.x.detail",
  2434. example: "42",
  2435. require: 1,
  2436. repeat: 0
  2437. },
  2438. {
  2439. name: "formula.functionList.NORMDIST.functionParameter.mean.name",
  2440. detail: "formula.functionList.NORMDIST.functionParameter.mean.detail",
  2441. example: "40",
  2442. require: 1,
  2443. repeat: 0
  2444. },
  2445. {
  2446. name: "formula.functionList.NORMDIST.functionParameter.standardDev.name",
  2447. detail: "formula.functionList.NORMDIST.functionParameter.standardDev.detail",
  2448. example: "1.5",
  2449. require: 1,
  2450. repeat: 0
  2451. },
  2452. {
  2453. name: "formula.functionList.NORMDIST.functionParameter.cumulative.name",
  2454. detail: "formula.functionList.NORMDIST.functionParameter.cumulative.detail",
  2455. example: "true",
  2456. require: 1,
  2457. repeat: 0
  2458. }
  2459. ]
  2460. },
  2461. {
  2462. functionName: _.NORMINV,
  2463. functionType: t.Compatibility,
  2464. description: "formula.functionList.NORMINV.description",
  2465. abstract: "formula.functionList.NORMINV.abstract",
  2466. functionParameter: [
  2467. {
  2468. name: "formula.functionList.NORMINV.functionParameter.probability.name",
  2469. detail: "formula.functionList.NORMINV.functionParameter.probability.detail",
  2470. example: "0.908789",
  2471. require: 1,
  2472. repeat: 0
  2473. },
  2474. {
  2475. name: "formula.functionList.NORMINV.functionParameter.mean.name",
  2476. detail: "formula.functionList.NORMINV.functionParameter.mean.detail",
  2477. example: "40",
  2478. require: 1,
  2479. repeat: 0
  2480. },
  2481. {
  2482. name: "formula.functionList.NORMINV.functionParameter.standardDev.name",
  2483. detail: "formula.functionList.NORMINV.functionParameter.standardDev.detail",
  2484. example: "1.5",
  2485. require: 1,
  2486. repeat: 0
  2487. }
  2488. ]
  2489. },
  2490. {
  2491. functionName: _.NORMSDIST,
  2492. functionType: t.Compatibility,
  2493. description: "formula.functionList.NORMSDIST.description",
  2494. abstract: "formula.functionList.NORMSDIST.abstract",
  2495. functionParameter: [
  2496. {
  2497. name: "formula.functionList.NORMSDIST.functionParameter.z.name",
  2498. detail: "formula.functionList.NORMSDIST.functionParameter.z.detail",
  2499. example: "1.333333",
  2500. require: 1,
  2501. repeat: 0
  2502. }
  2503. ]
  2504. },
  2505. {
  2506. functionName: _.NORMSINV,
  2507. functionType: t.Compatibility,
  2508. description: "formula.functionList.NORMSINV.description",
  2509. abstract: "formula.functionList.NORMSINV.abstract",
  2510. functionParameter: [
  2511. {
  2512. name: "formula.functionList.NORMSINV.functionParameter.probability.name",
  2513. detail: "formula.functionList.NORMSINV.functionParameter.probability.detail",
  2514. example: "0.908789",
  2515. require: 1,
  2516. repeat: 0
  2517. }
  2518. ]
  2519. },
  2520. {
  2521. functionName: _.PERCENTILE,
  2522. functionType: t.Compatibility,
  2523. description: "formula.functionList.PERCENTILE.description",
  2524. abstract: "formula.functionList.PERCENTILE.abstract",
  2525. functionParameter: [
  2526. {
  2527. name: "formula.functionList.PERCENTILE.functionParameter.array.name",
  2528. detail: "formula.functionList.PERCENTILE.functionParameter.array.detail",
  2529. example: "A1:A4",
  2530. require: 1,
  2531. repeat: 0
  2532. },
  2533. {
  2534. name: "formula.functionList.PERCENTILE.functionParameter.k.name",
  2535. detail: "formula.functionList.PERCENTILE.functionParameter.k.detail",
  2536. example: "0.3",
  2537. require: 1,
  2538. repeat: 0
  2539. }
  2540. ]
  2541. },
  2542. {
  2543. functionName: _.PERCENTRANK,
  2544. functionType: t.Compatibility,
  2545. description: "formula.functionList.PERCENTRANK.description",
  2546. abstract: "formula.functionList.PERCENTRANK.abstract",
  2547. functionParameter: [
  2548. {
  2549. name: "formula.functionList.PERCENTRANK.functionParameter.array.name",
  2550. detail: "formula.functionList.PERCENTRANK.functionParameter.array.detail",
  2551. example: "A1:A4",
  2552. require: 1,
  2553. repeat: 0
  2554. },
  2555. {
  2556. name: "formula.functionList.PERCENTRANK.functionParameter.x.name",
  2557. detail: "formula.functionList.PERCENTRANK.functionParameter.x.detail",
  2558. example: "1.5",
  2559. require: 1,
  2560. repeat: 0
  2561. },
  2562. {
  2563. name: "formula.functionList.PERCENTRANK.functionParameter.significance.name",
  2564. detail: "formula.functionList.PERCENTRANK.functionParameter.significance.detail",
  2565. example: "3",
  2566. require: 0,
  2567. repeat: 0
  2568. }
  2569. ]
  2570. },
  2571. {
  2572. functionName: _.POISSON,
  2573. functionType: t.Compatibility,
  2574. description: "formula.functionList.POISSON.description",
  2575. abstract: "formula.functionList.POISSON.abstract",
  2576. functionParameter: [
  2577. {
  2578. name: "formula.functionList.POISSON.functionParameter.x.name",
  2579. detail: "formula.functionList.POISSON.functionParameter.x.detail",
  2580. example: "2",
  2581. require: 1,
  2582. repeat: 0
  2583. },
  2584. {
  2585. name: "formula.functionList.POISSON.functionParameter.mean.name",
  2586. detail: "formula.functionList.POISSON.functionParameter.mean.detail",
  2587. example: "5",
  2588. require: 1,
  2589. repeat: 0
  2590. },
  2591. {
  2592. name: "formula.functionList.POISSON.functionParameter.cumulative.name",
  2593. detail: "formula.functionList.POISSON.functionParameter.cumulative.detail",
  2594. example: "true",
  2595. require: 1,
  2596. repeat: 0
  2597. }
  2598. ]
  2599. },
  2600. {
  2601. functionName: _.QUARTILE,
  2602. functionType: t.Compatibility,
  2603. description: "formula.functionList.QUARTILE.description",
  2604. abstract: "formula.functionList.QUARTILE.abstract",
  2605. functionParameter: [
  2606. {
  2607. name: "formula.functionList.QUARTILE.functionParameter.array.name",
  2608. detail: "formula.functionList.QUARTILE.functionParameter.array.detail",
  2609. example: "A1:A4",
  2610. require: 1,
  2611. repeat: 0
  2612. },
  2613. {
  2614. name: "formula.functionList.QUARTILE.functionParameter.quart.name",
  2615. detail: "formula.functionList.QUARTILE.functionParameter.quart.detail",
  2616. example: "1",
  2617. require: 1,
  2618. repeat: 0
  2619. }
  2620. ]
  2621. },
  2622. {
  2623. functionName: _.RANK,
  2624. functionType: t.Compatibility,
  2625. description: "formula.functionList.RANK.description",
  2626. abstract: "formula.functionList.RANK.abstract",
  2627. functionParameter: [
  2628. {
  2629. name: "formula.functionList.RANK.functionParameter.number.name",
  2630. detail: "formula.functionList.RANK.functionParameter.number.detail",
  2631. example: "A3",
  2632. require: 1,
  2633. repeat: 0
  2634. },
  2635. {
  2636. name: "formula.functionList.RANK.functionParameter.ref.name",
  2637. detail: "formula.functionList.RANK.functionParameter.ref.detail",
  2638. example: "A2:A6",
  2639. require: 1,
  2640. repeat: 0
  2641. },
  2642. {
  2643. name: "formula.functionList.RANK.functionParameter.order.name",
  2644. detail: "formula.functionList.RANK.functionParameter.order.detail",
  2645. example: "1",
  2646. require: 0,
  2647. repeat: 0
  2648. }
  2649. ]
  2650. },
  2651. {
  2652. functionName: _.STDEV,
  2653. functionType: t.Compatibility,
  2654. description: "formula.functionList.STDEV.description",
  2655. abstract: "formula.functionList.STDEV.abstract",
  2656. functionParameter: [
  2657. {
  2658. name: "formula.functionList.STDEV.functionParameter.number1.name",
  2659. detail: "formula.functionList.STDEV.functionParameter.number1.detail",
  2660. example: "1",
  2661. require: 1,
  2662. repeat: 0
  2663. },
  2664. {
  2665. name: "formula.functionList.STDEV.functionParameter.number2.name",
  2666. detail: "formula.functionList.STDEV.functionParameter.number2.detail",
  2667. example: "2",
  2668. require: 0,
  2669. repeat: 1
  2670. }
  2671. ]
  2672. },
  2673. {
  2674. functionName: _.STDEVP,
  2675. functionType: t.Compatibility,
  2676. description: "formula.functionList.STDEVP.description",
  2677. abstract: "formula.functionList.STDEVP.abstract",
  2678. functionParameter: [
  2679. {
  2680. name: "formula.functionList.STDEVP.functionParameter.number1.name",
  2681. detail: "formula.functionList.STDEVP.functionParameter.number1.detail",
  2682. example: "1",
  2683. require: 1,
  2684. repeat: 0
  2685. },
  2686. {
  2687. name: "formula.functionList.STDEVP.functionParameter.number2.name",
  2688. detail: "formula.functionList.STDEVP.functionParameter.number2.detail",
  2689. example: "2",
  2690. require: 0,
  2691. repeat: 1
  2692. }
  2693. ]
  2694. },
  2695. {
  2696. functionName: _.TDIST,
  2697. functionType: t.Compatibility,
  2698. description: "formula.functionList.TDIST.description",
  2699. abstract: "formula.functionList.TDIST.abstract",
  2700. functionParameter: [
  2701. {
  2702. name: "formula.functionList.TDIST.functionParameter.x.name",
  2703. detail: "formula.functionList.TDIST.functionParameter.x.detail",
  2704. example: "8",
  2705. require: 1,
  2706. repeat: 0
  2707. },
  2708. {
  2709. name: "formula.functionList.TDIST.functionParameter.degFreedom.name",
  2710. detail: "formula.functionList.TDIST.functionParameter.degFreedom.detail",
  2711. example: "3",
  2712. require: 1,
  2713. repeat: 0
  2714. },
  2715. {
  2716. name: "formula.functionList.TDIST.functionParameter.tails.name",
  2717. detail: "formula.functionList.TDIST.functionParameter.tails.detail",
  2718. example: "1",
  2719. require: 1,
  2720. repeat: 0
  2721. }
  2722. ]
  2723. },
  2724. {
  2725. functionName: _.TINV,
  2726. functionType: t.Compatibility,
  2727. description: "formula.functionList.TINV.description",
  2728. abstract: "formula.functionList.TINV.abstract",
  2729. functionParameter: [
  2730. {
  2731. name: "formula.functionList.TINV.functionParameter.probability.name",
  2732. detail: "formula.functionList.TINV.functionParameter.probability.detail",
  2733. example: "0.75",
  2734. require: 1,
  2735. repeat: 0
  2736. },
  2737. {
  2738. name: "formula.functionList.TINV.functionParameter.degFreedom.name",
  2739. detail: "formula.functionList.TINV.functionParameter.degFreedom.detail",
  2740. example: "2",
  2741. require: 1,
  2742. repeat: 0
  2743. }
  2744. ]
  2745. },
  2746. {
  2747. functionName: _.TTEST,
  2748. functionType: t.Compatibility,
  2749. description: "formula.functionList.TTEST.description",
  2750. abstract: "formula.functionList.TTEST.abstract",
  2751. functionParameter: [
  2752. {
  2753. name: "formula.functionList.TTEST.functionParameter.array1.name",
  2754. detail: "formula.functionList.TTEST.functionParameter.array1.detail",
  2755. example: "A1:A4",
  2756. require: 1,
  2757. repeat: 0
  2758. },
  2759. {
  2760. name: "formula.functionList.TTEST.functionParameter.array2.name",
  2761. detail: "formula.functionList.TTEST.functionParameter.array2.detail",
  2762. example: "B1:B4",
  2763. require: 1,
  2764. repeat: 0
  2765. },
  2766. {
  2767. name: "formula.functionList.TTEST.functionParameter.tails.name",
  2768. detail: "formula.functionList.TTEST.functionParameter.tails.detail",
  2769. example: "2",
  2770. require: 1,
  2771. repeat: 0
  2772. },
  2773. {
  2774. name: "formula.functionList.TTEST.functionParameter.type.name",
  2775. detail: "formula.functionList.TTEST.functionParameter.type.detail",
  2776. example: "1",
  2777. require: 1,
  2778. repeat: 0
  2779. }
  2780. ]
  2781. },
  2782. {
  2783. functionName: _.VAR,
  2784. functionType: t.Compatibility,
  2785. description: "formula.functionList.VAR.description",
  2786. abstract: "formula.functionList.VAR.abstract",
  2787. functionParameter: [
  2788. {
  2789. name: "formula.functionList.VAR.functionParameter.number1.name",
  2790. detail: "formula.functionList.VAR.functionParameter.number1.detail",
  2791. example: "1",
  2792. require: 1,
  2793. repeat: 0
  2794. },
  2795. {
  2796. name: "formula.functionList.VAR.functionParameter.number2.name",
  2797. detail: "formula.functionList.VAR.functionParameter.number2.detail",
  2798. example: "2",
  2799. require: 0,
  2800. repeat: 1
  2801. }
  2802. ]
  2803. },
  2804. {
  2805. functionName: _.VARP,
  2806. functionType: t.Compatibility,
  2807. description: "formula.functionList.VARP.description",
  2808. abstract: "formula.functionList.VARP.abstract",
  2809. functionParameter: [
  2810. {
  2811. name: "formula.functionList.VARP.functionParameter.number1.name",
  2812. detail: "formula.functionList.VARP.functionParameter.number1.detail",
  2813. example: "1",
  2814. require: 1,
  2815. repeat: 0
  2816. },
  2817. {
  2818. name: "formula.functionList.VARP.functionParameter.number2.name",
  2819. detail: "formula.functionList.VARP.functionParameter.number2.detail",
  2820. example: "2",
  2821. require: 0,
  2822. repeat: 1
  2823. }
  2824. ]
  2825. },
  2826. {
  2827. functionName: _.WEIBULL,
  2828. functionType: t.Compatibility,
  2829. description: "formula.functionList.WEIBULL.description",
  2830. abstract: "formula.functionList.WEIBULL.abstract",
  2831. functionParameter: [
  2832. {
  2833. name: "formula.functionList.WEIBULL.functionParameter.x.name",
  2834. detail: "formula.functionList.WEIBULL.functionParameter.x.detail",
  2835. example: "105",
  2836. require: 1,
  2837. repeat: 0
  2838. },
  2839. {
  2840. name: "formula.functionList.WEIBULL.functionParameter.alpha.name",
  2841. detail: "formula.functionList.WEIBULL.functionParameter.alpha.detail",
  2842. example: "20",
  2843. require: 1,
  2844. repeat: 0
  2845. },
  2846. {
  2847. name: "formula.functionList.WEIBULL.functionParameter.beta.name",
  2848. detail: "formula.functionList.WEIBULL.functionParameter.beta.detail",
  2849. example: "100",
  2850. require: 1,
  2851. repeat: 0
  2852. },
  2853. {
  2854. name: "formula.functionList.WEIBULL.functionParameter.cumulative.name",
  2855. detail: "formula.functionList.WEIBULL.functionParameter.cumulative.detail",
  2856. example: "true",
  2857. require: 1,
  2858. repeat: 0
  2859. }
  2860. ]
  2861. },
  2862. {
  2863. functionName: _.ZTEST,
  2864. functionType: t.Compatibility,
  2865. description: "formula.functionList.ZTEST.description",
  2866. abstract: "formula.functionList.ZTEST.abstract",
  2867. functionParameter: [
  2868. {
  2869. name: "formula.functionList.ZTEST.functionParameter.array.name",
  2870. detail: "formula.functionList.ZTEST.functionParameter.array.detail",
  2871. example: "A2:A11",
  2872. require: 1,
  2873. repeat: 0
  2874. },
  2875. {
  2876. name: "formula.functionList.ZTEST.functionParameter.x.name",
  2877. detail: "formula.functionList.ZTEST.functionParameter.x.detail",
  2878. example: "4",
  2879. require: 1,
  2880. repeat: 0
  2881. },
  2882. {
  2883. name: "formula.functionList.ZTEST.functionParameter.sigma.name",
  2884. detail: "formula.functionList.ZTEST.functionParameter.sigma.detail",
  2885. example: "10",
  2886. require: 0,
  2887. repeat: 0
  2888. }
  2889. ]
  2890. }
  2891. ], Yi = [
  2892. {
  2893. functionName: ce.CUBEKPIMEMBER,
  2894. functionType: t.Cube,
  2895. description: "formula.functionList.CUBEKPIMEMBER.description",
  2896. abstract: "formula.functionList.CUBEKPIMEMBER.abstract",
  2897. functionParameter: [
  2898. {
  2899. name: "formula.functionList.CUBEKPIMEMBER.functionParameter.number1.name",
  2900. detail: "formula.functionList.CUBEKPIMEMBER.functionParameter.number1.detail",
  2901. example: "A1:A20",
  2902. require: 1,
  2903. repeat: 0
  2904. },
  2905. {
  2906. name: "formula.functionList.CUBEKPIMEMBER.functionParameter.number2.name",
  2907. detail: "formula.functionList.CUBEKPIMEMBER.functionParameter.number2.detail",
  2908. example: "A1:A20",
  2909. require: 1,
  2910. repeat: 0
  2911. }
  2912. ]
  2913. },
  2914. {
  2915. functionName: ce.CUBEMEMBER,
  2916. functionType: t.Cube,
  2917. description: "formula.functionList.CUBEMEMBER.description",
  2918. abstract: "formula.functionList.CUBEMEMBER.abstract",
  2919. functionParameter: [
  2920. {
  2921. name: "formula.functionList.CUBEMEMBER.functionParameter.number1.name",
  2922. detail: "formula.functionList.CUBEMEMBER.functionParameter.number1.detail",
  2923. example: "A1:A20",
  2924. require: 1,
  2925. repeat: 0
  2926. },
  2927. {
  2928. name: "formula.functionList.CUBEMEMBER.functionParameter.number2.name",
  2929. detail: "formula.functionList.CUBEMEMBER.functionParameter.number2.detail",
  2930. example: "A1:A20",
  2931. require: 1,
  2932. repeat: 0
  2933. }
  2934. ]
  2935. },
  2936. {
  2937. functionName: ce.CUBEMEMBERPROPERTY,
  2938. functionType: t.Cube,
  2939. description: "formula.functionList.CUBEMEMBERPROPERTY.description",
  2940. abstract: "formula.functionList.CUBEMEMBERPROPERTY.abstract",
  2941. functionParameter: [
  2942. {
  2943. name: "formula.functionList.CUBEMEMBERPROPERTY.functionParameter.number1.name",
  2944. detail: "formula.functionList.CUBEMEMBERPROPERTY.functionParameter.number1.detail",
  2945. example: "A1:A20",
  2946. require: 1,
  2947. repeat: 0
  2948. },
  2949. {
  2950. name: "formula.functionList.CUBEMEMBERPROPERTY.functionParameter.number2.name",
  2951. detail: "formula.functionList.CUBEMEMBERPROPERTY.functionParameter.number2.detail",
  2952. example: "A1:A20",
  2953. require: 1,
  2954. repeat: 0
  2955. }
  2956. ]
  2957. },
  2958. {
  2959. functionName: ce.CUBERANKEDMEMBER,
  2960. functionType: t.Cube,
  2961. description: "formula.functionList.CUBERANKEDMEMBER.description",
  2962. abstract: "formula.functionList.CUBERANKEDMEMBER.abstract",
  2963. functionParameter: [
  2964. {
  2965. name: "formula.functionList.CUBERANKEDMEMBER.functionParameter.number1.name",
  2966. detail: "formula.functionList.CUBERANKEDMEMBER.functionParameter.number1.detail",
  2967. example: "A1:A20",
  2968. require: 1,
  2969. repeat: 0
  2970. },
  2971. {
  2972. name: "formula.functionList.CUBERANKEDMEMBER.functionParameter.number2.name",
  2973. detail: "formula.functionList.CUBERANKEDMEMBER.functionParameter.number2.detail",
  2974. example: "A1:A20",
  2975. require: 1,
  2976. repeat: 0
  2977. }
  2978. ]
  2979. },
  2980. {
  2981. functionName: ce.CUBESET,
  2982. functionType: t.Cube,
  2983. description: "formula.functionList.CUBESET.description",
  2984. abstract: "formula.functionList.CUBESET.abstract",
  2985. functionParameter: [
  2986. {
  2987. name: "formula.functionList.CUBESET.functionParameter.number1.name",
  2988. detail: "formula.functionList.CUBESET.functionParameter.number1.detail",
  2989. example: "A1:A20",
  2990. require: 1,
  2991. repeat: 0
  2992. },
  2993. {
  2994. name: "formula.functionList.CUBESET.functionParameter.number2.name",
  2995. detail: "formula.functionList.CUBESET.functionParameter.number2.detail",
  2996. example: "A1:A20",
  2997. require: 1,
  2998. repeat: 0
  2999. }
  3000. ]
  3001. },
  3002. {
  3003. functionName: ce.CUBESETCOUNT,
  3004. functionType: t.Cube,
  3005. description: "formula.functionList.CUBESETCOUNT.description",
  3006. abstract: "formula.functionList.CUBESETCOUNT.abstract",
  3007. functionParameter: [
  3008. {
  3009. name: "formula.functionList.CUBESETCOUNT.functionParameter.number1.name",
  3010. detail: "formula.functionList.CUBESETCOUNT.functionParameter.number1.detail",
  3011. example: "A1:A20",
  3012. require: 1,
  3013. repeat: 0
  3014. },
  3015. {
  3016. name: "formula.functionList.CUBESETCOUNT.functionParameter.number2.name",
  3017. detail: "formula.functionList.CUBESETCOUNT.functionParameter.number2.detail",
  3018. example: "A1:A20",
  3019. require: 1,
  3020. repeat: 0
  3021. }
  3022. ]
  3023. },
  3024. {
  3025. functionName: ce.CUBEVALUE,
  3026. functionType: t.Cube,
  3027. description: "formula.functionList.CUBEVALUE.description",
  3028. abstract: "formula.functionList.CUBEVALUE.abstract",
  3029. functionParameter: [
  3030. {
  3031. name: "formula.functionList.CUBEVALUE.functionParameter.number1.name",
  3032. detail: "formula.functionList.CUBEVALUE.functionParameter.number1.detail",
  3033. example: "A1:A20",
  3034. require: 1,
  3035. repeat: 0
  3036. },
  3037. {
  3038. name: "formula.functionList.CUBEVALUE.functionParameter.number2.name",
  3039. detail: "formula.functionList.CUBEVALUE.functionParameter.number2.detail",
  3040. example: "A1:A20",
  3041. require: 1,
  3042. repeat: 0
  3043. }
  3044. ]
  3045. }
  3046. ], wi = [
  3047. {
  3048. functionName: $.DAVERAGE,
  3049. functionType: t.Database,
  3050. description: "formula.functionList.DAVERAGE.description",
  3051. abstract: "formula.functionList.DAVERAGE.abstract",
  3052. functionParameter: [
  3053. {
  3054. name: "formula.functionList.DAVERAGE.functionParameter.database.name",
  3055. detail: "formula.functionList.DAVERAGE.functionParameter.database.detail",
  3056. example: "A4:E10",
  3057. require: 1,
  3058. repeat: 0
  3059. },
  3060. {
  3061. name: "formula.functionList.DAVERAGE.functionParameter.field.name",
  3062. detail: "formula.functionList.DAVERAGE.functionParameter.field.detail",
  3063. example: "D4",
  3064. require: 1,
  3065. repeat: 0
  3066. },
  3067. {
  3068. name: "formula.functionList.DAVERAGE.functionParameter.criteria.name",
  3069. detail: "formula.functionList.DAVERAGE.functionParameter.criteria.detail",
  3070. example: "A1:B2",
  3071. require: 1,
  3072. repeat: 0
  3073. }
  3074. ]
  3075. },
  3076. {
  3077. functionName: $.DCOUNT,
  3078. functionType: t.Database,
  3079. description: "formula.functionList.DCOUNT.description",
  3080. abstract: "formula.functionList.DCOUNT.abstract",
  3081. functionParameter: [
  3082. {
  3083. name: "formula.functionList.DCOUNT.functionParameter.database.name",
  3084. detail: "formula.functionList.DCOUNT.functionParameter.database.detail",
  3085. example: "A4:E10",
  3086. require: 1,
  3087. repeat: 0
  3088. },
  3089. {
  3090. name: "formula.functionList.DCOUNT.functionParameter.field.name",
  3091. detail: "formula.functionList.DCOUNT.functionParameter.field.detail",
  3092. example: "D4",
  3093. require: 1,
  3094. repeat: 0
  3095. },
  3096. {
  3097. name: "formula.functionList.DCOUNT.functionParameter.criteria.name",
  3098. detail: "formula.functionList.DCOUNT.functionParameter.criteria.detail",
  3099. example: "A1:B2",
  3100. require: 1,
  3101. repeat: 0
  3102. }
  3103. ]
  3104. },
  3105. {
  3106. functionName: $.DCOUNTA,
  3107. functionType: t.Database,
  3108. description: "formula.functionList.DCOUNTA.description",
  3109. abstract: "formula.functionList.DCOUNTA.abstract",
  3110. functionParameter: [
  3111. {
  3112. name: "formula.functionList.DCOUNTA.functionParameter.database.name",
  3113. detail: "formula.functionList.DCOUNTA.functionParameter.database.detail",
  3114. example: "A4:E10",
  3115. require: 1,
  3116. repeat: 0
  3117. },
  3118. {
  3119. name: "formula.functionList.DCOUNTA.functionParameter.field.name",
  3120. detail: "formula.functionList.DCOUNTA.functionParameter.field.detail",
  3121. example: "D4",
  3122. require: 1,
  3123. repeat: 0
  3124. },
  3125. {
  3126. name: "formula.functionList.DCOUNTA.functionParameter.criteria.name",
  3127. detail: "formula.functionList.DCOUNTA.functionParameter.criteria.detail",
  3128. example: "A1:B2",
  3129. require: 1,
  3130. repeat: 0
  3131. }
  3132. ]
  3133. },
  3134. {
  3135. functionName: $.DGET,
  3136. functionType: t.Database,
  3137. description: "formula.functionList.DGET.description",
  3138. abstract: "formula.functionList.DGET.abstract",
  3139. functionParameter: [
  3140. {
  3141. name: "formula.functionList.DGET.functionParameter.database.name",
  3142. detail: "formula.functionList.DGET.functionParameter.database.detail",
  3143. example: "A4:E10",
  3144. require: 1,
  3145. repeat: 0
  3146. },
  3147. {
  3148. name: "formula.functionList.DGET.functionParameter.field.name",
  3149. detail: "formula.functionList.DGET.functionParameter.field.detail",
  3150. example: "D4",
  3151. require: 1,
  3152. repeat: 0
  3153. },
  3154. {
  3155. name: "formula.functionList.DGET.functionParameter.criteria.name",
  3156. detail: "formula.functionList.DGET.functionParameter.criteria.detail",
  3157. example: "A1:B2",
  3158. require: 1,
  3159. repeat: 0
  3160. }
  3161. ]
  3162. },
  3163. {
  3164. functionName: $.DMAX,
  3165. functionType: t.Database,
  3166. description: "formula.functionList.DMAX.description",
  3167. abstract: "formula.functionList.DMAX.abstract",
  3168. functionParameter: [
  3169. {
  3170. name: "formula.functionList.DMAX.functionParameter.database.name",
  3171. detail: "formula.functionList.DMAX.functionParameter.database.detail",
  3172. example: "A4:E10",
  3173. require: 1,
  3174. repeat: 0
  3175. },
  3176. {
  3177. name: "formula.functionList.DMAX.functionParameter.field.name",
  3178. detail: "formula.functionList.DMAX.functionParameter.field.detail",
  3179. example: "D4",
  3180. require: 1,
  3181. repeat: 0
  3182. },
  3183. {
  3184. name: "formula.functionList.DMAX.functionParameter.criteria.name",
  3185. detail: "formula.functionList.DMAX.functionParameter.criteria.detail",
  3186. example: "A1:B2",
  3187. require: 1,
  3188. repeat: 0
  3189. }
  3190. ]
  3191. },
  3192. {
  3193. functionName: $.DMIN,
  3194. functionType: t.Database,
  3195. description: "formula.functionList.DMIN.description",
  3196. abstract: "formula.functionList.DMIN.abstract",
  3197. functionParameter: [
  3198. {
  3199. name: "formula.functionList.DMIN.functionParameter.database.name",
  3200. detail: "formula.functionList.DMIN.functionParameter.database.detail",
  3201. example: "A4:E10",
  3202. require: 1,
  3203. repeat: 0
  3204. },
  3205. {
  3206. name: "formula.functionList.DMIN.functionParameter.field.name",
  3207. detail: "formula.functionList.DMIN.functionParameter.field.detail",
  3208. example: "D4",
  3209. require: 1,
  3210. repeat: 0
  3211. },
  3212. {
  3213. name: "formula.functionList.DMIN.functionParameter.criteria.name",
  3214. detail: "formula.functionList.DMIN.functionParameter.criteria.detail",
  3215. example: "A1:B2",
  3216. require: 1,
  3217. repeat: 0
  3218. }
  3219. ]
  3220. },
  3221. {
  3222. functionName: $.DPRODUCT,
  3223. functionType: t.Database,
  3224. description: "formula.functionList.DPRODUCT.description",
  3225. abstract: "formula.functionList.DPRODUCT.abstract",
  3226. functionParameter: [
  3227. {
  3228. name: "formula.functionList.DPRODUCT.functionParameter.database.name",
  3229. detail: "formula.functionList.DPRODUCT.functionParameter.database.detail",
  3230. example: "A4:E10",
  3231. require: 1,
  3232. repeat: 0
  3233. },
  3234. {
  3235. name: "formula.functionList.DPRODUCT.functionParameter.field.name",
  3236. detail: "formula.functionList.DPRODUCT.functionParameter.field.detail",
  3237. example: "D4",
  3238. require: 1,
  3239. repeat: 0
  3240. },
  3241. {
  3242. name: "formula.functionList.DPRODUCT.functionParameter.criteria.name",
  3243. detail: "formula.functionList.DPRODUCT.functionParameter.criteria.detail",
  3244. example: "A1:B2",
  3245. require: 1,
  3246. repeat: 0
  3247. }
  3248. ]
  3249. },
  3250. {
  3251. functionName: $.DSTDEV,
  3252. functionType: t.Database,
  3253. description: "formula.functionList.DSTDEV.description",
  3254. abstract: "formula.functionList.DSTDEV.abstract",
  3255. functionParameter: [
  3256. {
  3257. name: "formula.functionList.DSTDEV.functionParameter.database.name",
  3258. detail: "formula.functionList.DSTDEV.functionParameter.database.detail",
  3259. example: "A4:E10",
  3260. require: 1,
  3261. repeat: 0
  3262. },
  3263. {
  3264. name: "formula.functionList.DSTDEV.functionParameter.field.name",
  3265. detail: "formula.functionList.DSTDEV.functionParameter.field.detail",
  3266. example: "D4",
  3267. require: 1,
  3268. repeat: 0
  3269. },
  3270. {
  3271. name: "formula.functionList.DSTDEV.functionParameter.criteria.name",
  3272. detail: "formula.functionList.DSTDEV.functionParameter.criteria.detail",
  3273. example: "A1:B2",
  3274. require: 1,
  3275. repeat: 0
  3276. }
  3277. ]
  3278. },
  3279. {
  3280. functionName: $.DSTDEVP,
  3281. functionType: t.Database,
  3282. description: "formula.functionList.DSTDEVP.description",
  3283. abstract: "formula.functionList.DSTDEVP.abstract",
  3284. functionParameter: [
  3285. {
  3286. name: "formula.functionList.DSTDEVP.functionParameter.database.name",
  3287. detail: "formula.functionList.DSTDEVP.functionParameter.database.detail",
  3288. example: "A4:E10",
  3289. require: 1,
  3290. repeat: 0
  3291. },
  3292. {
  3293. name: "formula.functionList.DSTDEVP.functionParameter.field.name",
  3294. detail: "formula.functionList.DSTDEVP.functionParameter.field.detail",
  3295. example: "D4",
  3296. require: 1,
  3297. repeat: 0
  3298. },
  3299. {
  3300. name: "formula.functionList.DSTDEVP.functionParameter.criteria.name",
  3301. detail: "formula.functionList.DSTDEVP.functionParameter.criteria.detail",
  3302. example: "A1:B2",
  3303. require: 1,
  3304. repeat: 0
  3305. }
  3306. ]
  3307. },
  3308. {
  3309. functionName: $.DSUM,
  3310. functionType: t.Database,
  3311. description: "formula.functionList.DSUM.description",
  3312. abstract: "formula.functionList.DSUM.abstract",
  3313. functionParameter: [
  3314. {
  3315. name: "formula.functionList.DSUM.functionParameter.database.name",
  3316. detail: "formula.functionList.DSUM.functionParameter.database.detail",
  3317. example: "A4:E10",
  3318. require: 1,
  3319. repeat: 0
  3320. },
  3321. {
  3322. name: "formula.functionList.DSUM.functionParameter.field.name",
  3323. detail: "formula.functionList.DSUM.functionParameter.field.detail",
  3324. example: "D4",
  3325. require: 1,
  3326. repeat: 0
  3327. },
  3328. {
  3329. name: "formula.functionList.DSUM.functionParameter.criteria.name",
  3330. detail: "formula.functionList.DSUM.functionParameter.criteria.detail",
  3331. example: "A1:B2",
  3332. require: 1,
  3333. repeat: 0
  3334. }
  3335. ]
  3336. },
  3337. {
  3338. functionName: $.DVAR,
  3339. functionType: t.Database,
  3340. description: "formula.functionList.DVAR.description",
  3341. abstract: "formula.functionList.DVAR.abstract",
  3342. functionParameter: [
  3343. {
  3344. name: "formula.functionList.DVAR.functionParameter.database.name",
  3345. detail: "formula.functionList.DVAR.functionParameter.database.detail",
  3346. example: "A4:E10",
  3347. require: 1,
  3348. repeat: 0
  3349. },
  3350. {
  3351. name: "formula.functionList.DVAR.functionParameter.field.name",
  3352. detail: "formula.functionList.DVAR.functionParameter.field.detail",
  3353. example: "D4",
  3354. require: 1,
  3355. repeat: 0
  3356. },
  3357. {
  3358. name: "formula.functionList.DVAR.functionParameter.criteria.name",
  3359. detail: "formula.functionList.DVAR.functionParameter.criteria.detail",
  3360. example: "A1:B2",
  3361. require: 1,
  3362. repeat: 0
  3363. }
  3364. ]
  3365. },
  3366. {
  3367. functionName: $.DVARP,
  3368. functionType: t.Database,
  3369. description: "formula.functionList.DVARP.description",
  3370. abstract: "formula.functionList.DVARP.abstract",
  3371. functionParameter: [
  3372. {
  3373. name: "formula.functionList.DVARP.functionParameter.database.name",
  3374. detail: "formula.functionList.DVARP.functionParameter.database.detail",
  3375. example: "A4:E10",
  3376. require: 1,
  3377. repeat: 0
  3378. },
  3379. {
  3380. name: "formula.functionList.DVARP.functionParameter.field.name",
  3381. detail: "formula.functionList.DVARP.functionParameter.field.detail",
  3382. example: "D4",
  3383. require: 1,
  3384. repeat: 0
  3385. },
  3386. {
  3387. name: "formula.functionList.DVARP.functionParameter.criteria.name",
  3388. detail: "formula.functionList.DVARP.functionParameter.criteria.detail",
  3389. example: "A1:B2",
  3390. require: 1,
  3391. repeat: 0
  3392. }
  3393. ]
  3394. }
  3395. ], Xi = [
  3396. {
  3397. functionName: B.DATE,
  3398. functionType: t.Date,
  3399. description: "formula.functionList.DATE.description",
  3400. abstract: "formula.functionList.DATE.abstract",
  3401. functionParameter: [
  3402. {
  3403. name: "formula.functionList.DATE.functionParameter.year.name",
  3404. detail: "formula.functionList.DATE.functionParameter.year.detail",
  3405. example: "2024",
  3406. require: 1,
  3407. repeat: 0
  3408. },
  3409. {
  3410. name: "formula.functionList.DATE.functionParameter.month.name",
  3411. detail: "formula.functionList.DATE.functionParameter.month.detail",
  3412. example: "1",
  3413. require: 1,
  3414. repeat: 0
  3415. },
  3416. {
  3417. name: "formula.functionList.DATE.functionParameter.day.name",
  3418. detail: "formula.functionList.DATE.functionParameter.day.detail",
  3419. example: "1",
  3420. require: 1,
  3421. repeat: 0
  3422. }
  3423. ]
  3424. },
  3425. {
  3426. functionName: B.DATEDIF,
  3427. functionType: t.Date,
  3428. description: "formula.functionList.DATEDIF.description",
  3429. abstract: "formula.functionList.DATEDIF.abstract",
  3430. functionParameter: [
  3431. {
  3432. name: "formula.functionList.DATEDIF.functionParameter.startDate.name",
  3433. detail: "formula.functionList.DATEDIF.functionParameter.startDate.detail",
  3434. example: '"2001-6-1"',
  3435. require: 1,
  3436. repeat: 0
  3437. },
  3438. {
  3439. name: "formula.functionList.DATEDIF.functionParameter.endDate.name",
  3440. detail: "formula.functionList.DATEDIF.functionParameter.endDate.detail",
  3441. example: '"2002-8-15"',
  3442. require: 1,
  3443. repeat: 0
  3444. },
  3445. {
  3446. name: "formula.functionList.DATEDIF.functionParameter.method.name",
  3447. detail: "formula.functionList.DATEDIF.functionParameter.method.detail",
  3448. example: '"D"',
  3449. require: 1,
  3450. repeat: 0
  3451. }
  3452. ]
  3453. },
  3454. {
  3455. functionName: B.DATEVALUE,
  3456. functionType: t.Date,
  3457. description: "formula.functionList.DATEVALUE.description",
  3458. abstract: "formula.functionList.DATEVALUE.abstract",
  3459. functionParameter: [
  3460. {
  3461. name: "formula.functionList.DATEVALUE.functionParameter.dateText.name",
  3462. detail: "formula.functionList.DATEVALUE.functionParameter.dateText.detail",
  3463. example: '"2024-8-8"',
  3464. require: 1,
  3465. repeat: 0
  3466. }
  3467. ]
  3468. },
  3469. {
  3470. functionName: B.DAY,
  3471. functionType: t.Date,
  3472. description: "formula.functionList.DAY.description",
  3473. abstract: "formula.functionList.DAY.abstract",
  3474. functionParameter: [
  3475. {
  3476. name: "formula.functionList.DAY.functionParameter.serialNumber.name",
  3477. detail: "formula.functionList.DAY.functionParameter.serialNumber.detail",
  3478. example: '"1969-7-20"',
  3479. require: 1,
  3480. repeat: 0
  3481. }
  3482. ]
  3483. },
  3484. {
  3485. functionName: B.DAYS,
  3486. functionType: t.Date,
  3487. description: "formula.functionList.DAYS.description",
  3488. abstract: "formula.functionList.DAYS.abstract",
  3489. functionParameter: [
  3490. {
  3491. name: "formula.functionList.DAYS.functionParameter.endDate.name",
  3492. detail: "formula.functionList.DAYS.functionParameter.endDate.detail",
  3493. example: '"2021-12-31"',
  3494. require: 1,
  3495. repeat: 0
  3496. },
  3497. {
  3498. name: "formula.functionList.DAYS.functionParameter.startDate.name",
  3499. detail: "formula.functionList.DAYS.functionParameter.startDate.detail",
  3500. example: '"2021-1-1"',
  3501. require: 1,
  3502. repeat: 0
  3503. }
  3504. ]
  3505. },
  3506. {
  3507. functionName: B.DAYS360,
  3508. functionType: t.Date,
  3509. description: "formula.functionList.DAYS360.description",
  3510. abstract: "formula.functionList.DAYS360.abstract",
  3511. functionParameter: [
  3512. {
  3513. name: "formula.functionList.DAYS360.functionParameter.startDate.name",
  3514. detail: "formula.functionList.DAYS360.functionParameter.startDate.detail",
  3515. example: '"2021-1-29"',
  3516. require: 1,
  3517. repeat: 0
  3518. },
  3519. {
  3520. name: "formula.functionList.DAYS360.functionParameter.endDate.name",
  3521. detail: "formula.functionList.DAYS360.functionParameter.endDate.detail",
  3522. example: '"2021-3-31"',
  3523. require: 1,
  3524. repeat: 0
  3525. },
  3526. {
  3527. name: "formula.functionList.DAYS360.functionParameter.method.name",
  3528. detail: "formula.functionList.DAYS360.functionParameter.method.detail",
  3529. example: "1",
  3530. require: 0,
  3531. repeat: 0
  3532. }
  3533. ]
  3534. },
  3535. {
  3536. functionName: B.EDATE,
  3537. functionType: t.Date,
  3538. description: "formula.functionList.EDATE.description",
  3539. abstract: "formula.functionList.EDATE.abstract",
  3540. functionParameter: [
  3541. {
  3542. name: "formula.functionList.EDATE.functionParameter.startDate.name",
  3543. detail: "formula.functionList.EDATE.functionParameter.startDate.detail",
  3544. example: "A1",
  3545. require: 1,
  3546. repeat: 0
  3547. },
  3548. {
  3549. name: "formula.functionList.EDATE.functionParameter.months.name",
  3550. detail: "formula.functionList.EDATE.functionParameter.months.detail",
  3551. example: "1",
  3552. require: 1,
  3553. repeat: 0
  3554. }
  3555. ]
  3556. },
  3557. {
  3558. functionName: B.EOMONTH,
  3559. functionType: t.Date,
  3560. description: "formula.functionList.EOMONTH.description",
  3561. abstract: "formula.functionList.EOMONTH.abstract",
  3562. functionParameter: [
  3563. {
  3564. name: "formula.functionList.EOMONTH.functionParameter.startDate.name",
  3565. detail: "formula.functionList.EOMONTH.functionParameter.startDate.detail",
  3566. example: '"2011-1-1"',
  3567. require: 1,
  3568. repeat: 0
  3569. },
  3570. {
  3571. name: "formula.functionList.EOMONTH.functionParameter.months.name",
  3572. detail: "formula.functionList.EOMONTH.functionParameter.months.detail",
  3573. example: "1",
  3574. require: 1,
  3575. repeat: 0
  3576. }
  3577. ]
  3578. },
  3579. {
  3580. functionName: B.EPOCHTODATE,
  3581. functionType: t.Date,
  3582. description: "formula.functionList.EPOCHTODATE.description",
  3583. abstract: "formula.functionList.EPOCHTODATE.abstract",
  3584. functionParameter: [
  3585. {
  3586. name: "formula.functionList.EPOCHTODATE.functionParameter.timestamp.name",
  3587. detail: "formula.functionList.EPOCHTODATE.functionParameter.timestamp.detail",
  3588. example: "1655906710",
  3589. require: 1,
  3590. repeat: 0
  3591. },
  3592. {
  3593. name: "formula.functionList.EPOCHTODATE.functionParameter.unit.name",
  3594. detail: "formula.functionList.EPOCHTODATE.functionParameter.unit.detail",
  3595. example: "1",
  3596. require: 0,
  3597. repeat: 0
  3598. }
  3599. ]
  3600. },
  3601. {
  3602. functionName: B.HOUR,
  3603. functionType: t.Date,
  3604. description: "formula.functionList.HOUR.description",
  3605. abstract: "formula.functionList.HOUR.abstract",
  3606. functionParameter: [
  3607. {
  3608. name: "formula.functionList.HOUR.functionParameter.serialNumber.name",
  3609. detail: "formula.functionList.HOUR.functionParameter.serialNumber.detail",
  3610. example: '"2011-7-18 7:45"',
  3611. require: 1,
  3612. repeat: 0
  3613. }
  3614. ]
  3615. },
  3616. {
  3617. functionName: B.ISOWEEKNUM,
  3618. functionType: t.Date,
  3619. description: "formula.functionList.ISOWEEKNUM.description",
  3620. abstract: "formula.functionList.ISOWEEKNUM.abstract",
  3621. functionParameter: [
  3622. {
  3623. name: "formula.functionList.ISOWEEKNUM.functionParameter.date.name",
  3624. detail: "formula.functionList.ISOWEEKNUM.functionParameter.date.detail",
  3625. example: '"2012-3-9"',
  3626. require: 1,
  3627. repeat: 0
  3628. }
  3629. ]
  3630. },
  3631. {
  3632. functionName: B.MINUTE,
  3633. functionType: t.Date,
  3634. description: "formula.functionList.MINUTE.description",
  3635. abstract: "formula.functionList.MINUTE.abstract",
  3636. functionParameter: [
  3637. {
  3638. name: "formula.functionList.MINUTE.functionParameter.serialNumber.name",
  3639. detail: "formula.functionList.MINUTE.functionParameter.serialNumber.detail",
  3640. example: '"12:45"',
  3641. require: 1,
  3642. repeat: 0
  3643. }
  3644. ]
  3645. },
  3646. {
  3647. functionName: B.MONTH,
  3648. functionType: t.Date,
  3649. description: "formula.functionList.MONTH.description",
  3650. abstract: "formula.functionList.MONTH.abstract",
  3651. functionParameter: [
  3652. {
  3653. name: "formula.functionList.MONTH.functionParameter.serialNumber.name",
  3654. detail: "formula.functionList.MONTH.functionParameter.serialNumber.detail",
  3655. example: '"1969-7-20"',
  3656. require: 1,
  3657. repeat: 0
  3658. }
  3659. ]
  3660. },
  3661. {
  3662. functionName: B.NETWORKDAYS,
  3663. functionType: t.Date,
  3664. description: "formula.functionList.NETWORKDAYS.description",
  3665. abstract: "formula.functionList.NETWORKDAYS.abstract",
  3666. functionParameter: [
  3667. {
  3668. name: "formula.functionList.NETWORKDAYS.functionParameter.startDate.name",
  3669. detail: "formula.functionList.NETWORKDAYS.functionParameter.startDate.detail",
  3670. example: '"2012-10-1"',
  3671. require: 1,
  3672. repeat: 0
  3673. },
  3674. {
  3675. name: "formula.functionList.NETWORKDAYS.functionParameter.endDate.name",
  3676. detail: "formula.functionList.NETWORKDAYS.functionParameter.endDate.detail",
  3677. example: '"2013-3-1"',
  3678. require: 1,
  3679. repeat: 0
  3680. },
  3681. {
  3682. name: "formula.functionList.NETWORKDAYS.functionParameter.holidays.name",
  3683. detail: "formula.functionList.NETWORKDAYS.functionParameter.holidays.detail",
  3684. example: '"2012-11-22"',
  3685. require: 0,
  3686. repeat: 0
  3687. }
  3688. ]
  3689. },
  3690. {
  3691. functionName: B.NETWORKDAYS_INTL,
  3692. functionType: t.Date,
  3693. description: "formula.functionList.NETWORKDAYS_INTL.description",
  3694. abstract: "formula.functionList.NETWORKDAYS_INTL.abstract",
  3695. functionParameter: [
  3696. {
  3697. name: "formula.functionList.NETWORKDAYS_INTL.functionParameter.startDate.name",
  3698. detail: "formula.functionList.NETWORKDAYS_INTL.functionParameter.startDate.detail",
  3699. example: '"2012-10-1"',
  3700. require: 1,
  3701. repeat: 0
  3702. },
  3703. {
  3704. name: "formula.functionList.NETWORKDAYS_INTL.functionParameter.endDate.name",
  3705. detail: "formula.functionList.NETWORKDAYS_INTL.functionParameter.endDate.detail",
  3706. example: '"2013-3-1"',
  3707. require: 1,
  3708. repeat: 0
  3709. },
  3710. {
  3711. name: "formula.functionList.NETWORKDAYS_INTL.functionParameter.weekend.name",
  3712. detail: "formula.functionList.NETWORKDAYS_INTL.functionParameter.weekend.detail",
  3713. example: "6",
  3714. require: 0,
  3715. repeat: 0
  3716. },
  3717. {
  3718. name: "formula.functionList.NETWORKDAYS_INTL.functionParameter.holidays.name",
  3719. detail: "formula.functionList.NETWORKDAYS_INTL.functionParameter.holidays.detail",
  3720. example: '"2012-11-22"',
  3721. require: 0,
  3722. repeat: 0
  3723. }
  3724. ]
  3725. },
  3726. {
  3727. functionName: B.NOW,
  3728. functionType: t.Date,
  3729. description: "formula.functionList.NOW.description",
  3730. abstract: "formula.functionList.NOW.abstract",
  3731. functionParameter: []
  3732. },
  3733. {
  3734. functionName: B.SECOND,
  3735. functionType: t.Date,
  3736. description: "formula.functionList.SECOND.description",
  3737. abstract: "formula.functionList.SECOND.abstract",
  3738. functionParameter: [
  3739. {
  3740. name: "formula.functionList.SECOND.functionParameter.serialNumber.name",
  3741. detail: "formula.functionList.SECOND.functionParameter.serialNumber.detail",
  3742. example: '"4:48:18"',
  3743. require: 1,
  3744. repeat: 0
  3745. }
  3746. ]
  3747. },
  3748. {
  3749. functionName: B.TIME,
  3750. functionType: t.Date,
  3751. description: "formula.functionList.TIME.description",
  3752. abstract: "formula.functionList.TIME.abstract",
  3753. functionParameter: [
  3754. {
  3755. name: "formula.functionList.TIME.functionParameter.hour.name",
  3756. detail: "formula.functionList.TIME.functionParameter.hour.detail",
  3757. example: "15",
  3758. require: 1,
  3759. repeat: 0
  3760. },
  3761. {
  3762. name: "formula.functionList.TIME.functionParameter.minute.name",
  3763. detail: "formula.functionList.TIME.functionParameter.minute.detail",
  3764. example: "20",
  3765. require: 1,
  3766. repeat: 0
  3767. },
  3768. {
  3769. name: "formula.functionList.TIME.functionParameter.second.name",
  3770. detail: "formula.functionList.TIME.functionParameter.second.detail",
  3771. example: "59",
  3772. require: 1,
  3773. repeat: 0
  3774. }
  3775. ]
  3776. },
  3777. {
  3778. functionName: B.TIMEVALUE,
  3779. functionType: t.Date,
  3780. description: "formula.functionList.TIMEVALUE.description",
  3781. abstract: "formula.functionList.TIMEVALUE.abstract",
  3782. functionParameter: [
  3783. {
  3784. name: "formula.functionList.TIMEVALUE.functionParameter.timeText.name",
  3785. detail: "formula.functionList.TIMEVALUE.functionParameter.timeText.detail",
  3786. example: '"15:20:59"',
  3787. require: 1,
  3788. repeat: 0
  3789. }
  3790. ]
  3791. },
  3792. {
  3793. functionName: B.TO_DATE,
  3794. functionType: t.Date,
  3795. description: "formula.functionList.TO_DATE.description",
  3796. abstract: "formula.functionList.TO_DATE.abstract",
  3797. functionParameter: [
  3798. {
  3799. name: "formula.functionList.TO_DATE.functionParameter.value.name",
  3800. detail: "formula.functionList.TO_DATE.functionParameter.value.detail",
  3801. example: "40826.4375",
  3802. require: 1,
  3803. repeat: 0
  3804. }
  3805. ]
  3806. },
  3807. {
  3808. functionName: B.TODAY,
  3809. functionType: t.Date,
  3810. description: "formula.functionList.TODAY.description",
  3811. abstract: "formula.functionList.TODAY.abstract",
  3812. functionParameter: []
  3813. },
  3814. {
  3815. functionName: B.WEEKDAY,
  3816. functionType: t.Date,
  3817. description: "formula.functionList.WEEKDAY.description",
  3818. abstract: "formula.functionList.WEEKDAY.abstract",
  3819. functionParameter: [
  3820. {
  3821. name: "formula.functionList.WEEKDAY.functionParameter.serialNumber.name",
  3822. detail: "formula.functionList.WEEKDAY.functionParameter.serialNumber.detail",
  3823. example: '"2008-2-14"',
  3824. require: 1,
  3825. repeat: 0
  3826. },
  3827. {
  3828. name: "formula.functionList.WEEKDAY.functionParameter.returnType.name",
  3829. detail: "formula.functionList.WEEKDAY.functionParameter.returnType.detail",
  3830. example: "2",
  3831. require: 0,
  3832. repeat: 0
  3833. }
  3834. ]
  3835. },
  3836. {
  3837. functionName: B.WEEKNUM,
  3838. functionType: t.Date,
  3839. description: "formula.functionList.WEEKNUM.description",
  3840. abstract: "formula.functionList.WEEKNUM.abstract",
  3841. functionParameter: [
  3842. {
  3843. name: "formula.functionList.WEEKNUM.functionParameter.serialNumber.name",
  3844. detail: "formula.functionList.WEEKNUM.functionParameter.serialNumber.detail",
  3845. example: '"2012-3-9"',
  3846. require: 1,
  3847. repeat: 0
  3848. },
  3849. {
  3850. name: "formula.functionList.WEEKNUM.functionParameter.returnType.name",
  3851. detail: "formula.functionList.WEEKNUM.functionParameter.returnType.detail",
  3852. example: "2",
  3853. require: 0,
  3854. repeat: 0
  3855. }
  3856. ]
  3857. },
  3858. {
  3859. functionName: B.WORKDAY,
  3860. functionType: t.Date,
  3861. description: "formula.functionList.WORKDAY.description",
  3862. abstract: "formula.functionList.WORKDAY.abstract",
  3863. functionParameter: [
  3864. {
  3865. name: "formula.functionList.WORKDAY.functionParameter.startDate.name",
  3866. detail: "formula.functionList.WORKDAY.functionParameter.startDate.detail",
  3867. example: '"2008-10-1"',
  3868. require: 1,
  3869. repeat: 0
  3870. },
  3871. {
  3872. name: "formula.functionList.WORKDAY.functionParameter.days.name",
  3873. detail: "formula.functionList.WORKDAY.functionParameter.days.detail",
  3874. example: "151",
  3875. require: 1,
  3876. repeat: 0
  3877. },
  3878. {
  3879. name: "formula.functionList.WORKDAY.functionParameter.holidays.name",
  3880. detail: "formula.functionList.WORKDAY.functionParameter.holidays.detail",
  3881. example: '"2008-11-26"',
  3882. require: 0,
  3883. repeat: 0
  3884. }
  3885. ]
  3886. },
  3887. {
  3888. functionName: B.WORKDAY_INTL,
  3889. functionType: t.Date,
  3890. description: "formula.functionList.WORKDAY_INTL.description",
  3891. abstract: "formula.functionList.WORKDAY_INTL.abstract",
  3892. functionParameter: [
  3893. {
  3894. name: "formula.functionList.WORKDAY_INTL.functionParameter.startDate.name",
  3895. detail: "formula.functionList.WORKDAY_INTL.functionParameter.startDate.detail",
  3896. example: '"2008-10-1"',
  3897. require: 1,
  3898. repeat: 0
  3899. },
  3900. {
  3901. name: "formula.functionList.WORKDAY_INTL.functionParameter.days.name",
  3902. detail: "formula.functionList.WORKDAY_INTL.functionParameter.days.detail",
  3903. example: "151",
  3904. require: 1,
  3905. repeat: 0
  3906. },
  3907. {
  3908. name: "formula.functionList.WORKDAY_INTL.functionParameter.weekend.name",
  3909. detail: "formula.functionList.WORKDAY_INTL.functionParameter.weekend.detail",
  3910. example: "6",
  3911. require: 0,
  3912. repeat: 0
  3913. },
  3914. {
  3915. name: "formula.functionList.WORKDAY_INTL.functionParameter.holidays.name",
  3916. detail: "formula.functionList.WORKDAY_INTL.functionParameter.holidays.detail",
  3917. example: '"2008-11-26"',
  3918. require: 0,
  3919. repeat: 0
  3920. }
  3921. ]
  3922. },
  3923. {
  3924. functionName: B.YEAR,
  3925. functionType: t.Date,
  3926. description: "formula.functionList.YEAR.description",
  3927. abstract: "formula.functionList.YEAR.abstract",
  3928. functionParameter: [
  3929. {
  3930. name: "formula.functionList.YEAR.functionParameter.serialNumber.name",
  3931. detail: "formula.functionList.YEAR.functionParameter.serialNumber.detail",
  3932. example: '"1969-7-20"',
  3933. require: 1,
  3934. repeat: 0
  3935. }
  3936. ]
  3937. },
  3938. {
  3939. functionName: B.YEARFRAC,
  3940. functionType: t.Date,
  3941. description: "formula.functionList.YEARFRAC.description",
  3942. abstract: "formula.functionList.YEARFRAC.abstract",
  3943. functionParameter: [
  3944. {
  3945. name: "formula.functionList.YEARFRAC.functionParameter.startDate.name",
  3946. detail: "formula.functionList.YEARFRAC.functionParameter.startDate.detail",
  3947. example: '"2012-1-1"',
  3948. require: 1,
  3949. repeat: 0
  3950. },
  3951. {
  3952. name: "formula.functionList.YEARFRAC.functionParameter.endDate.name",
  3953. detail: "formula.functionList.YEARFRAC.functionParameter.endDate.detail",
  3954. example: '"2012-7-30"',
  3955. require: 1,
  3956. repeat: 0
  3957. },
  3958. {
  3959. name: "formula.functionList.YEARFRAC.functionParameter.basis.name",
  3960. detail: "formula.functionList.YEARFRAC.functionParameter.basis.detail",
  3961. example: "1",
  3962. require: 0,
  3963. repeat: 0
  3964. }
  3965. ]
  3966. }
  3967. ], Wi = [
  3968. {
  3969. functionName: A.BESSELI,
  3970. functionType: t.Engineering,
  3971. description: "formula.functionList.BESSELI.description",
  3972. abstract: "formula.functionList.BESSELI.abstract",
  3973. functionParameter: [
  3974. {
  3975. name: "formula.functionList.BESSELI.functionParameter.x.name",
  3976. detail: "formula.functionList.BESSELI.functionParameter.x.detail",
  3977. example: "1.5",
  3978. require: 1,
  3979. repeat: 0
  3980. },
  3981. {
  3982. name: "formula.functionList.BESSELI.functionParameter.n.name",
  3983. detail: "formula.functionList.BESSELI.functionParameter.n.detail",
  3984. example: "1",
  3985. require: 1,
  3986. repeat: 0
  3987. }
  3988. ]
  3989. },
  3990. {
  3991. functionName: A.BESSELJ,
  3992. functionType: t.Engineering,
  3993. description: "formula.functionList.BESSELJ.description",
  3994. abstract: "formula.functionList.BESSELJ.abstract",
  3995. functionParameter: [
  3996. {
  3997. name: "formula.functionList.BESSELJ.functionParameter.x.name",
  3998. detail: "formula.functionList.BESSELJ.functionParameter.x.detail",
  3999. example: "1.5",
  4000. require: 1,
  4001. repeat: 0
  4002. },
  4003. {
  4004. name: "formula.functionList.BESSELJ.functionParameter.n.name",
  4005. detail: "formula.functionList.BESSELJ.functionParameter.n.detail",
  4006. example: "1",
  4007. require: 1,
  4008. repeat: 0
  4009. }
  4010. ]
  4011. },
  4012. {
  4013. functionName: A.BESSELK,
  4014. functionType: t.Engineering,
  4015. description: "formula.functionList.BESSELK.description",
  4016. abstract: "formula.functionList.BESSELK.abstract",
  4017. functionParameter: [
  4018. {
  4019. name: "formula.functionList.BESSELK.functionParameter.x.name",
  4020. detail: "formula.functionList.BESSELK.functionParameter.x.detail",
  4021. example: "1.5",
  4022. require: 1,
  4023. repeat: 0
  4024. },
  4025. {
  4026. name: "formula.functionList.BESSELK.functionParameter.n.name",
  4027. detail: "formula.functionList.BESSELK.functionParameter.n.detail",
  4028. example: "1",
  4029. require: 1,
  4030. repeat: 0
  4031. }
  4032. ]
  4033. },
  4034. {
  4035. functionName: A.BESSELY,
  4036. functionType: t.Engineering,
  4037. description: "formula.functionList.BESSELY.description",
  4038. abstract: "formula.functionList.BESSELY.abstract",
  4039. functionParameter: [
  4040. {
  4041. name: "formula.functionList.BESSELY.functionParameter.x.name",
  4042. detail: "formula.functionList.BESSELY.functionParameter.x.detail",
  4043. example: "1.5",
  4044. require: 1,
  4045. repeat: 0
  4046. },
  4047. {
  4048. name: "formula.functionList.BESSELY.functionParameter.n.name",
  4049. detail: "formula.functionList.BESSELY.functionParameter.n.detail",
  4050. example: "1",
  4051. require: 1,
  4052. repeat: 0
  4053. }
  4054. ]
  4055. },
  4056. {
  4057. functionName: A.BIN2DEC,
  4058. functionType: t.Engineering,
  4059. description: "formula.functionList.BIN2DEC.description",
  4060. abstract: "formula.functionList.BIN2DEC.abstract",
  4061. functionParameter: [
  4062. {
  4063. name: "formula.functionList.BIN2DEC.functionParameter.number.name",
  4064. detail: "formula.functionList.BIN2DEC.functionParameter.number.detail",
  4065. example: "1100100",
  4066. require: 1,
  4067. repeat: 0
  4068. }
  4069. ]
  4070. },
  4071. {
  4072. functionName: A.BIN2HEX,
  4073. functionType: t.Engineering,
  4074. description: "formula.functionList.BIN2HEX.description",
  4075. abstract: "formula.functionList.BIN2HEX.abstract",
  4076. functionParameter: [
  4077. {
  4078. name: "formula.functionList.BIN2HEX.functionParameter.number.name",
  4079. detail: "formula.functionList.BIN2HEX.functionParameter.number.detail",
  4080. example: "11111011",
  4081. require: 1,
  4082. repeat: 0
  4083. },
  4084. {
  4085. name: "formula.functionList.BIN2HEX.functionParameter.places.name",
  4086. detail: "formula.functionList.BIN2HEX.functionParameter.places.detail",
  4087. example: "4",
  4088. require: 0,
  4089. repeat: 0
  4090. }
  4091. ]
  4092. },
  4093. {
  4094. functionName: A.BIN2OCT,
  4095. functionType: t.Engineering,
  4096. description: "formula.functionList.BIN2OCT.description",
  4097. abstract: "formula.functionList.BIN2OCT.abstract",
  4098. functionParameter: [
  4099. {
  4100. name: "formula.functionList.BIN2OCT.functionParameter.number.name",
  4101. detail: "formula.functionList.BIN2OCT.functionParameter.number.detail",
  4102. example: "1001",
  4103. require: 1,
  4104. repeat: 0
  4105. },
  4106. {
  4107. name: "formula.functionList.BIN2OCT.functionParameter.places.name",
  4108. detail: "formula.functionList.BIN2OCT.functionParameter.places.detail",
  4109. example: "3",
  4110. require: 0,
  4111. repeat: 0
  4112. }
  4113. ]
  4114. },
  4115. {
  4116. functionName: A.BITAND,
  4117. functionType: t.Engineering,
  4118. description: "formula.functionList.BITAND.description",
  4119. abstract: "formula.functionList.BITAND.abstract",
  4120. functionParameter: [
  4121. {
  4122. name: "formula.functionList.BITAND.functionParameter.number1.name",
  4123. detail: "formula.functionList.BITAND.functionParameter.number1.detail",
  4124. example: "13",
  4125. require: 1,
  4126. repeat: 0
  4127. },
  4128. {
  4129. name: "formula.functionList.BITAND.functionParameter.number2.name",
  4130. detail: "formula.functionList.BITAND.functionParameter.number2.detail",
  4131. example: "25",
  4132. require: 1,
  4133. repeat: 0
  4134. }
  4135. ]
  4136. },
  4137. {
  4138. functionName: A.BITLSHIFT,
  4139. functionType: t.Engineering,
  4140. description: "formula.functionList.BITLSHIFT.description",
  4141. abstract: "formula.functionList.BITLSHIFT.abstract",
  4142. functionParameter: [
  4143. {
  4144. name: "formula.functionList.BITLSHIFT.functionParameter.number.name",
  4145. detail: "formula.functionList.BITLSHIFT.functionParameter.number.detail",
  4146. example: "4",
  4147. require: 1,
  4148. repeat: 0
  4149. },
  4150. {
  4151. name: "formula.functionList.BITLSHIFT.functionParameter.shiftAmount.name",
  4152. detail: "formula.functionList.BITLSHIFT.functionParameter.shiftAmount.detail",
  4153. example: "2",
  4154. require: 1,
  4155. repeat: 0
  4156. }
  4157. ]
  4158. },
  4159. {
  4160. functionName: A.BITOR,
  4161. functionType: t.Engineering,
  4162. description: "formula.functionList.BITOR.description",
  4163. abstract: "formula.functionList.BITOR.abstract",
  4164. functionParameter: [
  4165. {
  4166. name: "formula.functionList.BITOR.functionParameter.number1.name",
  4167. detail: "formula.functionList.BITOR.functionParameter.number1.detail",
  4168. example: "23",
  4169. require: 1,
  4170. repeat: 0
  4171. },
  4172. {
  4173. name: "formula.functionList.BITOR.functionParameter.number2.name",
  4174. detail: "formula.functionList.BITOR.functionParameter.number2.detail",
  4175. example: "10",
  4176. require: 1,
  4177. repeat: 0
  4178. }
  4179. ]
  4180. },
  4181. {
  4182. functionName: A.BITRSHIFT,
  4183. functionType: t.Engineering,
  4184. description: "formula.functionList.BITRSHIFT.description",
  4185. abstract: "formula.functionList.BITRSHIFT.abstract",
  4186. functionParameter: [
  4187. {
  4188. name: "formula.functionList.BITRSHIFT.functionParameter.number.name",
  4189. detail: "formula.functionList.BITRSHIFT.functionParameter.number.detail",
  4190. example: "13",
  4191. require: 1,
  4192. repeat: 0
  4193. },
  4194. {
  4195. name: "formula.functionList.BITRSHIFT.functionParameter.shiftAmount.name",
  4196. detail: "formula.functionList.BITRSHIFT.functionParameter.shiftAmount.detail",
  4197. example: "2",
  4198. require: 1,
  4199. repeat: 0
  4200. }
  4201. ]
  4202. },
  4203. {
  4204. functionName: A.BITXOR,
  4205. functionType: t.Engineering,
  4206. description: "formula.functionList.BITXOR.description",
  4207. abstract: "formula.functionList.BITXOR.abstract",
  4208. functionParameter: [
  4209. {
  4210. name: "formula.functionList.BITXOR.functionParameter.number1.name",
  4211. detail: "formula.functionList.BITXOR.functionParameter.number1.detail",
  4212. example: "5",
  4213. require: 1,
  4214. repeat: 0
  4215. },
  4216. {
  4217. name: "formula.functionList.BITXOR.functionParameter.number2.name",
  4218. detail: "formula.functionList.BITXOR.functionParameter.number2.detail",
  4219. example: "3",
  4220. require: 1,
  4221. repeat: 0
  4222. }
  4223. ]
  4224. },
  4225. {
  4226. functionName: A.COMPLEX,
  4227. functionType: t.Engineering,
  4228. description: "formula.functionList.COMPLEX.description",
  4229. abstract: "formula.functionList.COMPLEX.abstract",
  4230. functionParameter: [
  4231. {
  4232. name: "formula.functionList.COMPLEX.functionParameter.realNum.name",
  4233. detail: "formula.functionList.COMPLEX.functionParameter.realNum.detail",
  4234. example: "3",
  4235. require: 1,
  4236. repeat: 0
  4237. },
  4238. {
  4239. name: "formula.functionList.COMPLEX.functionParameter.iNum.name",
  4240. detail: "formula.functionList.COMPLEX.functionParameter.iNum.detail",
  4241. example: "4",
  4242. require: 1,
  4243. repeat: 0
  4244. },
  4245. {
  4246. name: "formula.functionList.COMPLEX.functionParameter.suffix.name",
  4247. detail: "formula.functionList.COMPLEX.functionParameter.suffix.detail",
  4248. example: '"i"',
  4249. require: 0,
  4250. repeat: 0
  4251. }
  4252. ]
  4253. },
  4254. {
  4255. functionName: A.CONVERT,
  4256. functionType: t.Engineering,
  4257. description: "formula.functionList.CONVERT.description",
  4258. abstract: "formula.functionList.CONVERT.abstract",
  4259. functionParameter: [
  4260. {
  4261. name: "formula.functionList.CONVERT.functionParameter.number.name",
  4262. detail: "formula.functionList.CONVERT.functionParameter.number.detail",
  4263. example: "1",
  4264. require: 1,
  4265. repeat: 0
  4266. },
  4267. {
  4268. name: "formula.functionList.CONVERT.functionParameter.fromUnit.name",
  4269. detail: "formula.functionList.CONVERT.functionParameter.fromUnit.detail",
  4270. example: '"lbm"',
  4271. require: 1,
  4272. repeat: 0
  4273. },
  4274. {
  4275. name: "formula.functionList.CONVERT.functionParameter.toUnit.name",
  4276. detail: "formula.functionList.CONVERT.functionParameter.toUnit.detail",
  4277. example: '"kg"',
  4278. require: 1,
  4279. repeat: 0
  4280. }
  4281. ]
  4282. },
  4283. {
  4284. functionName: A.DEC2BIN,
  4285. functionType: t.Engineering,
  4286. description: "formula.functionList.DEC2BIN.description",
  4287. abstract: "formula.functionList.DEC2BIN.abstract",
  4288. functionParameter: [
  4289. {
  4290. name: "formula.functionList.DEC2BIN.functionParameter.number.name",
  4291. detail: "formula.functionList.DEC2BIN.functionParameter.number.detail",
  4292. example: "9",
  4293. require: 1,
  4294. repeat: 0
  4295. },
  4296. {
  4297. name: "formula.functionList.DEC2BIN.functionParameter.places.name",
  4298. detail: "formula.functionList.DEC2BIN.functionParameter.places.detail",
  4299. example: "4",
  4300. require: 0,
  4301. repeat: 0
  4302. }
  4303. ]
  4304. },
  4305. {
  4306. functionName: A.DEC2HEX,
  4307. functionType: t.Engineering,
  4308. description: "formula.functionList.DEC2HEX.description",
  4309. abstract: "formula.functionList.DEC2HEX.abstract",
  4310. functionParameter: [
  4311. {
  4312. name: "formula.functionList.DEC2HEX.functionParameter.number.name",
  4313. detail: "formula.functionList.DEC2HEX.functionParameter.number.detail",
  4314. example: "100",
  4315. require: 1,
  4316. repeat: 0
  4317. },
  4318. {
  4319. name: "formula.functionList.DEC2HEX.functionParameter.places.name",
  4320. detail: "formula.functionList.DEC2HEX.functionParameter.places.detail",
  4321. example: "4",
  4322. require: 0,
  4323. repeat: 0
  4324. }
  4325. ]
  4326. },
  4327. {
  4328. functionName: A.DEC2OCT,
  4329. functionType: t.Engineering,
  4330. description: "formula.functionList.DEC2OCT.description",
  4331. abstract: "formula.functionList.DEC2OCT.abstract",
  4332. functionParameter: [
  4333. {
  4334. name: "formula.functionList.DEC2OCT.functionParameter.number.name",
  4335. detail: "formula.functionList.DEC2OCT.functionParameter.number.detail",
  4336. example: "58",
  4337. require: 1,
  4338. repeat: 0
  4339. },
  4340. {
  4341. name: "formula.functionList.DEC2OCT.functionParameter.places.name",
  4342. detail: "formula.functionList.DEC2OCT.functionParameter.places.detail",
  4343. example: "3",
  4344. require: 0,
  4345. repeat: 0
  4346. }
  4347. ]
  4348. },
  4349. {
  4350. functionName: A.DELTA,
  4351. functionType: t.Engineering,
  4352. description: "formula.functionList.DELTA.description",
  4353. abstract: "formula.functionList.DELTA.abstract",
  4354. functionParameter: [
  4355. {
  4356. name: "formula.functionList.DELTA.functionParameter.number1.name",
  4357. detail: "formula.functionList.DELTA.functionParameter.number1.detail",
  4358. example: "5",
  4359. require: 1,
  4360. repeat: 0
  4361. },
  4362. {
  4363. name: "formula.functionList.DELTA.functionParameter.number2.name",
  4364. detail: "formula.functionList.DELTA.functionParameter.number2.detail",
  4365. example: "4",
  4366. require: 0,
  4367. repeat: 0
  4368. }
  4369. ]
  4370. },
  4371. {
  4372. functionName: A.ERF,
  4373. functionType: t.Engineering,
  4374. description: "formula.functionList.ERF.description",
  4375. abstract: "formula.functionList.ERF.abstract",
  4376. functionParameter: [
  4377. {
  4378. name: "formula.functionList.ERF.functionParameter.lowerLimit.name",
  4379. detail: "formula.functionList.ERF.functionParameter.lowerLimit.detail",
  4380. example: "0.745",
  4381. require: 1,
  4382. repeat: 0
  4383. },
  4384. {
  4385. name: "formula.functionList.ERF.functionParameter.upperLimit.name",
  4386. detail: "formula.functionList.ERF.functionParameter.upperLimit.detail",
  4387. example: "2",
  4388. require: 0,
  4389. repeat: 0
  4390. }
  4391. ]
  4392. },
  4393. {
  4394. functionName: A.ERF_PRECISE,
  4395. functionType: t.Engineering,
  4396. description: "formula.functionList.ERF_PRECISE.description",
  4397. abstract: "formula.functionList.ERF_PRECISE.abstract",
  4398. functionParameter: [
  4399. {
  4400. name: "formula.functionList.ERF_PRECISE.functionParameter.x.name",
  4401. detail: "formula.functionList.ERF_PRECISE.functionParameter.x.detail",
  4402. example: "1",
  4403. require: 1,
  4404. repeat: 0
  4405. }
  4406. ]
  4407. },
  4408. {
  4409. functionName: A.ERFC,
  4410. functionType: t.Engineering,
  4411. description: "formula.functionList.ERFC.description",
  4412. abstract: "formula.functionList.ERFC.abstract",
  4413. functionParameter: [
  4414. {
  4415. name: "formula.functionList.ERFC.functionParameter.x.name",
  4416. detail: "formula.functionList.ERFC.functionParameter.x.detail",
  4417. example: "1",
  4418. require: 1,
  4419. repeat: 0
  4420. }
  4421. ]
  4422. },
  4423. {
  4424. functionName: A.ERFC_PRECISE,
  4425. functionType: t.Engineering,
  4426. description: "formula.functionList.ERFC_PRECISE.description",
  4427. abstract: "formula.functionList.ERFC_PRECISE.abstract",
  4428. functionParameter: [
  4429. {
  4430. name: "formula.functionList.ERFC_PRECISE.functionParameter.x.name",
  4431. detail: "formula.functionList.ERFC_PRECISE.functionParameter.x.detail",
  4432. example: "1",
  4433. require: 1,
  4434. repeat: 0
  4435. }
  4436. ]
  4437. },
  4438. {
  4439. functionName: A.GESTEP,
  4440. functionType: t.Engineering,
  4441. description: "formula.functionList.GESTEP.description",
  4442. abstract: "formula.functionList.GESTEP.abstract",
  4443. functionParameter: [
  4444. {
  4445. name: "formula.functionList.GESTEP.functionParameter.number.name",
  4446. detail: "formula.functionList.GESTEP.functionParameter.number.detail",
  4447. example: "5",
  4448. require: 1,
  4449. repeat: 0
  4450. },
  4451. {
  4452. name: "formula.functionList.GESTEP.functionParameter.step.name",
  4453. detail: "formula.functionList.GESTEP.functionParameter.step.detail",
  4454. example: "4",
  4455. require: 0,
  4456. repeat: 0
  4457. }
  4458. ]
  4459. },
  4460. {
  4461. functionName: A.HEX2BIN,
  4462. functionType: t.Engineering,
  4463. description: "formula.functionList.HEX2BIN.description",
  4464. abstract: "formula.functionList.HEX2BIN.abstract",
  4465. functionParameter: [
  4466. {
  4467. name: "formula.functionList.HEX2BIN.functionParameter.number.name",
  4468. detail: "formula.functionList.HEX2BIN.functionParameter.number.detail",
  4469. example: '"F"',
  4470. require: 1,
  4471. repeat: 0
  4472. },
  4473. {
  4474. name: "formula.functionList.HEX2BIN.functionParameter.places.name",
  4475. detail: "formula.functionList.HEX2BIN.functionParameter.places.detail",
  4476. example: "8",
  4477. require: 0,
  4478. repeat: 0
  4479. }
  4480. ]
  4481. },
  4482. {
  4483. functionName: A.HEX2DEC,
  4484. functionType: t.Engineering,
  4485. description: "formula.functionList.HEX2DEC.description",
  4486. abstract: "formula.functionList.HEX2DEC.abstract",
  4487. functionParameter: [
  4488. {
  4489. name: "formula.functionList.HEX2DEC.functionParameter.number.name",
  4490. detail: "formula.functionList.HEX2DEC.functionParameter.number.detail",
  4491. example: '"A5"',
  4492. require: 1,
  4493. repeat: 0
  4494. }
  4495. ]
  4496. },
  4497. {
  4498. functionName: A.HEX2OCT,
  4499. functionType: t.Engineering,
  4500. description: "formula.functionList.HEX2OCT.description",
  4501. abstract: "formula.functionList.HEX2OCT.abstract",
  4502. functionParameter: [
  4503. {
  4504. name: "formula.functionList.HEX2OCT.functionParameter.number.name",
  4505. detail: "formula.functionList.HEX2OCT.functionParameter.number.detail",
  4506. example: '"F"',
  4507. require: 1,
  4508. repeat: 0
  4509. },
  4510. {
  4511. name: "formula.functionList.HEX2OCT.functionParameter.places.name",
  4512. detail: "formula.functionList.HEX2OCT.functionParameter.places.detail",
  4513. example: "3",
  4514. require: 0,
  4515. repeat: 0
  4516. }
  4517. ]
  4518. },
  4519. {
  4520. functionName: A.IMABS,
  4521. functionType: t.Engineering,
  4522. description: "formula.functionList.IMABS.description",
  4523. abstract: "formula.functionList.IMABS.abstract",
  4524. functionParameter: [
  4525. {
  4526. name: "formula.functionList.IMABS.functionParameter.inumber.name",
  4527. detail: "formula.functionList.IMABS.functionParameter.inumber.detail",
  4528. example: '"5+12i"',
  4529. require: 1,
  4530. repeat: 0
  4531. }
  4532. ]
  4533. },
  4534. {
  4535. functionName: A.IMAGINARY,
  4536. functionType: t.Engineering,
  4537. description: "formula.functionList.IMAGINARY.description",
  4538. abstract: "formula.functionList.IMAGINARY.abstract",
  4539. functionParameter: [
  4540. {
  4541. name: "formula.functionList.IMAGINARY.functionParameter.inumber.name",
  4542. detail: "formula.functionList.IMAGINARY.functionParameter.inumber.detail",
  4543. example: '"3+4i"',
  4544. require: 1,
  4545. repeat: 0
  4546. }
  4547. ]
  4548. },
  4549. {
  4550. functionName: A.IMARGUMENT,
  4551. functionType: t.Engineering,
  4552. description: "formula.functionList.IMARGUMENT.description",
  4553. abstract: "formula.functionList.IMARGUMENT.abstract",
  4554. functionParameter: [
  4555. {
  4556. name: "formula.functionList.IMARGUMENT.functionParameter.inumber.name",
  4557. detail: "formula.functionList.IMARGUMENT.functionParameter.inumber.detail",
  4558. example: '"3+4i"',
  4559. require: 1,
  4560. repeat: 0
  4561. }
  4562. ]
  4563. },
  4564. {
  4565. functionName: A.IMCONJUGATE,
  4566. functionType: t.Engineering,
  4567. description: "formula.functionList.IMCONJUGATE.description",
  4568. abstract: "formula.functionList.IMCONJUGATE.abstract",
  4569. functionParameter: [
  4570. {
  4571. name: "formula.functionList.IMCONJUGATE.functionParameter.inumber.name",
  4572. detail: "formula.functionList.IMCONJUGATE.functionParameter.inumber.detail",
  4573. example: '"3+4i"',
  4574. require: 1,
  4575. repeat: 0
  4576. }
  4577. ]
  4578. },
  4579. {
  4580. functionName: A.IMCOS,
  4581. functionType: t.Engineering,
  4582. description: "formula.functionList.IMCOS.description",
  4583. abstract: "formula.functionList.IMCOS.abstract",
  4584. functionParameter: [
  4585. {
  4586. name: "formula.functionList.IMCOS.functionParameter.inumber.name",
  4587. detail: "formula.functionList.IMCOS.functionParameter.inumber.detail",
  4588. example: '"1+i"',
  4589. require: 1,
  4590. repeat: 0
  4591. }
  4592. ]
  4593. },
  4594. {
  4595. functionName: A.IMCOSH,
  4596. functionType: t.Engineering,
  4597. description: "formula.functionList.IMCOSH.description",
  4598. abstract: "formula.functionList.IMCOSH.abstract",
  4599. functionParameter: [
  4600. {
  4601. name: "formula.functionList.IMCOSH.functionParameter.inumber.name",
  4602. detail: "formula.functionList.IMCOSH.functionParameter.inumber.detail",
  4603. example: '"4+3i"',
  4604. require: 1,
  4605. repeat: 0
  4606. }
  4607. ]
  4608. },
  4609. {
  4610. functionName: A.IMCOT,
  4611. functionType: t.Engineering,
  4612. description: "formula.functionList.IMCOT.description",
  4613. abstract: "formula.functionList.IMCOT.abstract",
  4614. functionParameter: [
  4615. {
  4616. name: "formula.functionList.IMCOT.functionParameter.inumber.name",
  4617. detail: "formula.functionList.IMCOT.functionParameter.inumber.detail",
  4618. example: '"4+3i"',
  4619. require: 1,
  4620. repeat: 0
  4621. }
  4622. ]
  4623. },
  4624. {
  4625. functionName: A.IMCOTH,
  4626. functionType: t.Engineering,
  4627. description: "formula.functionList.IMCOTH.description",
  4628. abstract: "formula.functionList.IMCOTH.abstract",
  4629. functionParameter: [
  4630. {
  4631. name: "formula.functionList.IMCOTH.functionParameter.inumber.name",
  4632. detail: "formula.functionList.IMCOTH.functionParameter.inumber.detail",
  4633. example: '"4+3i"',
  4634. require: 1,
  4635. repeat: 0
  4636. }
  4637. ]
  4638. },
  4639. {
  4640. functionName: A.IMCSC,
  4641. functionType: t.Engineering,
  4642. description: "formula.functionList.IMCSC.description",
  4643. abstract: "formula.functionList.IMCSC.abstract",
  4644. functionParameter: [
  4645. {
  4646. name: "formula.functionList.IMCSC.functionParameter.inumber.name",
  4647. detail: "formula.functionList.IMCSC.functionParameter.inumber.detail",
  4648. example: '"4+3i"',
  4649. require: 1,
  4650. repeat: 0
  4651. }
  4652. ]
  4653. },
  4654. {
  4655. functionName: A.IMCSCH,
  4656. functionType: t.Engineering,
  4657. description: "formula.functionList.IMCSCH.description",
  4658. abstract: "formula.functionList.IMCSCH.abstract",
  4659. functionParameter: [
  4660. {
  4661. name: "formula.functionList.IMCSCH.functionParameter.inumber.name",
  4662. detail: "formula.functionList.IMCSCH.functionParameter.inumber.detail",
  4663. example: '"4+3i"',
  4664. require: 1,
  4665. repeat: 0
  4666. }
  4667. ]
  4668. },
  4669. {
  4670. functionName: A.IMDIV,
  4671. functionType: t.Engineering,
  4672. description: "formula.functionList.IMDIV.description",
  4673. abstract: "formula.functionList.IMDIV.abstract",
  4674. functionParameter: [
  4675. {
  4676. name: "formula.functionList.IMDIV.functionParameter.inumber1.name",
  4677. detail: "formula.functionList.IMDIV.functionParameter.inumber1.detail",
  4678. example: '"-238+240i"',
  4679. require: 1,
  4680. repeat: 0
  4681. },
  4682. {
  4683. name: "formula.functionList.IMDIV.functionParameter.inumber2.name",
  4684. detail: "formula.functionList.IMDIV.functionParameter.inumber2.detail",
  4685. example: '"10+24i"',
  4686. require: 1,
  4687. repeat: 0
  4688. }
  4689. ]
  4690. },
  4691. {
  4692. functionName: A.IMEXP,
  4693. functionType: t.Engineering,
  4694. description: "formula.functionList.IMEXP.description",
  4695. abstract: "formula.functionList.IMEXP.abstract",
  4696. functionParameter: [
  4697. {
  4698. name: "formula.functionList.IMEXP.functionParameter.inumber.name",
  4699. detail: "formula.functionList.IMEXP.functionParameter.inumber.detail",
  4700. example: '"1+i"',
  4701. require: 1,
  4702. repeat: 0
  4703. }
  4704. ]
  4705. },
  4706. {
  4707. functionName: A.IMLN,
  4708. functionType: t.Engineering,
  4709. description: "formula.functionList.IMLN.description",
  4710. abstract: "formula.functionList.IMLN.abstract",
  4711. functionParameter: [
  4712. {
  4713. name: "formula.functionList.IMLN.functionParameter.inumber.name",
  4714. detail: "formula.functionList.IMLN.functionParameter.inumber.detail",
  4715. example: '"3+4i"',
  4716. require: 1,
  4717. repeat: 0
  4718. }
  4719. ]
  4720. },
  4721. {
  4722. functionName: A.IMLOG,
  4723. functionType: t.Engineering,
  4724. description: "formula.functionList.IMLOG.description",
  4725. abstract: "formula.functionList.IMLOG.abstract",
  4726. functionParameter: [
  4727. {
  4728. name: "formula.functionList.IMLOG.functionParameter.inumber.name",
  4729. detail: "formula.functionList.IMLOG.functionParameter.inumber.detail",
  4730. example: '"3+4i"',
  4731. require: 1,
  4732. repeat: 0
  4733. },
  4734. {
  4735. name: "formula.functionList.IMLOG.functionParameter.base.name",
  4736. detail: "formula.functionList.IMLOG.functionParameter.base.detail",
  4737. example: "10",
  4738. require: 0,
  4739. repeat: 0
  4740. }
  4741. ]
  4742. },
  4743. {
  4744. functionName: A.IMLOG10,
  4745. functionType: t.Engineering,
  4746. description: "formula.functionList.IMLOG10.description",
  4747. abstract: "formula.functionList.IMLOG10.abstract",
  4748. functionParameter: [
  4749. {
  4750. name: "formula.functionList.IMLOG10.functionParameter.inumber.name",
  4751. detail: "formula.functionList.IMLOG10.functionParameter.inumber.detail",
  4752. example: '"3+4i"',
  4753. require: 1,
  4754. repeat: 0
  4755. }
  4756. ]
  4757. },
  4758. {
  4759. functionName: A.IMLOG2,
  4760. functionType: t.Engineering,
  4761. description: "formula.functionList.IMLOG2.description",
  4762. abstract: "formula.functionList.IMLOG2.abstract",
  4763. functionParameter: [
  4764. {
  4765. name: "formula.functionList.IMLOG2.functionParameter.inumber.name",
  4766. detail: "formula.functionList.IMLOG2.functionParameter.inumber.detail",
  4767. example: '"3+4i"',
  4768. require: 1,
  4769. repeat: 0
  4770. }
  4771. ]
  4772. },
  4773. {
  4774. functionName: A.IMPOWER,
  4775. functionType: t.Engineering,
  4776. description: "formula.functionList.IMPOWER.description",
  4777. abstract: "formula.functionList.IMPOWER.abstract",
  4778. functionParameter: [
  4779. {
  4780. name: "formula.functionList.IMPOWER.functionParameter.inumber.name",
  4781. detail: "formula.functionList.IMPOWER.functionParameter.inumber.detail",
  4782. example: '"2+3i"',
  4783. require: 1,
  4784. repeat: 0
  4785. },
  4786. {
  4787. name: "formula.functionList.IMPOWER.functionParameter.number.name",
  4788. detail: "formula.functionList.IMPOWER.functionParameter.number.detail",
  4789. example: "3",
  4790. require: 1,
  4791. repeat: 0
  4792. }
  4793. ]
  4794. },
  4795. {
  4796. functionName: A.IMPRODUCT,
  4797. functionType: t.Engineering,
  4798. description: "formula.functionList.IMPRODUCT.description",
  4799. abstract: "formula.functionList.IMPRODUCT.abstract",
  4800. functionParameter: [
  4801. {
  4802. name: "formula.functionList.IMPRODUCT.functionParameter.inumber1.name",
  4803. detail: "formula.functionList.IMPRODUCT.functionParameter.inumber1.detail",
  4804. example: '"3+4i"',
  4805. require: 1,
  4806. repeat: 0
  4807. },
  4808. {
  4809. name: "formula.functionList.IMPRODUCT.functionParameter.inumber2.name",
  4810. detail: "formula.functionList.IMPRODUCT.functionParameter.inumber2.detail",
  4811. example: '"5-3i"',
  4812. require: 0,
  4813. repeat: 1
  4814. }
  4815. ]
  4816. },
  4817. {
  4818. functionName: A.IMREAL,
  4819. functionType: t.Engineering,
  4820. description: "formula.functionList.IMREAL.description",
  4821. abstract: "formula.functionList.IMREAL.abstract",
  4822. functionParameter: [
  4823. {
  4824. name: "formula.functionList.IMREAL.functionParameter.inumber.name",
  4825. detail: "formula.functionList.IMREAL.functionParameter.inumber.detail",
  4826. example: '"6-9i"',
  4827. require: 1,
  4828. repeat: 0
  4829. }
  4830. ]
  4831. },
  4832. {
  4833. functionName: A.IMSEC,
  4834. functionType: t.Engineering,
  4835. description: "formula.functionList.IMSEC.description",
  4836. abstract: "formula.functionList.IMSEC.abstract",
  4837. functionParameter: [
  4838. {
  4839. name: "formula.functionList.IMSEC.functionParameter.inumber.name",
  4840. detail: "formula.functionList.IMSEC.functionParameter.inumber.detail",
  4841. example: '"4+3i"',
  4842. require: 1,
  4843. repeat: 0
  4844. }
  4845. ]
  4846. },
  4847. {
  4848. functionName: A.IMSECH,
  4849. functionType: t.Engineering,
  4850. description: "formula.functionList.IMSECH.description",
  4851. abstract: "formula.functionList.IMSECH.abstract",
  4852. functionParameter: [
  4853. {
  4854. name: "formula.functionList.IMSECH.functionParameter.inumber.name",
  4855. detail: "formula.functionList.IMSECH.functionParameter.inumber.detail",
  4856. example: '"4+3i"',
  4857. require: 1,
  4858. repeat: 0
  4859. }
  4860. ]
  4861. },
  4862. {
  4863. functionName: A.IMSIN,
  4864. functionType: t.Engineering,
  4865. description: "formula.functionList.IMSIN.description",
  4866. abstract: "formula.functionList.IMSIN.abstract",
  4867. functionParameter: [
  4868. {
  4869. name: "formula.functionList.IMSIN.functionParameter.inumber.name",
  4870. detail: "formula.functionList.IMSIN.functionParameter.inumber.detail",
  4871. example: '"4+3i"',
  4872. require: 1,
  4873. repeat: 0
  4874. }
  4875. ]
  4876. },
  4877. {
  4878. functionName: A.IMSINH,
  4879. functionType: t.Engineering,
  4880. description: "formula.functionList.IMSINH.description",
  4881. abstract: "formula.functionList.IMSINH.abstract",
  4882. functionParameter: [
  4883. {
  4884. name: "formula.functionList.IMSINH.functionParameter.inumber.name",
  4885. detail: "formula.functionList.IMSINH.functionParameter.inumber.detail",
  4886. example: '"4+3i"',
  4887. require: 1,
  4888. repeat: 0
  4889. }
  4890. ]
  4891. },
  4892. {
  4893. functionName: A.IMSQRT,
  4894. functionType: t.Engineering,
  4895. description: "formula.functionList.IMSQRT.description",
  4896. abstract: "formula.functionList.IMSQRT.abstract",
  4897. functionParameter: [
  4898. {
  4899. name: "formula.functionList.IMSQRT.functionParameter.inumber.name",
  4900. detail: "formula.functionList.IMSQRT.functionParameter.inumber.detail",
  4901. example: '"1+i"',
  4902. require: 1,
  4903. repeat: 0
  4904. }
  4905. ]
  4906. },
  4907. {
  4908. functionName: A.IMSUB,
  4909. functionType: t.Engineering,
  4910. description: "formula.functionList.IMSUB.description",
  4911. abstract: "formula.functionList.IMSUB.abstract",
  4912. functionParameter: [
  4913. {
  4914. name: "formula.functionList.IMSUB.functionParameter.inumber1.name",
  4915. detail: "formula.functionList.IMSUB.functionParameter.inumber1.detail",
  4916. example: '"13+4i"',
  4917. require: 1,
  4918. repeat: 0
  4919. },
  4920. {
  4921. name: "formula.functionList.IMSUB.functionParameter.inumber2.name",
  4922. detail: "formula.functionList.IMSUB.functionParameter.inumber2.detail",
  4923. example: '"5+3i"',
  4924. require: 1,
  4925. repeat: 0
  4926. }
  4927. ]
  4928. },
  4929. {
  4930. functionName: A.IMSUM,
  4931. functionType: t.Engineering,
  4932. description: "formula.functionList.IMSUM.description",
  4933. abstract: "formula.functionList.IMSUM.abstract",
  4934. functionParameter: [
  4935. {
  4936. name: "formula.functionList.IMSUM.functionParameter.inumber1.name",
  4937. detail: "formula.functionList.IMSUM.functionParameter.inumber1.detail",
  4938. example: '"3+4i"',
  4939. require: 1,
  4940. repeat: 0
  4941. },
  4942. {
  4943. name: "formula.functionList.IMSUM.functionParameter.inumber2.name",
  4944. detail: "formula.functionList.IMSUM.functionParameter.inumber2.detail",
  4945. example: '"5-3i"',
  4946. require: 0,
  4947. repeat: 1
  4948. }
  4949. ]
  4950. },
  4951. {
  4952. functionName: A.IMTAN,
  4953. functionType: t.Engineering,
  4954. description: "formula.functionList.IMTAN.description",
  4955. abstract: "formula.functionList.IMTAN.abstract",
  4956. functionParameter: [
  4957. {
  4958. name: "formula.functionList.IMTAN.functionParameter.inumber.name",
  4959. detail: "formula.functionList.IMTAN.functionParameter.inumber.detail",
  4960. example: '"4+3i"',
  4961. require: 1,
  4962. repeat: 0
  4963. }
  4964. ]
  4965. },
  4966. {
  4967. functionName: A.IMTANH,
  4968. functionType: t.Engineering,
  4969. description: "formula.functionList.IMTANH.description",
  4970. abstract: "formula.functionList.IMTANH.abstract",
  4971. functionParameter: [
  4972. {
  4973. name: "formula.functionList.IMTANH.functionParameter.inumber.name",
  4974. detail: "formula.functionList.IMTANH.functionParameter.inumber.detail",
  4975. example: '"4+3i"',
  4976. require: 1,
  4977. repeat: 0
  4978. }
  4979. ]
  4980. },
  4981. {
  4982. functionName: A.OCT2BIN,
  4983. functionType: t.Engineering,
  4984. description: "formula.functionList.OCT2BIN.description",
  4985. abstract: "formula.functionList.OCT2BIN.abstract",
  4986. functionParameter: [
  4987. {
  4988. name: "formula.functionList.OCT2BIN.functionParameter.number.name",
  4989. detail: "formula.functionList.OCT2BIN.functionParameter.number.detail",
  4990. example: "3",
  4991. require: 1,
  4992. repeat: 0
  4993. },
  4994. {
  4995. name: "formula.functionList.OCT2BIN.functionParameter.places.name",
  4996. detail: "formula.functionList.OCT2BIN.functionParameter.places.detail",
  4997. example: "3",
  4998. require: 0,
  4999. repeat: 0
  5000. }
  5001. ]
  5002. },
  5003. {
  5004. functionName: A.OCT2DEC,
  5005. functionType: t.Engineering,
  5006. description: "formula.functionList.OCT2DEC.description",
  5007. abstract: "formula.functionList.OCT2DEC.abstract",
  5008. functionParameter: [
  5009. {
  5010. name: "formula.functionList.OCT2DEC.functionParameter.number.name",
  5011. detail: "formula.functionList.OCT2DEC.functionParameter.number.detail",
  5012. example: "54",
  5013. require: 1,
  5014. repeat: 0
  5015. }
  5016. ]
  5017. },
  5018. {
  5019. functionName: A.OCT2HEX,
  5020. functionType: t.Engineering,
  5021. description: "formula.functionList.OCT2HEX.description",
  5022. abstract: "formula.functionList.OCT2HEX.abstract",
  5023. functionParameter: [
  5024. {
  5025. name: "formula.functionList.OCT2HEX.functionParameter.number.name",
  5026. detail: "formula.functionList.OCT2HEX.functionParameter.number.detail",
  5027. example: "100",
  5028. require: 1,
  5029. repeat: 0
  5030. },
  5031. {
  5032. name: "formula.functionList.OCT2HEX.functionParameter.places.name",
  5033. detail: "formula.functionList.OCT2HEX.functionParameter.places.detail",
  5034. example: "4",
  5035. require: 0,
  5036. repeat: 0
  5037. }
  5038. ]
  5039. }
  5040. ], Ki = [
  5041. {
  5042. functionName: C.ACCRINT,
  5043. functionType: t.Financial,
  5044. description: "formula.functionList.ACCRINT.description",
  5045. abstract: "formula.functionList.ACCRINT.abstract",
  5046. functionParameter: [
  5047. {
  5048. name: "formula.functionList.ACCRINT.functionParameter.issue.name",
  5049. detail: "formula.functionList.ACCRINT.functionParameter.issue.detail",
  5050. example: "39508",
  5051. require: 1,
  5052. repeat: 0
  5053. },
  5054. {
  5055. name: "formula.functionList.ACCRINT.functionParameter.firstInterest.name",
  5056. detail: "formula.functionList.ACCRINT.functionParameter.firstInterest.detail",
  5057. example: "39691",
  5058. require: 1,
  5059. repeat: 0
  5060. },
  5061. {
  5062. name: "formula.functionList.ACCRINT.functionParameter.settlement.name",
  5063. detail: "formula.functionList.ACCRINT.functionParameter.settlement.detail",
  5064. example: "39569",
  5065. require: 1,
  5066. repeat: 0
  5067. },
  5068. {
  5069. name: "formula.functionList.ACCRINT.functionParameter.rate.name",
  5070. detail: "formula.functionList.ACCRINT.functionParameter.rate.detail",
  5071. example: "0.1",
  5072. require: 1,
  5073. repeat: 0
  5074. },
  5075. {
  5076. name: "formula.functionList.ACCRINT.functionParameter.par.name",
  5077. detail: "formula.functionList.ACCRINT.functionParameter.par.detail",
  5078. example: "1000",
  5079. require: 1,
  5080. repeat: 0
  5081. },
  5082. {
  5083. name: "formula.functionList.ACCRINT.functionParameter.frequency.name",
  5084. detail: "formula.functionList.ACCRINT.functionParameter.frequency.detail",
  5085. example: "2",
  5086. require: 1,
  5087. repeat: 0
  5088. },
  5089. {
  5090. name: "formula.functionList.ACCRINT.functionParameter.basis.name",
  5091. detail: "formula.functionList.ACCRINT.functionParameter.basis.detail",
  5092. example: "0",
  5093. require: 0,
  5094. repeat: 0
  5095. },
  5096. {
  5097. name: "formula.functionList.ACCRINT.functionParameter.calcMethod.name",
  5098. detail: "formula.functionList.ACCRINT.functionParameter.calcMethod.detail",
  5099. example: "true",
  5100. require: 0,
  5101. repeat: 0
  5102. }
  5103. ]
  5104. },
  5105. {
  5106. functionName: C.ACCRINTM,
  5107. functionType: t.Financial,
  5108. description: "formula.functionList.ACCRINTM.description",
  5109. abstract: "formula.functionList.ACCRINTM.abstract",
  5110. functionParameter: [
  5111. {
  5112. name: "formula.functionList.ACCRINTM.functionParameter.issue.name",
  5113. detail: "formula.functionList.ACCRINTM.functionParameter.issue.detail",
  5114. example: '"2008-4-1"',
  5115. require: 1,
  5116. repeat: 0
  5117. },
  5118. {
  5119. name: "formula.functionList.ACCRINTM.functionParameter.settlement.name",
  5120. detail: "formula.functionList.ACCRINTM.functionParameter.settlement.detail",
  5121. example: '"2008-6-15"',
  5122. require: 1,
  5123. repeat: 0
  5124. },
  5125. {
  5126. name: "formula.functionList.ACCRINTM.functionParameter.rate.name",
  5127. detail: "formula.functionList.ACCRINTM.functionParameter.rate.detail",
  5128. example: "0.1",
  5129. require: 1,
  5130. repeat: 0
  5131. },
  5132. {
  5133. name: "formula.functionList.ACCRINTM.functionParameter.par.name",
  5134. detail: "formula.functionList.ACCRINTM.functionParameter.par.detail",
  5135. example: "1000",
  5136. require: 1,
  5137. repeat: 0
  5138. },
  5139. {
  5140. name: "formula.functionList.ACCRINTM.functionParameter.basis.name",
  5141. detail: "formula.functionList.ACCRINTM.functionParameter.basis.detail",
  5142. example: "3",
  5143. require: 0,
  5144. repeat: 0
  5145. }
  5146. ]
  5147. },
  5148. {
  5149. functionName: C.AMORDEGRC,
  5150. functionType: t.Financial,
  5151. description: "formula.functionList.AMORDEGRC.description",
  5152. abstract: "formula.functionList.AMORDEGRC.abstract",
  5153. functionParameter: [
  5154. {
  5155. name: "formula.functionList.AMORDEGRC.functionParameter.number1.name",
  5156. detail: "formula.functionList.AMORDEGRC.functionParameter.number1.detail",
  5157. example: "A1:A20",
  5158. require: 1,
  5159. repeat: 0
  5160. },
  5161. {
  5162. name: "formula.functionList.AMORDEGRC.functionParameter.number2.name",
  5163. detail: "formula.functionList.AMORDEGRC.functionParameter.number2.detail",
  5164. example: "A1:A20",
  5165. require: 1,
  5166. repeat: 0
  5167. }
  5168. ]
  5169. },
  5170. {
  5171. functionName: C.AMORLINC,
  5172. functionType: t.Financial,
  5173. description: "formula.functionList.AMORLINC.description",
  5174. abstract: "formula.functionList.AMORLINC.abstract",
  5175. functionParameter: [
  5176. {
  5177. name: "formula.functionList.AMORLINC.functionParameter.cost.name",
  5178. detail: "formula.functionList.AMORLINC.functionParameter.cost.detail",
  5179. example: "2400",
  5180. require: 1,
  5181. repeat: 0
  5182. },
  5183. {
  5184. name: "formula.functionList.AMORLINC.functionParameter.datePurchased.name",
  5185. detail: "formula.functionList.AMORLINC.functionParameter.datePurchased.detail",
  5186. example: "39679",
  5187. require: 1,
  5188. repeat: 0
  5189. },
  5190. {
  5191. name: "formula.functionList.AMORLINC.functionParameter.firstPeriod.name",
  5192. detail: "formula.functionList.AMORLINC.functionParameter.firstPeriod.detail",
  5193. example: "39813",
  5194. require: 1,
  5195. repeat: 0
  5196. },
  5197. {
  5198. name: "formula.functionList.AMORLINC.functionParameter.salvage.name",
  5199. detail: "formula.functionList.AMORLINC.functionParameter.salvage.detail",
  5200. example: "300",
  5201. require: 1,
  5202. repeat: 0
  5203. },
  5204. {
  5205. name: "formula.functionList.AMORLINC.functionParameter.period.name",
  5206. detail: "formula.functionList.AMORLINC.functionParameter.period.detail",
  5207. example: "1",
  5208. require: 1,
  5209. repeat: 0
  5210. },
  5211. {
  5212. name: "formula.functionList.AMORLINC.functionParameter.rate.name",
  5213. detail: "formula.functionList.AMORLINC.functionParameter.rate.detail",
  5214. example: "0.15",
  5215. require: 1,
  5216. repeat: 0
  5217. },
  5218. {
  5219. name: "formula.functionList.AMORLINC.functionParameter.basis.name",
  5220. detail: "formula.functionList.AMORLINC.functionParameter.basis.detail",
  5221. example: "0",
  5222. require: 0,
  5223. repeat: 0
  5224. }
  5225. ]
  5226. },
  5227. {
  5228. functionName: C.COUPDAYBS,
  5229. functionType: t.Financial,
  5230. description: "formula.functionList.COUPDAYBS.description",
  5231. abstract: "formula.functionList.COUPDAYBS.abstract",
  5232. functionParameter: [
  5233. {
  5234. name: "formula.functionList.COUPDAYBS.functionParameter.settlement.name",
  5235. detail: "formula.functionList.COUPDAYBS.functionParameter.settlement.detail",
  5236. example: '"2011-1-25"',
  5237. require: 1,
  5238. repeat: 0
  5239. },
  5240. {
  5241. name: "formula.functionList.COUPDAYBS.functionParameter.maturity.name",
  5242. detail: "formula.functionList.COUPDAYBS.functionParameter.maturity.detail",
  5243. example: '"2011-11-15"',
  5244. require: 1,
  5245. repeat: 0
  5246. },
  5247. {
  5248. name: "formula.functionList.COUPDAYBS.functionParameter.frequency.name",
  5249. detail: "formula.functionList.COUPDAYBS.functionParameter.frequency.detail",
  5250. example: "2",
  5251. require: 1,
  5252. repeat: 0
  5253. },
  5254. {
  5255. name: "formula.functionList.COUPDAYBS.functionParameter.basis.name",
  5256. detail: "formula.functionList.COUPDAYBS.functionParameter.basis.detail",
  5257. example: "1",
  5258. require: 0,
  5259. repeat: 0
  5260. }
  5261. ]
  5262. },
  5263. {
  5264. functionName: C.COUPDAYS,
  5265. functionType: t.Financial,
  5266. description: "formula.functionList.COUPDAYS.description",
  5267. abstract: "formula.functionList.COUPDAYS.abstract",
  5268. functionParameter: [
  5269. {
  5270. name: "formula.functionList.COUPDAYS.functionParameter.settlement.name",
  5271. detail: "formula.functionList.COUPDAYS.functionParameter.settlement.detail",
  5272. example: '"2011-1-25"',
  5273. require: 1,
  5274. repeat: 0
  5275. },
  5276. {
  5277. name: "formula.functionList.COUPDAYS.functionParameter.maturity.name",
  5278. detail: "formula.functionList.COUPDAYS.functionParameter.maturity.detail",
  5279. example: '"2011-11-15"',
  5280. require: 1,
  5281. repeat: 0
  5282. },
  5283. {
  5284. name: "formula.functionList.COUPDAYS.functionParameter.frequency.name",
  5285. detail: "formula.functionList.COUPDAYS.functionParameter.frequency.detail",
  5286. example: "2",
  5287. require: 1,
  5288. repeat: 0
  5289. },
  5290. {
  5291. name: "formula.functionList.COUPDAYS.functionParameter.basis.name",
  5292. detail: "formula.functionList.COUPDAYS.functionParameter.basis.detail",
  5293. example: "1",
  5294. require: 0,
  5295. repeat: 0
  5296. }
  5297. ]
  5298. },
  5299. {
  5300. functionName: C.COUPDAYSNC,
  5301. functionType: t.Financial,
  5302. description: "formula.functionList.COUPDAYSNC.description",
  5303. abstract: "formula.functionList.COUPDAYSNC.abstract",
  5304. functionParameter: [
  5305. {
  5306. name: "formula.functionList.COUPDAYSNC.functionParameter.settlement.name",
  5307. detail: "formula.functionList.COUPDAYSNC.functionParameter.settlement.detail",
  5308. example: '"2011-1-25"',
  5309. require: 1,
  5310. repeat: 0
  5311. },
  5312. {
  5313. name: "formula.functionList.COUPDAYSNC.functionParameter.maturity.name",
  5314. detail: "formula.functionList.COUPDAYSNC.functionParameter.maturity.detail",
  5315. example: '"2011-11-15"',
  5316. require: 1,
  5317. repeat: 0
  5318. },
  5319. {
  5320. name: "formula.functionList.COUPDAYSNC.functionParameter.frequency.name",
  5321. detail: "formula.functionList.COUPDAYSNC.functionParameter.frequency.detail",
  5322. example: "2",
  5323. require: 1,
  5324. repeat: 0
  5325. },
  5326. {
  5327. name: "formula.functionList.COUPDAYSNC.functionParameter.basis.name",
  5328. detail: "formula.functionList.COUPDAYSNC.functionParameter.basis.detail",
  5329. example: "1",
  5330. require: 0,
  5331. repeat: 0
  5332. }
  5333. ]
  5334. },
  5335. {
  5336. functionName: C.COUPNCD,
  5337. functionType: t.Financial,
  5338. description: "formula.functionList.COUPNCD.description",
  5339. abstract: "formula.functionList.COUPNCD.abstract",
  5340. functionParameter: [
  5341. {
  5342. name: "formula.functionList.COUPNCD.functionParameter.settlement.name",
  5343. detail: "formula.functionList.COUPNCD.functionParameter.settlement.detail",
  5344. example: '"2011-1-25"',
  5345. require: 1,
  5346. repeat: 0
  5347. },
  5348. {
  5349. name: "formula.functionList.COUPNCD.functionParameter.maturity.name",
  5350. detail: "formula.functionList.COUPNCD.functionParameter.maturity.detail",
  5351. example: '"2011-11-15"',
  5352. require: 1,
  5353. repeat: 0
  5354. },
  5355. {
  5356. name: "formula.functionList.COUPNCD.functionParameter.frequency.name",
  5357. detail: "formula.functionList.COUPNCD.functionParameter.frequency.detail",
  5358. example: "2",
  5359. require: 1,
  5360. repeat: 0
  5361. },
  5362. {
  5363. name: "formula.functionList.COUPNCD.functionParameter.basis.name",
  5364. detail: "formula.functionList.COUPNCD.functionParameter.basis.detail",
  5365. example: "1",
  5366. require: 0,
  5367. repeat: 0
  5368. }
  5369. ]
  5370. },
  5371. {
  5372. functionName: C.COUPNUM,
  5373. functionType: t.Financial,
  5374. description: "formula.functionList.COUPNUM.description",
  5375. abstract: "formula.functionList.COUPNUM.abstract",
  5376. functionParameter: [
  5377. {
  5378. name: "formula.functionList.COUPNUM.functionParameter.settlement.name",
  5379. detail: "formula.functionList.COUPNUM.functionParameter.settlement.detail",
  5380. example: '"2011-1-25"',
  5381. require: 1,
  5382. repeat: 0
  5383. },
  5384. {
  5385. name: "formula.functionList.COUPNUM.functionParameter.maturity.name",
  5386. detail: "formula.functionList.COUPNUM.functionParameter.maturity.detail",
  5387. example: '"2011-11-15"',
  5388. require: 1,
  5389. repeat: 0
  5390. },
  5391. {
  5392. name: "formula.functionList.COUPNUM.functionParameter.frequency.name",
  5393. detail: "formula.functionList.COUPNUM.functionParameter.frequency.detail",
  5394. example: "2",
  5395. require: 1,
  5396. repeat: 0
  5397. },
  5398. {
  5399. name: "formula.functionList.COUPNUM.functionParameter.basis.name",
  5400. detail: "formula.functionList.COUPNUM.functionParameter.basis.detail",
  5401. example: "1",
  5402. require: 0,
  5403. repeat: 0
  5404. }
  5405. ]
  5406. },
  5407. {
  5408. functionName: C.COUPPCD,
  5409. functionType: t.Financial,
  5410. description: "formula.functionList.COUPPCD.description",
  5411. abstract: "formula.functionList.COUPPCD.abstract",
  5412. functionParameter: [
  5413. {
  5414. name: "formula.functionList.COUPPCD.functionParameter.settlement.name",
  5415. detail: "formula.functionList.COUPPCD.functionParameter.settlement.detail",
  5416. example: '"2011-1-25"',
  5417. require: 1,
  5418. repeat: 0
  5419. },
  5420. {
  5421. name: "formula.functionList.COUPPCD.functionParameter.maturity.name",
  5422. detail: "formula.functionList.COUPPCD.functionParameter.maturity.detail",
  5423. example: '"2011-11-15"',
  5424. require: 1,
  5425. repeat: 0
  5426. },
  5427. {
  5428. name: "formula.functionList.COUPPCD.functionParameter.frequency.name",
  5429. detail: "formula.functionList.COUPPCD.functionParameter.frequency.detail",
  5430. example: "2",
  5431. require: 1,
  5432. repeat: 0
  5433. },
  5434. {
  5435. name: "formula.functionList.COUPPCD.functionParameter.basis.name",
  5436. detail: "formula.functionList.COUPPCD.functionParameter.basis.detail",
  5437. example: "1",
  5438. require: 0,
  5439. repeat: 0
  5440. }
  5441. ]
  5442. },
  5443. {
  5444. functionName: C.CUMIPMT,
  5445. functionType: t.Financial,
  5446. description: "formula.functionList.CUMIPMT.description",
  5447. abstract: "formula.functionList.CUMIPMT.abstract",
  5448. functionParameter: [
  5449. {
  5450. name: "formula.functionList.CUMIPMT.functionParameter.rate.name",
  5451. detail: "formula.functionList.CUMIPMT.functionParameter.rate.detail",
  5452. example: "0.09/12",
  5453. require: 1,
  5454. repeat: 0
  5455. },
  5456. {
  5457. name: "formula.functionList.CUMIPMT.functionParameter.nper.name",
  5458. detail: "formula.functionList.CUMIPMT.functionParameter.nper.detail",
  5459. example: "30*12",
  5460. require: 1,
  5461. repeat: 0
  5462. },
  5463. {
  5464. name: "formula.functionList.CUMIPMT.functionParameter.pv.name",
  5465. detail: "formula.functionList.CUMIPMT.functionParameter.pv.detail",
  5466. example: "125000",
  5467. require: 1,
  5468. repeat: 0
  5469. },
  5470. {
  5471. name: "formula.functionList.CUMIPMT.functionParameter.startPeriod.name",
  5472. detail: "formula.functionList.CUMIPMT.functionParameter.startPeriod.detail",
  5473. example: "13",
  5474. require: 1,
  5475. repeat: 0
  5476. },
  5477. {
  5478. name: "formula.functionList.CUMIPMT.functionParameter.endPeriod.name",
  5479. detail: "formula.functionList.CUMIPMT.functionParameter.endPeriod.detail",
  5480. example: "24",
  5481. require: 1,
  5482. repeat: 0
  5483. },
  5484. {
  5485. name: "formula.functionList.CUMIPMT.functionParameter.type.name",
  5486. detail: "formula.functionList.CUMIPMT.functionParameter.type.detail",
  5487. example: "0",
  5488. require: 1,
  5489. repeat: 0
  5490. }
  5491. ]
  5492. },
  5493. {
  5494. functionName: C.CUMPRINC,
  5495. functionType: t.Financial,
  5496. description: "formula.functionList.CUMPRINC.description",
  5497. abstract: "formula.functionList.CUMPRINC.abstract",
  5498. functionParameter: [
  5499. {
  5500. name: "formula.functionList.CUMPRINC.functionParameter.rate.name",
  5501. detail: "formula.functionList.CUMPRINC.functionParameter.rate.detail",
  5502. example: "0.09/12",
  5503. require: 1,
  5504. repeat: 0
  5505. },
  5506. {
  5507. name: "formula.functionList.CUMPRINC.functionParameter.nper.name",
  5508. detail: "formula.functionList.CUMPRINC.functionParameter.nper.detail",
  5509. example: "30*12",
  5510. require: 1,
  5511. repeat: 0
  5512. },
  5513. {
  5514. name: "formula.functionList.CUMPRINC.functionParameter.pv.name",
  5515. detail: "formula.functionList.CUMPRINC.functionParameter.pv.detail",
  5516. example: "125000",
  5517. require: 1,
  5518. repeat: 0
  5519. },
  5520. {
  5521. name: "formula.functionList.CUMPRINC.functionParameter.startPeriod.name",
  5522. detail: "formula.functionList.CUMPRINC.functionParameter.startPeriod.detail",
  5523. example: "13",
  5524. require: 1,
  5525. repeat: 0
  5526. },
  5527. {
  5528. name: "formula.functionList.CUMPRINC.functionParameter.endPeriod.name",
  5529. detail: "formula.functionList.CUMPRINC.functionParameter.endPeriod.detail",
  5530. example: "24",
  5531. require: 1,
  5532. repeat: 0
  5533. },
  5534. {
  5535. name: "formula.functionList.CUMPRINC.functionParameter.type.name",
  5536. detail: "formula.functionList.CUMPRINC.functionParameter.type.detail",
  5537. example: "0",
  5538. require: 1,
  5539. repeat: 0
  5540. }
  5541. ]
  5542. },
  5543. {
  5544. functionName: C.DB,
  5545. functionType: t.Financial,
  5546. description: "formula.functionList.DB.description",
  5547. abstract: "formula.functionList.DB.abstract",
  5548. functionParameter: [
  5549. {
  5550. name: "formula.functionList.DB.functionParameter.cost.name",
  5551. detail: "formula.functionList.DB.functionParameter.cost.detail",
  5552. example: "10000000",
  5553. require: 1,
  5554. repeat: 0
  5555. },
  5556. {
  5557. name: "formula.functionList.DB.functionParameter.salvage.name",
  5558. detail: "formula.functionList.DB.functionParameter.salvage.detail",
  5559. example: "1000000",
  5560. require: 1,
  5561. repeat: 0
  5562. },
  5563. {
  5564. name: "formula.functionList.DB.functionParameter.life.name",
  5565. detail: "formula.functionList.DB.functionParameter.life.detail",
  5566. example: "6",
  5567. require: 1,
  5568. repeat: 0
  5569. },
  5570. {
  5571. name: "formula.functionList.DB.functionParameter.period.name",
  5572. detail: "formula.functionList.DB.functionParameter.period.detail",
  5573. example: "1",
  5574. require: 1,
  5575. repeat: 0
  5576. },
  5577. {
  5578. name: "formula.functionList.DB.functionParameter.month.name",
  5579. detail: "formula.functionList.DB.functionParameter.month.detail",
  5580. example: "7",
  5581. require: 0,
  5582. repeat: 0
  5583. }
  5584. ]
  5585. },
  5586. {
  5587. functionName: C.DDB,
  5588. functionType: t.Financial,
  5589. description: "formula.functionList.DDB.description",
  5590. abstract: "formula.functionList.DDB.abstract",
  5591. functionParameter: [
  5592. {
  5593. name: "formula.functionList.DDB.functionParameter.cost.name",
  5594. detail: "formula.functionList.DDB.functionParameter.cost.detail",
  5595. example: "24000",
  5596. require: 1,
  5597. repeat: 0
  5598. },
  5599. {
  5600. name: "formula.functionList.DDB.functionParameter.salvage.name",
  5601. detail: "formula.functionList.DDB.functionParameter.salvage.detail",
  5602. example: "3000",
  5603. require: 1,
  5604. repeat: 0
  5605. },
  5606. {
  5607. name: "formula.functionList.DDB.functionParameter.life.name",
  5608. detail: "formula.functionList.DDB.functionParameter.life.detail",
  5609. example: "10",
  5610. require: 1,
  5611. repeat: 0
  5612. },
  5613. {
  5614. name: "formula.functionList.DDB.functionParameter.period.name",
  5615. detail: "formula.functionList.DDB.functionParameter.period.detail",
  5616. example: "1",
  5617. require: 1,
  5618. repeat: 0
  5619. },
  5620. {
  5621. name: "formula.functionList.DDB.functionParameter.factor.name",
  5622. detail: "formula.functionList.DDB.functionParameter.factor.detail",
  5623. example: "2",
  5624. require: 0,
  5625. repeat: 0
  5626. }
  5627. ]
  5628. },
  5629. {
  5630. functionName: C.DISC,
  5631. functionType: t.Financial,
  5632. description: "formula.functionList.DISC.description",
  5633. abstract: "formula.functionList.DISC.abstract",
  5634. functionParameter: [
  5635. {
  5636. name: "formula.functionList.DISC.functionParameter.settlement.name",
  5637. detail: "formula.functionList.DISC.functionParameter.settlement.detail",
  5638. example: '"2018-7-1"',
  5639. require: 1,
  5640. repeat: 0
  5641. },
  5642. {
  5643. name: "formula.functionList.DISC.functionParameter.maturity.name",
  5644. detail: "formula.functionList.DISC.functionParameter.maturity.detail",
  5645. example: '"2048-1-1"',
  5646. require: 1,
  5647. repeat: 0
  5648. },
  5649. {
  5650. name: "formula.functionList.DISC.functionParameter.pr.name",
  5651. detail: "formula.functionList.DISC.functionParameter.pr.detail",
  5652. example: "97.975",
  5653. require: 1,
  5654. repeat: 0
  5655. },
  5656. {
  5657. name: "formula.functionList.DISC.functionParameter.redemption.name",
  5658. detail: "formula.functionList.DISC.functionParameter.redemption.detail",
  5659. example: "100",
  5660. require: 1,
  5661. repeat: 0
  5662. },
  5663. {
  5664. name: "formula.functionList.DISC.functionParameter.basis.name",
  5665. detail: "formula.functionList.DISC.functionParameter.basis.detail",
  5666. example: "1",
  5667. require: 0,
  5668. repeat: 0
  5669. }
  5670. ]
  5671. },
  5672. {
  5673. functionName: C.DOLLARDE,
  5674. functionType: t.Financial,
  5675. description: "formula.functionList.DOLLARDE.description",
  5676. abstract: "formula.functionList.DOLLARDE.abstract",
  5677. functionParameter: [
  5678. {
  5679. name: "formula.functionList.DOLLARDE.functionParameter.fractionalDollar.name",
  5680. detail: "formula.functionList.DOLLARDE.functionParameter.fractionalDollar.detail",
  5681. example: "1.02",
  5682. require: 1,
  5683. repeat: 0
  5684. },
  5685. {
  5686. name: "formula.functionList.DOLLARDE.functionParameter.fraction.name",
  5687. detail: "formula.functionList.DOLLARDE.functionParameter.fraction.detail",
  5688. example: "16",
  5689. require: 1,
  5690. repeat: 0
  5691. }
  5692. ]
  5693. },
  5694. {
  5695. functionName: C.DOLLARFR,
  5696. functionType: t.Financial,
  5697. description: "formula.functionList.DOLLARFR.description",
  5698. abstract: "formula.functionList.DOLLARFR.abstract",
  5699. functionParameter: [
  5700. {
  5701. name: "formula.functionList.DOLLARFR.functionParameter.decimalDollar.name",
  5702. detail: "formula.functionList.DOLLARFR.functionParameter.decimalDollar.detail",
  5703. example: "1.125",
  5704. require: 1,
  5705. repeat: 0
  5706. },
  5707. {
  5708. name: "formula.functionList.DOLLARFR.functionParameter.fraction.name",
  5709. detail: "formula.functionList.DOLLARFR.functionParameter.fraction.detail",
  5710. example: "16",
  5711. require: 1,
  5712. repeat: 0
  5713. }
  5714. ]
  5715. },
  5716. {
  5717. functionName: C.DURATION,
  5718. functionType: t.Financial,
  5719. description: "formula.functionList.DURATION.description",
  5720. abstract: "formula.functionList.DURATION.abstract",
  5721. functionParameter: [
  5722. {
  5723. name: "formula.functionList.DURATION.functionParameter.settlement.name",
  5724. detail: "formula.functionList.DURATION.functionParameter.settlement.detail",
  5725. example: '"2018-7-1"',
  5726. require: 1,
  5727. repeat: 0
  5728. },
  5729. {
  5730. name: "formula.functionList.DURATION.functionParameter.maturity.name",
  5731. detail: "formula.functionList.DURATION.functionParameter.maturity.detail",
  5732. example: '"2048-1-1"',
  5733. require: 1,
  5734. repeat: 0
  5735. },
  5736. {
  5737. name: "formula.functionList.DURATION.functionParameter.coupon.name",
  5738. detail: "formula.functionList.DURATION.functionParameter.coupon.detail",
  5739. example: "0.08",
  5740. require: 1,
  5741. repeat: 0
  5742. },
  5743. {
  5744. name: "formula.functionList.DURATION.functionParameter.yld.name",
  5745. detail: "formula.functionList.DURATION.functionParameter.yld.detail",
  5746. example: "0.09",
  5747. require: 1,
  5748. repeat: 0
  5749. },
  5750. {
  5751. name: "formula.functionList.DURATION.functionParameter.frequency.name",
  5752. detail: "formula.functionList.DURATION.functionParameter.frequency.detail",
  5753. example: "2",
  5754. require: 1,
  5755. repeat: 0
  5756. },
  5757. {
  5758. name: "formula.functionList.DURATION.functionParameter.basis.name",
  5759. detail: "formula.functionList.DURATION.functionParameter.basis.detail",
  5760. example: "1",
  5761. require: 0,
  5762. repeat: 0
  5763. }
  5764. ]
  5765. },
  5766. {
  5767. functionName: C.EFFECT,
  5768. functionType: t.Financial,
  5769. description: "formula.functionList.EFFECT.description",
  5770. abstract: "formula.functionList.EFFECT.abstract",
  5771. functionParameter: [
  5772. {
  5773. name: "formula.functionList.EFFECT.functionParameter.nominalRate.name",
  5774. detail: "formula.functionList.EFFECT.functionParameter.nominalRate.detail",
  5775. example: "0.0525",
  5776. require: 1,
  5777. repeat: 0
  5778. },
  5779. {
  5780. name: "formula.functionList.EFFECT.functionParameter.npery.name",
  5781. detail: "formula.functionList.EFFECT.functionParameter.npery.detail",
  5782. example: "4",
  5783. require: 1,
  5784. repeat: 0
  5785. }
  5786. ]
  5787. },
  5788. {
  5789. functionName: C.FV,
  5790. functionType: t.Financial,
  5791. description: "formula.functionList.FV.description",
  5792. abstract: "formula.functionList.FV.abstract",
  5793. functionParameter: [
  5794. {
  5795. name: "formula.functionList.FV.functionParameter.rate.name",
  5796. detail: "formula.functionList.FV.functionParameter.rate.detail",
  5797. example: "0.06/12",
  5798. require: 1,
  5799. repeat: 0
  5800. },
  5801. {
  5802. name: "formula.functionList.FV.functionParameter.nper.name",
  5803. detail: "formula.functionList.FV.functionParameter.nper.detail",
  5804. example: "10",
  5805. require: 1,
  5806. repeat: 0
  5807. },
  5808. {
  5809. name: "formula.functionList.FV.functionParameter.pmt.name",
  5810. detail: "formula.functionList.FV.functionParameter.pmt.detail",
  5811. example: "-200",
  5812. require: 1,
  5813. repeat: 0
  5814. },
  5815. {
  5816. name: "formula.functionList.FV.functionParameter.pv.name",
  5817. detail: "formula.functionList.FV.functionParameter.pv.detail",
  5818. example: "-500",
  5819. require: 0,
  5820. repeat: 0
  5821. },
  5822. {
  5823. name: "formula.functionList.FV.functionParameter.type.name",
  5824. detail: "formula.functionList.FV.functionParameter.type.detail",
  5825. example: "1",
  5826. require: 0,
  5827. repeat: 0
  5828. }
  5829. ]
  5830. },
  5831. {
  5832. functionName: C.FVSCHEDULE,
  5833. functionType: t.Financial,
  5834. description: "formula.functionList.FVSCHEDULE.description",
  5835. abstract: "formula.functionList.FVSCHEDULE.abstract",
  5836. functionParameter: [
  5837. {
  5838. name: "formula.functionList.FVSCHEDULE.functionParameter.principal.name",
  5839. detail: "formula.functionList.FVSCHEDULE.functionParameter.principal.detail",
  5840. example: "1",
  5841. require: 1,
  5842. repeat: 0
  5843. },
  5844. {
  5845. name: "formula.functionList.FVSCHEDULE.functionParameter.schedule.name",
  5846. detail: "formula.functionList.FVSCHEDULE.functionParameter.schedule.detail",
  5847. example: "A1:A4",
  5848. require: 1,
  5849. repeat: 0
  5850. }
  5851. ]
  5852. },
  5853. {
  5854. functionName: C.INTRATE,
  5855. functionType: t.Financial,
  5856. description: "formula.functionList.INTRATE.description",
  5857. abstract: "formula.functionList.INTRATE.abstract",
  5858. functionParameter: [
  5859. {
  5860. name: "formula.functionList.INTRATE.functionParameter.settlement.name",
  5861. detail: "formula.functionList.INTRATE.functionParameter.settlement.detail",
  5862. example: '"2008-2-15"',
  5863. require: 1,
  5864. repeat: 0
  5865. },
  5866. {
  5867. name: "formula.functionList.INTRATE.functionParameter.maturity.name",
  5868. detail: "formula.functionList.INTRATE.functionParameter.maturity.detail",
  5869. example: '"2008-5-15"',
  5870. require: 1,
  5871. repeat: 0
  5872. },
  5873. {
  5874. name: "formula.functionList.INTRATE.functionParameter.investment.name",
  5875. detail: "formula.functionList.INTRATE.functionParameter.investment.detail",
  5876. example: "10000000",
  5877. require: 1,
  5878. repeat: 0
  5879. },
  5880. {
  5881. name: "formula.functionList.INTRATE.functionParameter.redemption.name",
  5882. detail: "formula.functionList.INTRATE.functionParameter.redemption.detail",
  5883. example: "10144200",
  5884. require: 1,
  5885. repeat: 0
  5886. },
  5887. {
  5888. name: "formula.functionList.INTRATE.functionParameter.basis.name",
  5889. detail: "formula.functionList.INTRATE.functionParameter.basis.detail",
  5890. example: "2",
  5891. require: 0,
  5892. repeat: 0
  5893. }
  5894. ]
  5895. },
  5896. {
  5897. functionName: C.IPMT,
  5898. functionType: t.Financial,
  5899. description: "formula.functionList.IPMT.description",
  5900. abstract: "formula.functionList.IPMT.abstract",
  5901. functionParameter: [
  5902. {
  5903. name: "formula.functionList.IPMT.functionParameter.rate.name",
  5904. detail: "formula.functionList.IPMT.functionParameter.rate.detail",
  5905. example: "0.1/12",
  5906. require: 1,
  5907. repeat: 0
  5908. },
  5909. {
  5910. name: "formula.functionList.IPMT.functionParameter.per.name",
  5911. detail: "formula.functionList.IPMT.functionParameter.per.detail",
  5912. example: "1",
  5913. require: 1,
  5914. repeat: 0
  5915. },
  5916. {
  5917. name: "formula.functionList.IPMT.functionParameter.nper.name",
  5918. detail: "formula.functionList.IPMT.functionParameter.nper.detail",
  5919. example: "3*12",
  5920. require: 1,
  5921. repeat: 0
  5922. },
  5923. {
  5924. name: "formula.functionList.IPMT.functionParameter.pv.name",
  5925. detail: "formula.functionList.IPMT.functionParameter.pv.detail",
  5926. example: "80000",
  5927. require: 1,
  5928. repeat: 0
  5929. },
  5930. {
  5931. name: "formula.functionList.IPMT.functionParameter.fv.name",
  5932. detail: "formula.functionList.IPMT.functionParameter.fv.detail",
  5933. example: "0",
  5934. require: 0,
  5935. repeat: 0
  5936. },
  5937. {
  5938. name: "formula.functionList.IPMT.functionParameter.type.name",
  5939. detail: "formula.functionList.IPMT.functionParameter.type.detail",
  5940. example: "0",
  5941. require: 0,
  5942. repeat: 0
  5943. }
  5944. ]
  5945. },
  5946. {
  5947. functionName: C.IRR,
  5948. functionType: t.Financial,
  5949. description: "formula.functionList.IRR.description",
  5950. abstract: "formula.functionList.IRR.abstract",
  5951. functionParameter: [
  5952. {
  5953. name: "formula.functionList.IRR.functionParameter.values.name",
  5954. detail: "formula.functionList.IRR.functionParameter.values.detail",
  5955. example: "A1:A4",
  5956. require: 1,
  5957. repeat: 0
  5958. },
  5959. {
  5960. name: "formula.functionList.IRR.functionParameter.guess.name",
  5961. detail: "formula.functionList.IRR.functionParameter.guess.detail",
  5962. example: "0.1",
  5963. require: 0,
  5964. repeat: 0
  5965. }
  5966. ]
  5967. },
  5968. {
  5969. functionName: C.ISPMT,
  5970. functionType: t.Financial,
  5971. description: "formula.functionList.ISPMT.description",
  5972. abstract: "formula.functionList.ISPMT.abstract",
  5973. functionParameter: [
  5974. {
  5975. name: "formula.functionList.ISPMT.functionParameter.rate.name",
  5976. detail: "formula.functionList.ISPMT.functionParameter.rate.detail",
  5977. example: "0.1",
  5978. require: 1,
  5979. repeat: 0
  5980. },
  5981. {
  5982. name: "formula.functionList.ISPMT.functionParameter.per.name",
  5983. detail: "formula.functionList.ISPMT.functionParameter.per.detail",
  5984. example: "2",
  5985. require: 1,
  5986. repeat: 0
  5987. },
  5988. {
  5989. name: "formula.functionList.ISPMT.functionParameter.nper.name",
  5990. detail: "formula.functionList.ISPMT.functionParameter.nper.detail",
  5991. example: "5",
  5992. require: 1,
  5993. repeat: 0
  5994. },
  5995. {
  5996. name: "formula.functionList.ISPMT.functionParameter.pv.name",
  5997. detail: "formula.functionList.ISPMT.functionParameter.pv.detail",
  5998. example: "1000",
  5999. require: 1,
  6000. repeat: 0
  6001. }
  6002. ]
  6003. },
  6004. {
  6005. functionName: C.MDURATION,
  6006. functionType: t.Financial,
  6007. description: "formula.functionList.MDURATION.description",
  6008. abstract: "formula.functionList.MDURATION.abstract",
  6009. functionParameter: [
  6010. {
  6011. name: "formula.functionList.MDURATION.functionParameter.settlement.name",
  6012. detail: "formula.functionList.MDURATION.functionParameter.settlement.detail",
  6013. example: '"2018-7-1"',
  6014. require: 1,
  6015. repeat: 0
  6016. },
  6017. {
  6018. name: "formula.functionList.MDURATION.functionParameter.maturity.name",
  6019. detail: "formula.functionList.MDURATION.functionParameter.maturity.detail",
  6020. example: '"2048-1-1"',
  6021. require: 1,
  6022. repeat: 0
  6023. },
  6024. {
  6025. name: "formula.functionList.MDURATION.functionParameter.coupon.name",
  6026. detail: "formula.functionList.MDURATION.functionParameter.coupon.detail",
  6027. example: "0.08",
  6028. require: 1,
  6029. repeat: 0
  6030. },
  6031. {
  6032. name: "formula.functionList.MDURATION.functionParameter.yld.name",
  6033. detail: "formula.functionList.MDURATION.functionParameter.yld.detail",
  6034. example: "0.09",
  6035. require: 1,
  6036. repeat: 0
  6037. },
  6038. {
  6039. name: "formula.functionList.MDURATION.functionParameter.frequency.name",
  6040. detail: "formula.functionList.MDURATION.functionParameter.frequency.detail",
  6041. example: "2",
  6042. require: 1,
  6043. repeat: 0
  6044. },
  6045. {
  6046. name: "formula.functionList.MDURATION.functionParameter.basis.name",
  6047. detail: "formula.functionList.MDURATION.functionParameter.basis.detail",
  6048. example: "1",
  6049. require: 0,
  6050. repeat: 0
  6051. }
  6052. ]
  6053. },
  6054. {
  6055. functionName: C.MIRR,
  6056. functionType: t.Financial,
  6057. description: "formula.functionList.MIRR.description",
  6058. abstract: "formula.functionList.MIRR.abstract",
  6059. functionParameter: [
  6060. {
  6061. name: "formula.functionList.MIRR.functionParameter.values.name",
  6062. detail: "formula.functionList.MIRR.functionParameter.values.detail",
  6063. example: "A1:A4",
  6064. require: 1,
  6065. repeat: 0
  6066. },
  6067. {
  6068. name: "formula.functionList.MIRR.functionParameter.financeRate.name",
  6069. detail: "formula.functionList.MIRR.functionParameter.financeRate.detail",
  6070. example: "0.1",
  6071. require: 1,
  6072. repeat: 0
  6073. },
  6074. {
  6075. name: "formula.functionList.MIRR.functionParameter.reinvestRate.name",
  6076. detail: "formula.functionList.MIRR.functionParameter.reinvestRate.detail",
  6077. example: "0.12",
  6078. require: 1,
  6079. repeat: 0
  6080. }
  6081. ]
  6082. },
  6083. {
  6084. functionName: C.NOMINAL,
  6085. functionType: t.Financial,
  6086. description: "formula.functionList.NOMINAL.description",
  6087. abstract: "formula.functionList.NOMINAL.abstract",
  6088. functionParameter: [
  6089. {
  6090. name: "formula.functionList.NOMINAL.functionParameter.effectRate.name",
  6091. detail: "formula.functionList.NOMINAL.functionParameter.effectRate.detail",
  6092. example: "0.053543",
  6093. require: 1,
  6094. repeat: 0
  6095. },
  6096. {
  6097. name: "formula.functionList.NOMINAL.functionParameter.npery.name",
  6098. detail: "formula.functionList.NOMINAL.functionParameter.npery.detail",
  6099. example: "4",
  6100. require: 1,
  6101. repeat: 0
  6102. }
  6103. ]
  6104. },
  6105. {
  6106. functionName: C.NPER,
  6107. functionType: t.Financial,
  6108. description: "formula.functionList.NPER.description",
  6109. abstract: "formula.functionList.NPER.abstract",
  6110. functionParameter: [
  6111. {
  6112. name: "formula.functionList.NPER.functionParameter.rate.name",
  6113. detail: "formula.functionList.NPER.functionParameter.rate.detail",
  6114. example: "0.12/12",
  6115. require: 1,
  6116. repeat: 0
  6117. },
  6118. {
  6119. name: "formula.functionList.NPER.functionParameter.pmt.name",
  6120. detail: "formula.functionList.NPER.functionParameter.pmt.detail",
  6121. example: "-100",
  6122. require: 1,
  6123. repeat: 0
  6124. },
  6125. {
  6126. name: "formula.functionList.NPER.functionParameter.pv.name",
  6127. detail: "formula.functionList.NPER.functionParameter.pv.detail",
  6128. example: "-1000",
  6129. require: 1,
  6130. repeat: 0
  6131. },
  6132. {
  6133. name: "formula.functionList.NPER.functionParameter.fv.name",
  6134. detail: "formula.functionList.NPER.functionParameter.fv.detail",
  6135. example: "10000",
  6136. require: 0,
  6137. repeat: 0
  6138. },
  6139. {
  6140. name: "formula.functionList.NPER.functionParameter.type.name",
  6141. detail: "formula.functionList.NPER.functionParameter.type.detail",
  6142. example: "1",
  6143. require: 0,
  6144. repeat: 0
  6145. }
  6146. ]
  6147. },
  6148. {
  6149. functionName: C.NPV,
  6150. functionType: t.Financial,
  6151. description: "formula.functionList.NPV.description",
  6152. abstract: "formula.functionList.NPV.abstract",
  6153. functionParameter: [
  6154. {
  6155. name: "formula.functionList.NPV.functionParameter.rate.name",
  6156. detail: "formula.functionList.NPV.functionParameter.rate.detail",
  6157. example: "0.1",
  6158. require: 1,
  6159. repeat: 0
  6160. },
  6161. {
  6162. name: "formula.functionList.NPV.functionParameter.value1.name",
  6163. detail: "formula.functionList.NPV.functionParameter.value1.detail",
  6164. example: "A1:A4",
  6165. require: 1,
  6166. repeat: 0
  6167. },
  6168. {
  6169. name: "formula.functionList.NPV.functionParameter.value2.name",
  6170. detail: "formula.functionList.NPV.functionParameter.value2.detail",
  6171. example: "-9000",
  6172. require: 0,
  6173. repeat: 1
  6174. }
  6175. ]
  6176. },
  6177. {
  6178. functionName: C.ODDFPRICE,
  6179. functionType: t.Financial,
  6180. description: "formula.functionList.ODDFPRICE.description",
  6181. abstract: "formula.functionList.ODDFPRICE.abstract",
  6182. functionParameter: [
  6183. {
  6184. name: "formula.functionList.ODDFPRICE.functionParameter.settlement.name",
  6185. detail: "formula.functionList.ODDFPRICE.functionParameter.settlement.detail",
  6186. example: '"2008-11-11"',
  6187. require: 1,
  6188. repeat: 0
  6189. },
  6190. {
  6191. name: "formula.functionList.ODDFPRICE.functionParameter.maturity.name",
  6192. detail: "formula.functionList.ODDFPRICE.functionParameter.maturity.detail",
  6193. example: '"2021-3-1"',
  6194. require: 1,
  6195. repeat: 0
  6196. },
  6197. {
  6198. name: "formula.functionList.ODDFPRICE.functionParameter.issue.name",
  6199. detail: "formula.functionList.ODDFPRICE.functionParameter.issue.detail",
  6200. example: '"2008-10-15"',
  6201. require: 1,
  6202. repeat: 0
  6203. },
  6204. {
  6205. name: "formula.functionList.ODDFPRICE.functionParameter.firstCoupon.name",
  6206. detail: "formula.functionList.ODDFPRICE.functionParameter.firstCoupon.detail",
  6207. example: '"2009-3-1"',
  6208. require: 1,
  6209. repeat: 0
  6210. },
  6211. {
  6212. name: "formula.functionList.ODDFPRICE.functionParameter.rate.name",
  6213. detail: "formula.functionList.ODDFPRICE.functionParameter.rate.detail",
  6214. example: "0.0785",
  6215. require: 1,
  6216. repeat: 0
  6217. },
  6218. {
  6219. name: "formula.functionList.ODDFPRICE.functionParameter.yld.name",
  6220. detail: "formula.functionList.ODDFPRICE.functionParameter.yld.detail",
  6221. example: "0.0625",
  6222. require: 1,
  6223. repeat: 0
  6224. },
  6225. {
  6226. name: "formula.functionList.ODDFPRICE.functionParameter.redemption.name",
  6227. detail: "formula.functionList.ODDFPRICE.functionParameter.redemption.detail",
  6228. example: "100",
  6229. require: 1,
  6230. repeat: 0
  6231. },
  6232. {
  6233. name: "formula.functionList.ODDFPRICE.functionParameter.frequency.name",
  6234. detail: "formula.functionList.ODDFPRICE.functionParameter.frequency.detail",
  6235. example: "2",
  6236. require: 1,
  6237. repeat: 0
  6238. },
  6239. {
  6240. name: "formula.functionList.ODDFPRICE.functionParameter.basis.name",
  6241. detail: "formula.functionList.ODDFPRICE.functionParameter.basis.detail",
  6242. example: "1",
  6243. require: 0,
  6244. repeat: 0
  6245. }
  6246. ]
  6247. },
  6248. {
  6249. functionName: C.ODDFYIELD,
  6250. functionType: t.Financial,
  6251. description: "formula.functionList.ODDFYIELD.description",
  6252. abstract: "formula.functionList.ODDFYIELD.abstract",
  6253. functionParameter: [
  6254. {
  6255. name: "formula.functionList.ODDFYIELD.functionParameter.settlement.name",
  6256. detail: "formula.functionList.ODDFYIELD.functionParameter.settlement.detail",
  6257. example: '"2008-11-11"',
  6258. require: 1,
  6259. repeat: 0
  6260. },
  6261. {
  6262. name: "formula.functionList.ODDFYIELD.functionParameter.maturity.name",
  6263. detail: "formula.functionList.ODDFYIELD.functionParameter.maturity.detail",
  6264. example: '"2021-3-1"',
  6265. require: 1,
  6266. repeat: 0
  6267. },
  6268. {
  6269. name: "formula.functionList.ODDFYIELD.functionParameter.issue.name",
  6270. detail: "formula.functionList.ODDFYIELD.functionParameter.issue.detail",
  6271. example: '"2008-10-15"',
  6272. require: 1,
  6273. repeat: 0
  6274. },
  6275. {
  6276. name: "formula.functionList.ODDFYIELD.functionParameter.firstCoupon.name",
  6277. detail: "formula.functionList.ODDFYIELD.functionParameter.firstCoupon.detail",
  6278. example: '"2009-3-1"',
  6279. require: 1,
  6280. repeat: 0
  6281. },
  6282. {
  6283. name: "formula.functionList.ODDFYIELD.functionParameter.rate.name",
  6284. detail: "formula.functionList.ODDFYIELD.functionParameter.rate.detail",
  6285. example: "0.0575",
  6286. require: 1,
  6287. repeat: 0
  6288. },
  6289. {
  6290. name: "formula.functionList.ODDFYIELD.functionParameter.pr.name",
  6291. detail: "formula.functionList.ODDFYIELD.functionParameter.pr.detail",
  6292. example: "84.5",
  6293. require: 1,
  6294. repeat: 0
  6295. },
  6296. {
  6297. name: "formula.functionList.ODDFYIELD.functionParameter.redemption.name",
  6298. detail: "formula.functionList.ODDFYIELD.functionParameter.redemption.detail",
  6299. example: "100",
  6300. require: 1,
  6301. repeat: 0
  6302. },
  6303. {
  6304. name: "formula.functionList.ODDFYIELD.functionParameter.frequency.name",
  6305. detail: "formula.functionList.ODDFYIELD.functionParameter.frequency.detail",
  6306. example: "2",
  6307. require: 1,
  6308. repeat: 0
  6309. },
  6310. {
  6311. name: "formula.functionList.ODDFYIELD.functionParameter.basis.name",
  6312. detail: "formula.functionList.ODDFYIELD.functionParameter.basis.detail",
  6313. example: "0",
  6314. require: 0,
  6315. repeat: 0
  6316. }
  6317. ]
  6318. },
  6319. {
  6320. functionName: C.ODDLPRICE,
  6321. functionType: t.Financial,
  6322. description: "formula.functionList.ODDLPRICE.description",
  6323. abstract: "formula.functionList.ODDLPRICE.abstract",
  6324. functionParameter: [
  6325. {
  6326. name: "formula.functionList.ODDLPRICE.functionParameter.settlement.name",
  6327. detail: "formula.functionList.ODDLPRICE.functionParameter.settlement.detail",
  6328. example: '"2008-11-11"',
  6329. require: 1,
  6330. repeat: 0
  6331. },
  6332. {
  6333. name: "formula.functionList.ODDLPRICE.functionParameter.maturity.name",
  6334. detail: "formula.functionList.ODDLPRICE.functionParameter.maturity.detail",
  6335. example: '"2021-3-1"',
  6336. require: 1,
  6337. repeat: 0
  6338. },
  6339. {
  6340. name: "formula.functionList.ODDLPRICE.functionParameter.lastInterest.name",
  6341. detail: "formula.functionList.ODDLPRICE.functionParameter.lastInterest.detail",
  6342. example: '"2009-3-1"',
  6343. require: 1,
  6344. repeat: 0
  6345. },
  6346. {
  6347. name: "formula.functionList.ODDLPRICE.functionParameter.rate.name",
  6348. detail: "formula.functionList.ODDLPRICE.functionParameter.rate.detail",
  6349. example: "0.0785",
  6350. require: 1,
  6351. repeat: 0
  6352. },
  6353. {
  6354. name: "formula.functionList.ODDLPRICE.functionParameter.yld.name",
  6355. detail: "formula.functionList.ODDLPRICE.functionParameter.yld.detail",
  6356. example: "0.0625",
  6357. require: 1,
  6358. repeat: 0
  6359. },
  6360. {
  6361. name: "formula.functionList.ODDLPRICE.functionParameter.redemption.name",
  6362. detail: "formula.functionList.ODDLPRICE.functionParameter.redemption.detail",
  6363. example: "100",
  6364. require: 1,
  6365. repeat: 0
  6366. },
  6367. {
  6368. name: "formula.functionList.ODDLPRICE.functionParameter.frequency.name",
  6369. detail: "formula.functionList.ODDLPRICE.functionParameter.frequency.detail",
  6370. example: "2",
  6371. require: 1,
  6372. repeat: 0
  6373. },
  6374. {
  6375. name: "formula.functionList.ODDLPRICE.functionParameter.basis.name",
  6376. detail: "formula.functionList.ODDLPRICE.functionParameter.basis.detail",
  6377. example: "1",
  6378. require: 0,
  6379. repeat: 0
  6380. }
  6381. ]
  6382. },
  6383. {
  6384. functionName: C.ODDLYIELD,
  6385. functionType: t.Financial,
  6386. description: "formula.functionList.ODDLYIELD.description",
  6387. abstract: "formula.functionList.ODDLYIELD.abstract",
  6388. functionParameter: [
  6389. {
  6390. name: "formula.functionList.ODDLYIELD.functionParameter.settlement.name",
  6391. detail: "formula.functionList.ODDLYIELD.functionParameter.settlement.detail",
  6392. example: '"2008-11-11"',
  6393. require: 1,
  6394. repeat: 0
  6395. },
  6396. {
  6397. name: "formula.functionList.ODDLYIELD.functionParameter.maturity.name",
  6398. detail: "formula.functionList.ODDLYIELD.functionParameter.maturity.detail",
  6399. example: '"2021-3-1"',
  6400. require: 1,
  6401. repeat: 0
  6402. },
  6403. {
  6404. name: "formula.functionList.ODDLYIELD.functionParameter.lastInterest.name",
  6405. detail: "formula.functionList.ODDLYIELD.functionParameter.lastInterest.detail",
  6406. example: '"2008-10-15"',
  6407. require: 1,
  6408. repeat: 0
  6409. },
  6410. {
  6411. name: "formula.functionList.ODDLYIELD.functionParameter.rate.name",
  6412. detail: "formula.functionList.ODDLYIELD.functionParameter.rate.detail",
  6413. example: "0.0575",
  6414. require: 1,
  6415. repeat: 0
  6416. },
  6417. {
  6418. name: "formula.functionList.ODDLYIELD.functionParameter.pr.name",
  6419. detail: "formula.functionList.ODDLYIELD.functionParameter.pr.detail",
  6420. example: "84.5",
  6421. require: 1,
  6422. repeat: 0
  6423. },
  6424. {
  6425. name: "formula.functionList.ODDLYIELD.functionParameter.redemption.name",
  6426. detail: "formula.functionList.ODDLYIELD.functionParameter.redemption.detail",
  6427. example: "100",
  6428. require: 1,
  6429. repeat: 0
  6430. },
  6431. {
  6432. name: "formula.functionList.ODDLYIELD.functionParameter.frequency.name",
  6433. detail: "formula.functionList.ODDLYIELD.functionParameter.frequency.detail",
  6434. example: "2",
  6435. require: 1,
  6436. repeat: 0
  6437. },
  6438. {
  6439. name: "formula.functionList.ODDLYIELD.functionParameter.basis.name",
  6440. detail: "formula.functionList.ODDLYIELD.functionParameter.basis.detail",
  6441. example: "0",
  6442. require: 0,
  6443. repeat: 0
  6444. }
  6445. ]
  6446. },
  6447. {
  6448. functionName: C.PDURATION,
  6449. functionType: t.Financial,
  6450. description: "formula.functionList.PDURATION.description",
  6451. abstract: "formula.functionList.PDURATION.abstract",
  6452. functionParameter: [
  6453. {
  6454. name: "formula.functionList.PDURATION.functionParameter.rate.name",
  6455. detail: "formula.functionList.PDURATION.functionParameter.rate.detail",
  6456. example: "0.025",
  6457. require: 1,
  6458. repeat: 0
  6459. },
  6460. {
  6461. name: "formula.functionList.PDURATION.functionParameter.pv.name",
  6462. detail: "formula.functionList.PDURATION.functionParameter.pv.detail",
  6463. example: "2000",
  6464. require: 1,
  6465. repeat: 0
  6466. },
  6467. {
  6468. name: "formula.functionList.PDURATION.functionParameter.fv.name",
  6469. detail: "formula.functionList.PDURATION.functionParameter.fv.detail",
  6470. example: "2200",
  6471. require: 1,
  6472. repeat: 0
  6473. }
  6474. ]
  6475. },
  6476. {
  6477. functionName: C.PMT,
  6478. functionType: t.Financial,
  6479. description: "formula.functionList.PMT.description",
  6480. abstract: "formula.functionList.PMT.abstract",
  6481. functionParameter: [
  6482. {
  6483. name: "formula.functionList.PMT.functionParameter.rate.name",
  6484. detail: "formula.functionList.PMT.functionParameter.rate.detail",
  6485. example: "0.08/12",
  6486. require: 1,
  6487. repeat: 0
  6488. },
  6489. {
  6490. name: "formula.functionList.PMT.functionParameter.nper.name",
  6491. detail: "formula.functionList.PMT.functionParameter.nper.detail",
  6492. example: "10",
  6493. require: 1,
  6494. repeat: 0
  6495. },
  6496. {
  6497. name: "formula.functionList.PMT.functionParameter.pv.name",
  6498. detail: "formula.functionList.PMT.functionParameter.pv.detail",
  6499. example: "10000",
  6500. require: 1,
  6501. repeat: 0
  6502. },
  6503. {
  6504. name: "formula.functionList.PMT.functionParameter.fv.name",
  6505. detail: "formula.functionList.PMT.functionParameter.fv.detail",
  6506. example: "0",
  6507. require: 0,
  6508. repeat: 0
  6509. },
  6510. {
  6511. name: "formula.functionList.PMT.functionParameter.type.name",
  6512. detail: "formula.functionList.PMT.functionParameter.type.detail",
  6513. example: "0",
  6514. require: 0,
  6515. repeat: 0
  6516. }
  6517. ]
  6518. },
  6519. {
  6520. functionName: C.PPMT,
  6521. functionType: t.Financial,
  6522. description: "formula.functionList.PPMT.description",
  6523. abstract: "formula.functionList.PPMT.abstract",
  6524. functionParameter: [
  6525. {
  6526. name: "formula.functionList.PPMT.functionParameter.rate.name",
  6527. detail: "formula.functionList.PPMT.functionParameter.rate.detail",
  6528. example: "0.1/12",
  6529. require: 1,
  6530. repeat: 0
  6531. },
  6532. {
  6533. name: "formula.functionList.PPMT.functionParameter.per.name",
  6534. detail: "formula.functionList.PPMT.functionParameter.per.detail",
  6535. example: "1",
  6536. require: 1,
  6537. repeat: 0
  6538. },
  6539. {
  6540. name: "formula.functionList.PPMT.functionParameter.nper.name",
  6541. detail: "formula.functionList.PPMT.functionParameter.nper.detail",
  6542. example: "3*12",
  6543. require: 1,
  6544. repeat: 0
  6545. },
  6546. {
  6547. name: "formula.functionList.PPMT.functionParameter.pv.name",
  6548. detail: "formula.functionList.PPMT.functionParameter.pv.detail",
  6549. example: "80000",
  6550. require: 1,
  6551. repeat: 0
  6552. },
  6553. {
  6554. name: "formula.functionList.PPMT.functionParameter.fv.name",
  6555. detail: "formula.functionList.PPMT.functionParameter.fv.detail",
  6556. example: "0",
  6557. require: 0,
  6558. repeat: 0
  6559. },
  6560. {
  6561. name: "formula.functionList.PPMT.functionParameter.type.name",
  6562. detail: "formula.functionList.PPMT.functionParameter.type.detail",
  6563. example: "0",
  6564. require: 0,
  6565. repeat: 0
  6566. }
  6567. ]
  6568. },
  6569. {
  6570. functionName: C.PRICE,
  6571. functionType: t.Financial,
  6572. description: "formula.functionList.PRICE.description",
  6573. abstract: "formula.functionList.PRICE.abstract",
  6574. functionParameter: [
  6575. {
  6576. name: "formula.functionList.PRICE.functionParameter.settlement.name",
  6577. detail: "formula.functionList.PRICE.functionParameter.settlement.detail",
  6578. example: '"2008-11-11"',
  6579. require: 1,
  6580. repeat: 0
  6581. },
  6582. {
  6583. name: "formula.functionList.PRICE.functionParameter.maturity.name",
  6584. detail: "formula.functionList.PRICE.functionParameter.maturity.detail",
  6585. example: '"2021-3-1"',
  6586. require: 1,
  6587. repeat: 0
  6588. },
  6589. {
  6590. name: "formula.functionList.PRICE.functionParameter.rate.name",
  6591. detail: "formula.functionList.PRICE.functionParameter.rate.detail",
  6592. example: "0.0785",
  6593. require: 1,
  6594. repeat: 0
  6595. },
  6596. {
  6597. name: "formula.functionList.PRICE.functionParameter.yld.name",
  6598. detail: "formula.functionList.PRICE.functionParameter.yld.detail",
  6599. example: "0.0625",
  6600. require: 1,
  6601. repeat: 0
  6602. },
  6603. {
  6604. name: "formula.functionList.PRICE.functionParameter.redemption.name",
  6605. detail: "formula.functionList.PRICE.functionParameter.redemption.detail",
  6606. example: "100",
  6607. require: 1,
  6608. repeat: 0
  6609. },
  6610. {
  6611. name: "formula.functionList.PRICE.functionParameter.frequency.name",
  6612. detail: "formula.functionList.PRICE.functionParameter.frequency.detail",
  6613. example: "2",
  6614. require: 1,
  6615. repeat: 0
  6616. },
  6617. {
  6618. name: "formula.functionList.PRICE.functionParameter.basis.name",
  6619. detail: "formula.functionList.PRICE.functionParameter.basis.detail",
  6620. example: "1",
  6621. require: 0,
  6622. repeat: 0
  6623. }
  6624. ]
  6625. },
  6626. {
  6627. functionName: C.PRICEDISC,
  6628. functionType: t.Financial,
  6629. description: "formula.functionList.PRICEDISC.description",
  6630. abstract: "formula.functionList.PRICEDISC.abstract",
  6631. functionParameter: [
  6632. {
  6633. name: "formula.functionList.PRICEDISC.functionParameter.settlement.name",
  6634. detail: "formula.functionList.PRICEDISC.functionParameter.settlement.detail",
  6635. example: '"2008-11-11"',
  6636. require: 1,
  6637. repeat: 0
  6638. },
  6639. {
  6640. name: "formula.functionList.PRICEDISC.functionParameter.maturity.name",
  6641. detail: "formula.functionList.PRICEDISC.functionParameter.maturity.detail",
  6642. example: '"2021-3-1"',
  6643. require: 1,
  6644. repeat: 0
  6645. },
  6646. {
  6647. name: "formula.functionList.PRICEDISC.functionParameter.discount.name",
  6648. detail: "formula.functionList.PRICEDISC.functionParameter.discount.detail",
  6649. example: "0.0625",
  6650. require: 1,
  6651. repeat: 0
  6652. },
  6653. {
  6654. name: "formula.functionList.PRICEDISC.functionParameter.redemption.name",
  6655. detail: "formula.functionList.PRICEDISC.functionParameter.redemption.detail",
  6656. example: "100",
  6657. require: 1,
  6658. repeat: 0
  6659. },
  6660. {
  6661. name: "formula.functionList.PRICEDISC.functionParameter.basis.name",
  6662. detail: "formula.functionList.PRICEDISC.functionParameter.basis.detail",
  6663. example: "1",
  6664. require: 0,
  6665. repeat: 0
  6666. }
  6667. ]
  6668. },
  6669. {
  6670. functionName: C.PRICEMAT,
  6671. functionType: t.Financial,
  6672. description: "formula.functionList.PRICEMAT.description",
  6673. abstract: "formula.functionList.PRICEMAT.abstract",
  6674. functionParameter: [
  6675. {
  6676. name: "formula.functionList.PRICEMAT.functionParameter.settlement.name",
  6677. detail: "formula.functionList.PRICEMAT.functionParameter.settlement.detail",
  6678. example: '"2008-11-11"',
  6679. require: 1,
  6680. repeat: 0
  6681. },
  6682. {
  6683. name: "formula.functionList.PRICEMAT.functionParameter.maturity.name",
  6684. detail: "formula.functionList.PRICEMAT.functionParameter.maturity.detail",
  6685. example: '"2021-3-1"',
  6686. require: 1,
  6687. repeat: 0
  6688. },
  6689. {
  6690. name: "formula.functionList.PRICEMAT.functionParameter.issue.name",
  6691. detail: "formula.functionList.PRICEMAT.functionParameter.issue.detail",
  6692. example: '"2008-10-15"',
  6693. require: 1,
  6694. repeat: 0
  6695. },
  6696. {
  6697. name: "formula.functionList.PRICEMAT.functionParameter.rate.name",
  6698. detail: "formula.functionList.PRICEMAT.functionParameter.rate.detail",
  6699. example: "0.0785",
  6700. require: 1,
  6701. repeat: 0
  6702. },
  6703. {
  6704. name: "formula.functionList.PRICEMAT.functionParameter.yld.name",
  6705. detail: "formula.functionList.PRICEMAT.functionParameter.yld.detail",
  6706. example: "0.0625",
  6707. require: 1,
  6708. repeat: 0
  6709. },
  6710. {
  6711. name: "formula.functionList.PRICEMAT.functionParameter.basis.name",
  6712. detail: "formula.functionList.PRICEMAT.functionParameter.basis.detail",
  6713. example: "1",
  6714. require: 0,
  6715. repeat: 0
  6716. }
  6717. ]
  6718. },
  6719. {
  6720. functionName: C.PV,
  6721. functionType: t.Financial,
  6722. description: "formula.functionList.PV.description",
  6723. abstract: "formula.functionList.PV.abstract",
  6724. functionParameter: [
  6725. {
  6726. name: "formula.functionList.PV.functionParameter.rate.name",
  6727. detail: "formula.functionList.PV.functionParameter.rate.detail",
  6728. example: "0.02",
  6729. require: 1,
  6730. repeat: 0
  6731. },
  6732. {
  6733. name: "formula.functionList.PV.functionParameter.nper.name",
  6734. detail: "formula.functionList.PV.functionParameter.nper.detail",
  6735. example: "12",
  6736. require: 1,
  6737. repeat: 0
  6738. },
  6739. {
  6740. name: "formula.functionList.PV.functionParameter.pmt.name",
  6741. detail: "formula.functionList.PV.functionParameter.pmt.detail",
  6742. example: "100",
  6743. require: 1,
  6744. repeat: 0
  6745. },
  6746. {
  6747. name: "formula.functionList.PV.functionParameter.fv.name",
  6748. detail: "formula.functionList.PV.functionParameter.fv.detail",
  6749. example: "0",
  6750. require: 0,
  6751. repeat: 0
  6752. },
  6753. {
  6754. name: "formula.functionList.PV.functionParameter.type.name",
  6755. detail: "formula.functionList.PV.functionParameter.type.detail",
  6756. example: "0",
  6757. require: 0,
  6758. repeat: 0
  6759. }
  6760. ]
  6761. },
  6762. {
  6763. functionName: C.RATE,
  6764. functionType: t.Financial,
  6765. description: "formula.functionList.RATE.description",
  6766. abstract: "formula.functionList.RATE.abstract",
  6767. functionParameter: [
  6768. {
  6769. name: "formula.functionList.RATE.functionParameter.nper.name",
  6770. detail: "formula.functionList.RATE.functionParameter.nper.detail",
  6771. example: "4*12",
  6772. require: 1,
  6773. repeat: 0
  6774. },
  6775. {
  6776. name: "formula.functionList.RATE.functionParameter.pmt.name",
  6777. detail: "formula.functionList.RATE.functionParameter.pmt.detail",
  6778. example: "-200",
  6779. require: 1,
  6780. repeat: 0
  6781. },
  6782. {
  6783. name: "formula.functionList.RATE.functionParameter.pv.name",
  6784. detail: "formula.functionList.RATE.functionParameter.pv.detail",
  6785. example: "8000",
  6786. require: 1,
  6787. repeat: 0
  6788. },
  6789. {
  6790. name: "formula.functionList.RATE.functionParameter.fv.name",
  6791. detail: "formula.functionList.RATE.functionParameter.fv.detail",
  6792. example: "0",
  6793. require: 0,
  6794. repeat: 0
  6795. },
  6796. {
  6797. name: "formula.functionList.RATE.functionParameter.type.name",
  6798. detail: "formula.functionList.RATE.functionParameter.type.detail",
  6799. example: "0",
  6800. require: 0,
  6801. repeat: 0
  6802. },
  6803. {
  6804. name: "formula.functionList.RATE.functionParameter.guess.name",
  6805. detail: "formula.functionList.RATE.functionParameter.guess.detail",
  6806. example: "0.1",
  6807. require: 0,
  6808. repeat: 0
  6809. }
  6810. ]
  6811. },
  6812. {
  6813. functionName: C.RECEIVED,
  6814. functionType: t.Financial,
  6815. description: "formula.functionList.RECEIVED.description",
  6816. abstract: "formula.functionList.RECEIVED.abstract",
  6817. functionParameter: [
  6818. {
  6819. name: "formula.functionList.RECEIVED.functionParameter.settlement.name",
  6820. detail: "formula.functionList.RECEIVED.functionParameter.settlement.detail",
  6821. example: '"2008-2-15"',
  6822. require: 1,
  6823. repeat: 0
  6824. },
  6825. {
  6826. name: "formula.functionList.RECEIVED.functionParameter.maturity.name",
  6827. detail: "formula.functionList.RECEIVED.functionParameter.maturity.detail",
  6828. example: '"2008-3-15"',
  6829. require: 1,
  6830. repeat: 0
  6831. },
  6832. {
  6833. name: "formula.functionList.RECEIVED.functionParameter.investment.name",
  6834. detail: "formula.functionList.RECEIVED.functionParameter.investment.detail",
  6835. example: "10000000",
  6836. require: 1,
  6837. repeat: 0
  6838. },
  6839. {
  6840. name: "formula.functionList.RECEIVED.functionParameter.discount.name",
  6841. detail: "formula.functionList.RECEIVED.functionParameter.discount.detail",
  6842. example: "0.0575",
  6843. require: 1,
  6844. repeat: 0
  6845. },
  6846. {
  6847. name: "formula.functionList.RECEIVED.functionParameter.basis.name",
  6848. detail: "formula.functionList.RECEIVED.functionParameter.basis.detail",
  6849. example: "2",
  6850. require: 0,
  6851. repeat: 0
  6852. }
  6853. ]
  6854. },
  6855. {
  6856. functionName: C.RRI,
  6857. functionType: t.Financial,
  6858. description: "formula.functionList.RRI.description",
  6859. abstract: "formula.functionList.RRI.abstract",
  6860. functionParameter: [
  6861. {
  6862. name: "formula.functionList.RRI.functionParameter.nper.name",
  6863. detail: "formula.functionList.RRI.functionParameter.nper.detail",
  6864. example: "96",
  6865. require: 1,
  6866. repeat: 0
  6867. },
  6868. {
  6869. name: "formula.functionList.RRI.functionParameter.pv.name",
  6870. detail: "formula.functionList.RRI.functionParameter.pv.detail",
  6871. example: "10000",
  6872. require: 1,
  6873. repeat: 0
  6874. },
  6875. {
  6876. name: "formula.functionList.RRI.functionParameter.fv.name",
  6877. detail: "formula.functionList.RRI.functionParameter.fv.detail",
  6878. example: "11000",
  6879. require: 1,
  6880. repeat: 0
  6881. }
  6882. ]
  6883. },
  6884. {
  6885. functionName: C.SLN,
  6886. functionType: t.Financial,
  6887. description: "formula.functionList.SLN.description",
  6888. abstract: "formula.functionList.SLN.abstract",
  6889. functionParameter: [
  6890. {
  6891. name: "formula.functionList.SLN.functionParameter.cost.name",
  6892. detail: "formula.functionList.SLN.functionParameter.cost.detail",
  6893. example: "300000",
  6894. require: 1,
  6895. repeat: 0
  6896. },
  6897. {
  6898. name: "formula.functionList.SLN.functionParameter.salvage.name",
  6899. detail: "formula.functionList.SLN.functionParameter.salvage.detail",
  6900. example: "75000",
  6901. require: 1,
  6902. repeat: 0
  6903. },
  6904. {
  6905. name: "formula.functionList.SLN.functionParameter.life.name",
  6906. detail: "formula.functionList.SLN.functionParameter.life.detail",
  6907. example: "10",
  6908. require: 1,
  6909. repeat: 0
  6910. }
  6911. ]
  6912. },
  6913. {
  6914. functionName: C.SYD,
  6915. functionType: t.Financial,
  6916. description: "formula.functionList.SYD.description",
  6917. abstract: "formula.functionList.SYD.abstract",
  6918. functionParameter: [
  6919. {
  6920. name: "formula.functionList.SYD.functionParameter.cost.name",
  6921. detail: "formula.functionList.SYD.functionParameter.cost.detail",
  6922. example: "300000",
  6923. require: 1,
  6924. repeat: 0
  6925. },
  6926. {
  6927. name: "formula.functionList.SYD.functionParameter.salvage.name",
  6928. detail: "formula.functionList.SYD.functionParameter.salvage.detail",
  6929. example: "75000",
  6930. require: 1,
  6931. repeat: 0
  6932. },
  6933. {
  6934. name: "formula.functionList.SYD.functionParameter.life.name",
  6935. detail: "formula.functionList.SYD.functionParameter.life.detail",
  6936. example: "10",
  6937. require: 1,
  6938. repeat: 0
  6939. },
  6940. {
  6941. name: "formula.functionList.SYD.functionParameter.per.name",
  6942. detail: "formula.functionList.SYD.functionParameter.per.detail",
  6943. example: "10",
  6944. require: 1,
  6945. repeat: 0
  6946. }
  6947. ]
  6948. },
  6949. {
  6950. functionName: C.TBILLEQ,
  6951. functionType: t.Financial,
  6952. description: "formula.functionList.TBILLEQ.description",
  6953. abstract: "formula.functionList.TBILLEQ.abstract",
  6954. functionParameter: [
  6955. {
  6956. name: "formula.functionList.TBILLEQ.functionParameter.settlement.name",
  6957. detail: "formula.functionList.TBILLEQ.functionParameter.settlement.detail",
  6958. example: '"2008-3-31"',
  6959. require: 1,
  6960. repeat: 0
  6961. },
  6962. {
  6963. name: "formula.functionList.TBILLEQ.functionParameter.maturity.name",
  6964. detail: "formula.functionList.TBILLEQ.functionParameter.maturity.detail",
  6965. example: '"2008-6-1"',
  6966. require: 1,
  6967. repeat: 0
  6968. },
  6969. {
  6970. name: "formula.functionList.TBILLEQ.functionParameter.discount.name",
  6971. detail: "formula.functionList.TBILLEQ.functionParameter.discount.detail",
  6972. example: "0.0914",
  6973. require: 1,
  6974. repeat: 0
  6975. }
  6976. ]
  6977. },
  6978. {
  6979. functionName: C.TBILLPRICE,
  6980. functionType: t.Financial,
  6981. description: "formula.functionList.TBILLPRICE.description",
  6982. abstract: "formula.functionList.TBILLPRICE.abstract",
  6983. functionParameter: [
  6984. {
  6985. name: "formula.functionList.TBILLPRICE.functionParameter.settlement.name",
  6986. detail: "formula.functionList.TBILLPRICE.functionParameter.settlement.detail",
  6987. example: '"2008-3-31"',
  6988. require: 1,
  6989. repeat: 0
  6990. },
  6991. {
  6992. name: "formula.functionList.TBILLPRICE.functionParameter.maturity.name",
  6993. detail: "formula.functionList.TBILLPRICE.functionParameter.maturity.detail",
  6994. example: '"2008-6-1"',
  6995. require: 1,
  6996. repeat: 0
  6997. },
  6998. {
  6999. name: "formula.functionList.TBILLPRICE.functionParameter.discount.name",
  7000. detail: "formula.functionList.TBILLPRICE.functionParameter.discount.detail",
  7001. example: "0.0914",
  7002. require: 1,
  7003. repeat: 0
  7004. }
  7005. ]
  7006. },
  7007. {
  7008. functionName: C.TBILLYIELD,
  7009. functionType: t.Financial,
  7010. description: "formula.functionList.TBILLYIELD.description",
  7011. abstract: "formula.functionList.TBILLYIELD.abstract",
  7012. functionParameter: [
  7013. {
  7014. name: "formula.functionList.TBILLYIELD.functionParameter.settlement.name",
  7015. detail: "formula.functionList.TBILLYIELD.functionParameter.settlement.detail",
  7016. example: '"2008-3-31"',
  7017. require: 1,
  7018. repeat: 0
  7019. },
  7020. {
  7021. name: "formula.functionList.TBILLYIELD.functionParameter.maturity.name",
  7022. detail: "formula.functionList.TBILLYIELD.functionParameter.maturity.detail",
  7023. example: '"2008-6-1"',
  7024. require: 1,
  7025. repeat: 0
  7026. },
  7027. {
  7028. name: "formula.functionList.TBILLYIELD.functionParameter.pr.name",
  7029. detail: "formula.functionList.TBILLYIELD.functionParameter.pr.detail",
  7030. example: "98.45",
  7031. require: 1,
  7032. repeat: 0
  7033. }
  7034. ]
  7035. },
  7036. {
  7037. functionName: C.VDB,
  7038. functionType: t.Financial,
  7039. description: "formula.functionList.VDB.description",
  7040. abstract: "formula.functionList.VDB.abstract",
  7041. functionParameter: [
  7042. {
  7043. name: "formula.functionList.VDB.functionParameter.cost.name",
  7044. detail: "formula.functionList.VDB.functionParameter.cost.detail",
  7045. example: "2400",
  7046. require: 1,
  7047. repeat: 0
  7048. },
  7049. {
  7050. name: "formula.functionList.VDB.functionParameter.salvage.name",
  7051. detail: "formula.functionList.VDB.functionParameter.salvage.detail",
  7052. example: "300",
  7053. require: 1,
  7054. repeat: 0
  7055. },
  7056. {
  7057. name: "formula.functionList.VDB.functionParameter.life.name",
  7058. detail: "formula.functionList.VDB.functionParameter.life.detail",
  7059. example: "10",
  7060. require: 1,
  7061. repeat: 0
  7062. },
  7063. {
  7064. name: "formula.functionList.VDB.functionParameter.startPeriod.name",
  7065. detail: "formula.functionList.VDB.functionParameter.startPeriod.detail",
  7066. example: "1",
  7067. require: 1,
  7068. repeat: 0
  7069. },
  7070. {
  7071. name: "formula.functionList.VDB.functionParameter.endPeriod.name",
  7072. detail: "formula.functionList.VDB.functionParameter.endPeriod.detail",
  7073. example: "2",
  7074. require: 1,
  7075. repeat: 0
  7076. },
  7077. {
  7078. name: "formula.functionList.VDB.functionParameter.factor.name",
  7079. detail: "formula.functionList.VDB.functionParameter.factor.detail",
  7080. example: "2",
  7081. require: 0,
  7082. repeat: 0
  7083. },
  7084. {
  7085. name: "formula.functionList.VDB.functionParameter.noSwitch.name",
  7086. detail: "formula.functionList.VDB.functionParameter.noSwitch.detail",
  7087. example: "false",
  7088. require: 0,
  7089. repeat: 0
  7090. }
  7091. ]
  7092. },
  7093. {
  7094. functionName: C.XIRR,
  7095. functionType: t.Financial,
  7096. description: "formula.functionList.XIRR.description",
  7097. abstract: "formula.functionList.XIRR.abstract",
  7098. functionParameter: [
  7099. {
  7100. name: "formula.functionList.XIRR.functionParameter.values.name",
  7101. detail: "formula.functionList.XIRR.functionParameter.values.detail",
  7102. example: "A1:A4",
  7103. require: 1,
  7104. repeat: 0
  7105. },
  7106. {
  7107. name: "formula.functionList.XIRR.functionParameter.dates.name",
  7108. detail: "formula.functionList.XIRR.functionParameter.dates.detail",
  7109. example: "B1:B4",
  7110. require: 1,
  7111. repeat: 0
  7112. },
  7113. {
  7114. name: "formula.functionList.XIRR.functionParameter.guess.name",
  7115. detail: "formula.functionList.XIRR.functionParameter.guess.detail",
  7116. example: "0.1",
  7117. require: 0,
  7118. repeat: 0
  7119. }
  7120. ]
  7121. },
  7122. {
  7123. functionName: C.XNPV,
  7124. functionType: t.Financial,
  7125. description: "formula.functionList.XNPV.description",
  7126. abstract: "formula.functionList.XNPV.abstract",
  7127. functionParameter: [
  7128. {
  7129. name: "formula.functionList.XNPV.functionParameter.rate.name",
  7130. detail: "formula.functionList.XNPV.functionParameter.rate.detail",
  7131. example: "0.1",
  7132. require: 1,
  7133. repeat: 0
  7134. },
  7135. {
  7136. name: "formula.functionList.XNPV.functionParameter.values.name",
  7137. detail: "formula.functionList.XNPV.functionParameter.values.detail",
  7138. example: "A1:A4",
  7139. require: 1,
  7140. repeat: 0
  7141. },
  7142. {
  7143. name: "formula.functionList.XNPV.functionParameter.dates.name",
  7144. detail: "formula.functionList.XNPV.functionParameter.dates.detail",
  7145. example: "B1:B4",
  7146. require: 1,
  7147. repeat: 0
  7148. }
  7149. ]
  7150. },
  7151. {
  7152. functionName: C.YIELD,
  7153. functionType: t.Financial,
  7154. description: "formula.functionList.YIELD.description",
  7155. abstract: "formula.functionList.YIELD.abstract",
  7156. functionParameter: [
  7157. {
  7158. name: "formula.functionList.YIELD.functionParameter.settlement.name",
  7159. detail: "formula.functionList.YIELD.functionParameter.settlement.detail",
  7160. example: '"2008-11-11"',
  7161. require: 1,
  7162. repeat: 0
  7163. },
  7164. {
  7165. name: "formula.functionList.YIELD.functionParameter.maturity.name",
  7166. detail: "formula.functionList.YIELD.functionParameter.maturity.detail",
  7167. example: '"2021-3-1"',
  7168. require: 1,
  7169. repeat: 0
  7170. },
  7171. {
  7172. name: "formula.functionList.YIELD.functionParameter.rate.name",
  7173. detail: "formula.functionList.YIELD.functionParameter.rate.detail",
  7174. example: "0.0785",
  7175. require: 1,
  7176. repeat: 0
  7177. },
  7178. {
  7179. name: "formula.functionList.YIELD.functionParameter.pr.name",
  7180. detail: "formula.functionList.YIELD.functionParameter.pr.detail",
  7181. example: "98.45",
  7182. require: 1,
  7183. repeat: 0
  7184. },
  7185. {
  7186. name: "formula.functionList.YIELD.functionParameter.redemption.name",
  7187. detail: "formula.functionList.YIELD.functionParameter.redemption.detail",
  7188. example: "100",
  7189. require: 1,
  7190. repeat: 0
  7191. },
  7192. {
  7193. name: "formula.functionList.YIELD.functionParameter.frequency.name",
  7194. detail: "formula.functionList.YIELD.functionParameter.frequency.detail",
  7195. example: "2",
  7196. require: 1,
  7197. repeat: 0
  7198. },
  7199. {
  7200. name: "formula.functionList.YIELD.functionParameter.basis.name",
  7201. detail: "formula.functionList.YIELD.functionParameter.basis.detail",
  7202. example: "1",
  7203. require: 0,
  7204. repeat: 0
  7205. }
  7206. ]
  7207. },
  7208. {
  7209. functionName: C.YIELDDISC,
  7210. functionType: t.Financial,
  7211. description: "formula.functionList.YIELDDISC.description",
  7212. abstract: "formula.functionList.YIELDDISC.abstract",
  7213. functionParameter: [
  7214. {
  7215. name: "formula.functionList.YIELDDISC.functionParameter.settlement.name",
  7216. detail: "formula.functionList.YIELDDISC.functionParameter.settlement.detail",
  7217. example: '"2008-11-11"',
  7218. require: 1,
  7219. repeat: 0
  7220. },
  7221. {
  7222. name: "formula.functionList.YIELDDISC.functionParameter.maturity.name",
  7223. detail: "formula.functionList.YIELDDISC.functionParameter.maturity.detail",
  7224. example: '"2021-3-1"',
  7225. require: 1,
  7226. repeat: 0
  7227. },
  7228. {
  7229. name: "formula.functionList.YIELDDISC.functionParameter.pr.name",
  7230. detail: "formula.functionList.YIELDDISC.functionParameter.pr.detail",
  7231. example: "98.45",
  7232. require: 1,
  7233. repeat: 0
  7234. },
  7235. {
  7236. name: "formula.functionList.YIELDDISC.functionParameter.redemption.name",
  7237. detail: "formula.functionList.YIELDDISC.functionParameter.redemption.detail",
  7238. example: "100",
  7239. require: 1,
  7240. repeat: 0
  7241. },
  7242. {
  7243. name: "formula.functionList.YIELDDISC.functionParameter.basis.name",
  7244. detail: "formula.functionList.YIELDDISC.functionParameter.basis.detail",
  7245. example: "1",
  7246. require: 0,
  7247. repeat: 0
  7248. }
  7249. ]
  7250. },
  7251. {
  7252. functionName: C.YIELDMAT,
  7253. functionType: t.Financial,
  7254. description: "formula.functionList.YIELDMAT.description",
  7255. abstract: "formula.functionList.YIELDMAT.abstract",
  7256. functionParameter: [
  7257. {
  7258. name: "formula.functionList.YIELDMAT.functionParameter.settlement.name",
  7259. detail: "formula.functionList.YIELDMAT.functionParameter.settlement.detail",
  7260. example: '"2008-11-11"',
  7261. require: 1,
  7262. repeat: 0
  7263. },
  7264. {
  7265. name: "formula.functionList.YIELDMAT.functionParameter.maturity.name",
  7266. detail: "formula.functionList.YIELDMAT.functionParameter.maturity.detail",
  7267. example: '"2021-3-1"',
  7268. require: 1,
  7269. repeat: 0
  7270. },
  7271. {
  7272. name: "formula.functionList.YIELDMAT.functionParameter.issue.name",
  7273. detail: "formula.functionList.YIELDMAT.functionParameter.issue.detail",
  7274. example: '"2008-10-15"',
  7275. require: 1,
  7276. repeat: 0
  7277. },
  7278. {
  7279. name: "formula.functionList.YIELDMAT.functionParameter.rate.name",
  7280. detail: "formula.functionList.YIELDMAT.functionParameter.rate.detail",
  7281. example: "0.0785",
  7282. require: 1,
  7283. repeat: 0
  7284. },
  7285. {
  7286. name: "formula.functionList.YIELDMAT.functionParameter.pr.name",
  7287. detail: "formula.functionList.YIELDMAT.functionParameter.pr.detail",
  7288. example: "98.45",
  7289. require: 1,
  7290. repeat: 0
  7291. },
  7292. {
  7293. name: "formula.functionList.YIELDMAT.functionParameter.basis.name",
  7294. detail: "formula.functionList.YIELDMAT.functionParameter.basis.detail",
  7295. example: "1",
  7296. require: 0,
  7297. repeat: 0
  7298. }
  7299. ]
  7300. }
  7301. ], Qi = [
  7302. {
  7303. functionName: v.CELL,
  7304. functionType: t.Information,
  7305. description: "formula.functionList.CELL.description",
  7306. abstract: "formula.functionList.CELL.abstract",
  7307. functionParameter: [
  7308. {
  7309. name: "formula.functionList.CELL.functionParameter.infoType.name",
  7310. detail: "formula.functionList.CELL.functionParameter.infoType.detail",
  7311. example: '"type"',
  7312. require: 1,
  7313. repeat: 0
  7314. },
  7315. {
  7316. name: "formula.functionList.CELL.functionParameter.reference.name",
  7317. detail: "formula.functionList.CELL.functionParameter.reference.detail",
  7318. example: "A1",
  7319. require: 1,
  7320. repeat: 0
  7321. }
  7322. ]
  7323. },
  7324. {
  7325. functionName: v.ERROR_TYPE,
  7326. functionType: t.Information,
  7327. description: "formula.functionList.ERROR_TYPE.description",
  7328. abstract: "formula.functionList.ERROR_TYPE.abstract",
  7329. functionParameter: [
  7330. {
  7331. name: "formula.functionList.ERROR_TYPE.functionParameter.errorVal.name",
  7332. detail: "formula.functionList.ERROR_TYPE.functionParameter.errorVal.detail",
  7333. example: '"#NULL!"',
  7334. require: 1,
  7335. repeat: 0
  7336. }
  7337. ]
  7338. },
  7339. {
  7340. functionName: v.INFO,
  7341. functionType: t.Information,
  7342. description: "formula.functionList.INFO.description",
  7343. abstract: "formula.functionList.INFO.abstract",
  7344. functionParameter: [
  7345. {
  7346. name: "formula.functionList.INFO.functionParameter.number1.name",
  7347. detail: "formula.functionList.INFO.functionParameter.number1.detail",
  7348. example: "A1:A20",
  7349. require: 1,
  7350. repeat: 0
  7351. },
  7352. {
  7353. name: "formula.functionList.INFO.functionParameter.number2.name",
  7354. detail: "formula.functionList.INFO.functionParameter.number2.detail",
  7355. example: "A1:A20",
  7356. require: 1,
  7357. repeat: 0
  7358. }
  7359. ]
  7360. },
  7361. {
  7362. functionName: v.ISBETWEEN,
  7363. functionType: t.Information,
  7364. description: "formula.functionList.ISBETWEEN.description",
  7365. abstract: "formula.functionList.ISBETWEEN.abstract",
  7366. functionParameter: [
  7367. {
  7368. name: "formula.functionList.ISBETWEEN.functionParameter.valueToCompare.name",
  7369. detail: "formula.functionList.ISBETWEEN.functionParameter.valueToCompare.detail",
  7370. example: "7.9",
  7371. require: 1,
  7372. repeat: 0
  7373. },
  7374. {
  7375. name: "formula.functionList.ISBETWEEN.functionParameter.lowerValue.name",
  7376. detail: "formula.functionList.ISBETWEEN.functionParameter.lowerValue.detail",
  7377. example: "1.2",
  7378. require: 1,
  7379. repeat: 0
  7380. },
  7381. {
  7382. name: "formula.functionList.ISBETWEEN.functionParameter.upperValue.name",
  7383. detail: "formula.functionList.ISBETWEEN.functionParameter.upperValue.detail",
  7384. example: "12.45",
  7385. require: 1,
  7386. repeat: 0
  7387. },
  7388. {
  7389. name: "formula.functionList.ISBETWEEN.functionParameter.lowerValueIsInclusive.name",
  7390. detail: "formula.functionList.ISBETWEEN.functionParameter.lowerValueIsInclusive.detail",
  7391. example: "true",
  7392. require: 0,
  7393. repeat: 0
  7394. },
  7395. {
  7396. name: "formula.functionList.ISBETWEEN.functionParameter.upperValueIsInclusive.name",
  7397. detail: "formula.functionList.ISBETWEEN.functionParameter.upperValueIsInclusive.detail",
  7398. example: "true",
  7399. require: 0,
  7400. repeat: 0
  7401. }
  7402. ]
  7403. },
  7404. {
  7405. functionName: v.ISBLANK,
  7406. functionType: t.Information,
  7407. description: "formula.functionList.ISBLANK.description",
  7408. abstract: "formula.functionList.ISBLANK.abstract",
  7409. functionParameter: [
  7410. {
  7411. name: "formula.functionList.ISBLANK.functionParameter.value.name",
  7412. detail: "formula.functionList.ISBLANK.functionParameter.value.detail",
  7413. example: "A1",
  7414. require: 1,
  7415. repeat: 0
  7416. }
  7417. ]
  7418. },
  7419. {
  7420. functionName: v.ISDATE,
  7421. functionType: t.Information,
  7422. description: "formula.functionList.ISDATE.description",
  7423. abstract: "formula.functionList.ISDATE.abstract",
  7424. functionParameter: [
  7425. {
  7426. name: "formula.functionList.ISDATE.functionParameter.value.name",
  7427. detail: "formula.functionList.ISDATE.functionParameter.value.detail",
  7428. example: "A1",
  7429. require: 1,
  7430. repeat: 0
  7431. }
  7432. ]
  7433. },
  7434. {
  7435. functionName: v.ISEMAIL,
  7436. functionType: t.Information,
  7437. description: "formula.functionList.ISEMAIL.description",
  7438. abstract: "formula.functionList.ISEMAIL.abstract",
  7439. functionParameter: [
  7440. {
  7441. name: "formula.functionList.ISEMAIL.functionParameter.value.name",
  7442. detail: "formula.functionList.ISEMAIL.functionParameter.value.detail",
  7443. example: '"developer@univer.ai"',
  7444. require: 1,
  7445. repeat: 0
  7446. }
  7447. ]
  7448. },
  7449. {
  7450. functionName: v.ISERR,
  7451. functionType: t.Information,
  7452. description: "formula.functionList.ISERR.description",
  7453. abstract: "formula.functionList.ISERR.abstract",
  7454. functionParameter: [
  7455. {
  7456. name: "formula.functionList.ISERR.functionParameter.value.name",
  7457. detail: "formula.functionList.ISERR.functionParameter.value.detail",
  7458. example: "A1",
  7459. require: 1,
  7460. repeat: 0
  7461. }
  7462. ]
  7463. },
  7464. {
  7465. functionName: v.ISERROR,
  7466. functionType: t.Information,
  7467. description: "formula.functionList.ISERROR.description",
  7468. abstract: "formula.functionList.ISERROR.abstract",
  7469. functionParameter: [
  7470. {
  7471. name: "formula.functionList.ISERROR.functionParameter.value.name",
  7472. detail: "formula.functionList.ISERROR.functionParameter.value.detail",
  7473. example: "A1",
  7474. require: 1,
  7475. repeat: 0
  7476. }
  7477. ]
  7478. },
  7479. {
  7480. functionName: v.ISEVEN,
  7481. functionType: t.Information,
  7482. description: "formula.functionList.ISEVEN.description",
  7483. abstract: "formula.functionList.ISEVEN.abstract",
  7484. functionParameter: [
  7485. {
  7486. name: "formula.functionList.ISEVEN.functionParameter.value.name",
  7487. detail: "formula.functionList.ISEVEN.functionParameter.value.detail",
  7488. example: "A1:A20",
  7489. require: 1,
  7490. repeat: 0
  7491. }
  7492. ]
  7493. },
  7494. {
  7495. functionName: v.ISFORMULA,
  7496. functionType: t.Information,
  7497. description: "formula.functionList.ISFORMULA.description",
  7498. abstract: "formula.functionList.ISFORMULA.abstract",
  7499. functionParameter: [
  7500. {
  7501. name: "formula.functionList.ISFORMULA.functionParameter.reference.name",
  7502. detail: "formula.functionList.ISFORMULA.functionParameter.reference.detail",
  7503. example: "A1",
  7504. require: 1,
  7505. repeat: 0
  7506. }
  7507. ]
  7508. },
  7509. {
  7510. functionName: v.ISLOGICAL,
  7511. functionType: t.Information,
  7512. description: "formula.functionList.ISLOGICAL.description",
  7513. abstract: "formula.functionList.ISLOGICAL.abstract",
  7514. functionParameter: [
  7515. {
  7516. name: "formula.functionList.ISLOGICAL.functionParameter.value.name",
  7517. detail: "formula.functionList.ISLOGICAL.functionParameter.value.detail",
  7518. example: "A1",
  7519. require: 1,
  7520. repeat: 0
  7521. }
  7522. ]
  7523. },
  7524. {
  7525. functionName: v.ISNA,
  7526. functionType: t.Information,
  7527. description: "formula.functionList.ISNA.description",
  7528. abstract: "formula.functionList.ISNA.abstract",
  7529. functionParameter: [
  7530. {
  7531. name: "formula.functionList.ISNA.functionParameter.value.name",
  7532. detail: "formula.functionList.ISNA.functionParameter.value.detail",
  7533. example: "A1",
  7534. require: 1,
  7535. repeat: 0
  7536. }
  7537. ]
  7538. },
  7539. {
  7540. functionName: v.ISNONTEXT,
  7541. functionType: t.Information,
  7542. description: "formula.functionList.ISNONTEXT.description",
  7543. abstract: "formula.functionList.ISNONTEXT.abstract",
  7544. functionParameter: [
  7545. {
  7546. name: "formula.functionList.ISNONTEXT.functionParameter.value.name",
  7547. detail: "formula.functionList.ISNONTEXT.functionParameter.value.detail",
  7548. example: "A1",
  7549. require: 1,
  7550. repeat: 0
  7551. }
  7552. ]
  7553. },
  7554. {
  7555. functionName: v.ISNUMBER,
  7556. functionType: t.Information,
  7557. description: "formula.functionList.ISNUMBER.description",
  7558. abstract: "formula.functionList.ISNUMBER.abstract",
  7559. functionParameter: [
  7560. {
  7561. name: "formula.functionList.ISNUMBER.functionParameter.value.name",
  7562. detail: "formula.functionList.ISNUMBER.functionParameter.value.detail",
  7563. example: "A1",
  7564. require: 1,
  7565. repeat: 0
  7566. }
  7567. ]
  7568. },
  7569. {
  7570. functionName: v.ISODD,
  7571. functionType: t.Information,
  7572. description: "formula.functionList.ISODD.description",
  7573. abstract: "formula.functionList.ISODD.abstract",
  7574. functionParameter: [
  7575. {
  7576. name: "formula.functionList.ISODD.functionParameter.value.name",
  7577. detail: "formula.functionList.ISODD.functionParameter.value.detail",
  7578. example: "A1:A20",
  7579. require: 1,
  7580. repeat: 0
  7581. }
  7582. ]
  7583. },
  7584. {
  7585. functionName: v.ISOMITTED,
  7586. functionType: t.Information,
  7587. description: "formula.functionList.ISOMITTED.description",
  7588. abstract: "formula.functionList.ISOMITTED.abstract",
  7589. functionParameter: [
  7590. {
  7591. name: "formula.functionList.ISOMITTED.functionParameter.number1.name",
  7592. detail: "formula.functionList.ISOMITTED.functionParameter.number1.detail",
  7593. example: "A1:A20",
  7594. require: 1,
  7595. repeat: 0
  7596. },
  7597. {
  7598. name: "formula.functionList.ISOMITTED.functionParameter.number2.name",
  7599. detail: "formula.functionList.ISOMITTED.functionParameter.number2.detail",
  7600. example: "A1:A20",
  7601. require: 1,
  7602. repeat: 0
  7603. }
  7604. ]
  7605. },
  7606. {
  7607. functionName: v.ISREF,
  7608. functionType: t.Information,
  7609. description: "formula.functionList.ISREF.description",
  7610. abstract: "formula.functionList.ISREF.abstract",
  7611. functionParameter: [
  7612. {
  7613. name: "formula.functionList.ISREF.functionParameter.value.name",
  7614. detail: "formula.functionList.ISREF.functionParameter.value.detail",
  7615. example: "A1",
  7616. require: 1,
  7617. repeat: 0
  7618. }
  7619. ]
  7620. },
  7621. {
  7622. functionName: v.ISTEXT,
  7623. functionType: t.Information,
  7624. description: "formula.functionList.ISTEXT.description",
  7625. abstract: "formula.functionList.ISTEXT.abstract",
  7626. functionParameter: [
  7627. {
  7628. name: "formula.functionList.ISTEXT.functionParameter.value.name",
  7629. detail: "formula.functionList.ISTEXT.functionParameter.value.detail",
  7630. example: "A1",
  7631. require: 1,
  7632. repeat: 0
  7633. }
  7634. ]
  7635. },
  7636. {
  7637. functionName: v.ISURL,
  7638. functionType: t.Information,
  7639. description: "formula.functionList.ISURL.description",
  7640. abstract: "formula.functionList.ISURL.abstract",
  7641. functionParameter: [
  7642. {
  7643. name: "formula.functionList.ISURL.functionParameter.value.name",
  7644. detail: "formula.functionList.ISURL.functionParameter.value.detail",
  7645. example: '"univer.ai"',
  7646. require: 1,
  7647. repeat: 0
  7648. }
  7649. ]
  7650. },
  7651. {
  7652. functionName: v.N,
  7653. functionType: t.Information,
  7654. description: "formula.functionList.N.description",
  7655. abstract: "formula.functionList.N.abstract",
  7656. functionParameter: [
  7657. {
  7658. name: "formula.functionList.N.functionParameter.value.name",
  7659. detail: "formula.functionList.N.functionParameter.value.detail",
  7660. example: "7",
  7661. require: 1,
  7662. repeat: 0
  7663. }
  7664. ]
  7665. },
  7666. {
  7667. functionName: v.NA,
  7668. functionType: t.Information,
  7669. description: "formula.functionList.NA.description",
  7670. abstract: "formula.functionList.NA.abstract",
  7671. functionParameter: []
  7672. },
  7673. {
  7674. functionName: v.SHEET,
  7675. functionType: t.Information,
  7676. description: "formula.functionList.SHEET.description",
  7677. abstract: "formula.functionList.SHEET.abstract",
  7678. functionParameter: [
  7679. {
  7680. name: "formula.functionList.SHEET.functionParameter.value.name",
  7681. detail: "formula.functionList.SHEET.functionParameter.value.detail",
  7682. example: "A1",
  7683. require: 1,
  7684. repeat: 0
  7685. }
  7686. ]
  7687. },
  7688. {
  7689. functionName: v.SHEETS,
  7690. functionType: t.Information,
  7691. description: "formula.functionList.SHEETS.description",
  7692. abstract: "formula.functionList.SHEETS.abstract",
  7693. functionParameter: []
  7694. },
  7695. {
  7696. functionName: v.TYPE,
  7697. functionType: t.Information,
  7698. description: "formula.functionList.TYPE.description",
  7699. abstract: "formula.functionList.TYPE.abstract",
  7700. functionParameter: [
  7701. {
  7702. name: "formula.functionList.TYPE.functionParameter.value.name",
  7703. detail: "formula.functionList.TYPE.functionParameter.value.detail",
  7704. example: "A2",
  7705. require: 1,
  7706. repeat: 0
  7707. }
  7708. ]
  7709. }
  7710. ], ki = [
  7711. {
  7712. functionName: K.AND,
  7713. functionType: t.Logical,
  7714. description: "formula.functionList.AND.description",
  7715. abstract: "formula.functionList.AND.abstract",
  7716. functionParameter: [
  7717. {
  7718. name: "formula.functionList.AND.functionParameter.logical1.name",
  7719. detail: "formula.functionList.AND.functionParameter.logical1.detail",
  7720. example: "A1=1",
  7721. require: 1,
  7722. repeat: 0
  7723. },
  7724. {
  7725. name: "formula.functionList.AND.functionParameter.logical2.name",
  7726. detail: "formula.functionList.AND.functionParameter.logical2.detail",
  7727. example: "A2=2",
  7728. require: 0,
  7729. repeat: 1
  7730. }
  7731. ]
  7732. },
  7733. {
  7734. functionName: K.BYCOL,
  7735. functionType: t.Logical,
  7736. description: "formula.functionList.BYCOL.description",
  7737. abstract: "formula.functionList.BYCOL.abstract",
  7738. functionParameter: [
  7739. {
  7740. name: "formula.functionList.BYCOL.functionParameter.array.name",
  7741. detail: "formula.functionList.BYCOL.functionParameter.array.detail",
  7742. example: "A1:C2",
  7743. require: 1,
  7744. repeat: 0
  7745. },
  7746. {
  7747. name: "formula.functionList.BYCOL.functionParameter.lambda.name",
  7748. detail: "formula.functionList.BYCOL.functionParameter.lambda.detail",
  7749. example: "LAMBDA(array, MAX(array))",
  7750. require: 1,
  7751. repeat: 0
  7752. }
  7753. ]
  7754. },
  7755. {
  7756. functionName: K.BYROW,
  7757. functionType: t.Logical,
  7758. description: "formula.functionList.BYROW.description",
  7759. abstract: "formula.functionList.BYROW.abstract",
  7760. functionParameter: [
  7761. {
  7762. name: "formula.functionList.BYROW.functionParameter.array.name",
  7763. detail: "formula.functionList.BYROW.functionParameter.array.detail",
  7764. example: "A1:C2",
  7765. require: 1,
  7766. repeat: 0
  7767. },
  7768. {
  7769. name: "formula.functionList.BYROW.functionParameter.lambda.name",
  7770. detail: "formula.functionList.BYROW.functionParameter.lambda.detail",
  7771. example: "LAMBDA(array, MAX(array))",
  7772. require: 1,
  7773. repeat: 0
  7774. }
  7775. ]
  7776. },
  7777. {
  7778. functionName: K.FALSE,
  7779. functionType: t.Logical,
  7780. description: "formula.functionList.FALSE.description",
  7781. abstract: "formula.functionList.FALSE.abstract",
  7782. functionParameter: []
  7783. },
  7784. {
  7785. functionName: K.IF,
  7786. functionType: t.Logical,
  7787. description: "formula.functionList.IF.description",
  7788. abstract: "formula.functionList.IF.abstract",
  7789. functionParameter: [
  7790. {
  7791. name: "formula.functionList.IF.functionParameter.logicalTest.name",
  7792. detail: "formula.functionList.IF.functionParameter.logicalTest.detail",
  7793. example: 'A2 = "foo"',
  7794. require: 1,
  7795. repeat: 0
  7796. },
  7797. {
  7798. name: "formula.functionList.IF.functionParameter.valueIfTrue.name",
  7799. detail: "formula.functionList.IF.functionParameter.valueIfTrue.detail",
  7800. example: '"A2 is foo"',
  7801. require: 1,
  7802. repeat: 0
  7803. },
  7804. {
  7805. name: "formula.functionList.IF.functionParameter.valueIfFalse.name",
  7806. detail: "formula.functionList.IF.functionParameter.valueIfFalse.detail",
  7807. example: '"A2 is not foo"',
  7808. require: 0,
  7809. repeat: 0
  7810. }
  7811. ]
  7812. },
  7813. {
  7814. functionName: K.IFERROR,
  7815. functionType: t.Logical,
  7816. description: "formula.functionList.IFERROR.description",
  7817. abstract: "formula.functionList.IFERROR.abstract",
  7818. functionParameter: [
  7819. {
  7820. name: "formula.functionList.IFERROR.functionParameter.value.name",
  7821. detail: "formula.functionList.IFERROR.functionParameter.value.detail",
  7822. example: "A2/B2",
  7823. require: 1,
  7824. repeat: 0
  7825. },
  7826. {
  7827. name: "formula.functionList.IFERROR.functionParameter.valueIfError.name",
  7828. detail: "formula.functionList.IFERROR.functionParameter.valueIfError.detail",
  7829. example: "Error in calculation",
  7830. require: 1,
  7831. repeat: 0
  7832. }
  7833. ]
  7834. },
  7835. {
  7836. functionName: K.IFNA,
  7837. functionType: t.Logical,
  7838. description: "formula.functionList.IFNA.description",
  7839. abstract: "formula.functionList.IFNA.abstract",
  7840. functionParameter: [
  7841. {
  7842. name: "formula.functionList.IFNA.functionParameter.value.name",
  7843. detail: "formula.functionList.IFNA.functionParameter.value.detail",
  7844. example: "VLOOKUP(C3,C6:D11,2,FALSE)",
  7845. require: 1,
  7846. repeat: 0
  7847. },
  7848. {
  7849. name: "formula.functionList.IFNA.functionParameter.valueIfNa.name",
  7850. detail: "formula.functionList.IFNA.functionParameter.valueIfNa.detail",
  7851. example: '"Not Found"',
  7852. require: 1,
  7853. repeat: 0
  7854. }
  7855. ]
  7856. },
  7857. {
  7858. functionName: K.IFS,
  7859. functionType: t.Logical,
  7860. description: "formula.functionList.IFS.description",
  7861. abstract: "formula.functionList.IFS.abstract",
  7862. functionParameter: [
  7863. {
  7864. name: "formula.functionList.IFS.functionParameter.logicalTest1.name",
  7865. detail: "formula.functionList.IFS.functionParameter.logicalTest1.detail",
  7866. example: 'A2 = "foo"',
  7867. require: 1,
  7868. repeat: 0
  7869. },
  7870. {
  7871. name: "formula.functionList.IFS.functionParameter.valueIfTrue1.name",
  7872. detail: "formula.functionList.IFS.functionParameter.valueIfTrue1.detail",
  7873. example: '"A2 is foo"',
  7874. require: 1,
  7875. repeat: 0
  7876. },
  7877. {
  7878. name: "formula.functionList.IFS.functionParameter.logicalTest2.name",
  7879. detail: "formula.functionList.IFS.functionParameter.logicalTest2.detail",
  7880. example: "F2=1",
  7881. require: 0,
  7882. repeat: 1
  7883. },
  7884. {
  7885. name: "formula.functionList.IFS.functionParameter.valueIfTrue2.name",
  7886. detail: "formula.functionList.IFS.functionParameter.valueIfTrue2.detail",
  7887. example: "D2",
  7888. require: 0,
  7889. repeat: 1
  7890. }
  7891. ]
  7892. },
  7893. {
  7894. functionName: K.LAMBDA,
  7895. functionType: t.Logical,
  7896. description: "formula.functionList.LAMBDA.description",
  7897. abstract: "formula.functionList.LAMBDA.abstract",
  7898. functionParameter: [
  7899. {
  7900. name: "formula.functionList.LAMBDA.functionParameter.parameter.name",
  7901. detail: "formula.functionList.LAMBDA.functionParameter.parameter.detail",
  7902. example: "[x, y, …,]",
  7903. require: 0,
  7904. repeat: 1
  7905. },
  7906. {
  7907. name: "formula.functionList.LAMBDA.functionParameter.calculation.name",
  7908. detail: "formula.functionList.LAMBDA.functionParameter.calculation.detail",
  7909. example: "x+y",
  7910. require: 1,
  7911. repeat: 0
  7912. }
  7913. ]
  7914. },
  7915. {
  7916. functionName: K.LET,
  7917. functionType: t.Logical,
  7918. description: "formula.functionList.LET.description",
  7919. abstract: "formula.functionList.LET.abstract",
  7920. functionParameter: [
  7921. {
  7922. name: "formula.functionList.LET.functionParameter.name1.name",
  7923. detail: "formula.functionList.LET.functionParameter.name1.detail",
  7924. example: "x",
  7925. require: 1,
  7926. repeat: 0
  7927. },
  7928. {
  7929. name: "formula.functionList.LET.functionParameter.nameValue1.name",
  7930. detail: "formula.functionList.LET.functionParameter.nameValue1.detail",
  7931. example: "5",
  7932. require: 1,
  7933. repeat: 0
  7934. },
  7935. {
  7936. name: "formula.functionList.LET.functionParameter.calculationOrName2.name",
  7937. detail: "formula.functionList.LET.functionParameter.calculationOrName2.detail",
  7938. example: "y",
  7939. require: 1,
  7940. repeat: 0
  7941. },
  7942. {
  7943. name: "formula.functionList.LET.functionParameter.nameValue2.name",
  7944. detail: "formula.functionList.LET.functionParameter.nameValue2.detail",
  7945. example: "6",
  7946. require: 0,
  7947. repeat: 1
  7948. },
  7949. {
  7950. name: "formula.functionList.LET.functionParameter.calculationOrName3.name",
  7951. detail: "formula.functionList.LET.functionParameter.calculationOrName3.detail",
  7952. example: "SUM(x,y)",
  7953. require: 0,
  7954. repeat: 1
  7955. }
  7956. ]
  7957. },
  7958. {
  7959. functionName: K.MAKEARRAY,
  7960. aliasFunctionName: "formula.functionList.MAKEARRAY.aliasFunctionName",
  7961. functionType: t.Logical,
  7962. description: "formula.functionList.MAKEARRAY.description",
  7963. abstract: "formula.functionList.MAKEARRAY.abstract",
  7964. functionParameter: [
  7965. {
  7966. name: "formula.functionList.MAKEARRAY.functionParameter.number1.name",
  7967. detail: "formula.functionList.MAKEARRAY.functionParameter.number1.detail",
  7968. example: "8",
  7969. require: 1,
  7970. repeat: 0
  7971. },
  7972. {
  7973. name: "formula.functionList.MAKEARRAY.functionParameter.number2.name",
  7974. detail: "formula.functionList.MAKEARRAY.functionParameter.number2.detail",
  7975. example: "7",
  7976. require: 1,
  7977. repeat: 0
  7978. },
  7979. {
  7980. name: "formula.functionList.MAKEARRAY.functionParameter.value3.name",
  7981. detail: "formula.functionList.MAKEARRAY.functionParameter.value3.detail",
  7982. example: "LAMBDA(r,c, r*c)",
  7983. require: 1,
  7984. repeat: 0
  7985. }
  7986. ]
  7987. },
  7988. {
  7989. functionName: K.MAP,
  7990. functionType: t.Logical,
  7991. description: "formula.functionList.MAP.description",
  7992. abstract: "formula.functionList.MAP.abstract",
  7993. functionParameter: [
  7994. {
  7995. name: "formula.functionList.MAP.functionParameter.array1.name",
  7996. detail: "formula.functionList.MAP.functionParameter.array1.detail",
  7997. example: "D2:D11",
  7998. require: 1,
  7999. repeat: 0
  8000. },
  8001. {
  8002. name: "formula.functionList.MAP.functionParameter.array2.name",
  8003. detail: "formula.functionList.MAP.functionParameter.array2.detail",
  8004. example: "E2:E11",
  8005. require: 0,
  8006. repeat: 1
  8007. },
  8008. {
  8009. name: "formula.functionList.MAP.functionParameter.lambda.name",
  8010. detail: "formula.functionList.MAP.functionParameter.lambda.detail",
  8011. example: 'LAMBDA(s,c,AND(s="Large",c="Red"))',
  8012. require: 1,
  8013. repeat: 0
  8014. }
  8015. ]
  8016. },
  8017. {
  8018. functionName: K.NOT,
  8019. functionType: t.Logical,
  8020. description: "formula.functionList.NOT.description",
  8021. abstract: "formula.functionList.NOT.abstract",
  8022. functionParameter: [
  8023. {
  8024. name: "formula.functionList.NOT.functionParameter.logical.name",
  8025. detail: "formula.functionList.NOT.functionParameter.logical.detail",
  8026. example: "A2>100",
  8027. require: 1,
  8028. repeat: 0
  8029. }
  8030. ]
  8031. },
  8032. {
  8033. functionName: K.OR,
  8034. functionType: t.Logical,
  8035. description: "formula.functionList.OR.description",
  8036. abstract: "formula.functionList.OR.abstract",
  8037. functionParameter: [
  8038. {
  8039. name: "formula.functionList.OR.functionParameter.logical1.name",
  8040. detail: "formula.functionList.OR.functionParameter.logical1.detail",
  8041. example: "A1=1",
  8042. require: 1,
  8043. repeat: 0
  8044. },
  8045. {
  8046. name: "formula.functionList.OR.functionParameter.logical2.name",
  8047. detail: "formula.functionList.OR.functionParameter.logical2.detail",
  8048. example: "A2=2",
  8049. require: 0,
  8050. repeat: 1
  8051. }
  8052. ]
  8053. },
  8054. {
  8055. functionName: K.REDUCE,
  8056. functionType: t.Logical,
  8057. description: "formula.functionList.REDUCE.description",
  8058. abstract: "formula.functionList.REDUCE.abstract",
  8059. functionParameter: [
  8060. {
  8061. name: "formula.functionList.REDUCE.functionParameter.initialValue.name",
  8062. detail: "formula.functionList.REDUCE.functionParameter.initialValue.detail",
  8063. example: "1",
  8064. require: 1,
  8065. repeat: 0
  8066. },
  8067. {
  8068. name: "formula.functionList.REDUCE.functionParameter.array.name",
  8069. detail: "formula.functionList.REDUCE.functionParameter.array.detail",
  8070. example: "A1:C2",
  8071. require: 1,
  8072. repeat: 0
  8073. },
  8074. {
  8075. name: "formula.functionList.REDUCE.functionParameter.lambda.name",
  8076. detail: "formula.functionList.REDUCE.functionParameter.lambda.detail",
  8077. example: "LAMBDA(a,b,a+b^2)",
  8078. require: 1,
  8079. repeat: 0
  8080. }
  8081. ]
  8082. },
  8083. {
  8084. functionName: K.SCAN,
  8085. functionType: t.Logical,
  8086. description: "formula.functionList.SCAN.description",
  8087. abstract: "formula.functionList.SCAN.abstract",
  8088. functionParameter: [
  8089. {
  8090. name: "formula.functionList.SCAN.functionParameter.initialValue.name",
  8091. detail: "formula.functionList.SCAN.functionParameter.initialValue.detail",
  8092. example: "1",
  8093. require: 1,
  8094. repeat: 0
  8095. },
  8096. {
  8097. name: "formula.functionList.SCAN.functionParameter.array.name",
  8098. detail: "formula.functionList.SCAN.functionParameter.array.detail",
  8099. example: "A1:C2",
  8100. require: 1,
  8101. repeat: 0
  8102. },
  8103. {
  8104. name: "formula.functionList.SCAN.functionParameter.lambda.name",
  8105. detail: "formula.functionList.SCAN.functionParameter.lambda.detail",
  8106. example: "LAMBDA(a,b,a+b^2)",
  8107. require: 1,
  8108. repeat: 0
  8109. }
  8110. ]
  8111. },
  8112. {
  8113. functionName: K.SWITCH,
  8114. functionType: t.Logical,
  8115. description: "formula.functionList.SWITCH.description",
  8116. abstract: "formula.functionList.SWITCH.abstract",
  8117. functionParameter: [
  8118. {
  8119. name: "formula.functionList.SWITCH.functionParameter.expression.name",
  8120. detail: "formula.functionList.SWITCH.functionParameter.expression.detail",
  8121. example: "WEEKDAY(A2)",
  8122. require: 1,
  8123. repeat: 0
  8124. },
  8125. {
  8126. name: "formula.functionList.SWITCH.functionParameter.value1.name",
  8127. detail: "formula.functionList.SWITCH.functionParameter.value1.detail",
  8128. example: "1",
  8129. require: 1,
  8130. repeat: 0
  8131. },
  8132. {
  8133. name: "formula.functionList.SWITCH.functionParameter.result1.name",
  8134. detail: "formula.functionList.SWITCH.functionParameter.result1.detail",
  8135. example: '"Sunday"',
  8136. require: 1,
  8137. repeat: 0
  8138. },
  8139. {
  8140. name: "formula.functionList.SWITCH.functionParameter.defaultOrValue2.name",
  8141. detail: "formula.functionList.SWITCH.functionParameter.defaultOrValue2.detail",
  8142. example: "2",
  8143. require: 0,
  8144. repeat: 1
  8145. },
  8146. {
  8147. name: "formula.functionList.SWITCH.functionParameter.result2.name",
  8148. detail: "formula.functionList.SWITCH.functionParameter.result2.detail",
  8149. example: '"Monday"',
  8150. require: 0,
  8151. repeat: 1
  8152. }
  8153. ]
  8154. },
  8155. {
  8156. functionName: K.TRUE,
  8157. functionType: t.Logical,
  8158. description: "formula.functionList.TRUE.description",
  8159. abstract: "formula.functionList.TRUE.abstract",
  8160. functionParameter: []
  8161. },
  8162. {
  8163. functionName: K.XOR,
  8164. functionType: t.Logical,
  8165. description: "formula.functionList.XOR.description",
  8166. abstract: "formula.functionList.XOR.abstract",
  8167. functionParameter: [
  8168. {
  8169. name: "formula.functionList.XOR.functionParameter.logical1.name",
  8170. detail: "formula.functionList.XOR.functionParameter.logical1.detail",
  8171. example: "3>0",
  8172. require: 1,
  8173. repeat: 0
  8174. },
  8175. {
  8176. name: "formula.functionList.XOR.functionParameter.logical2.name",
  8177. detail: "formula.functionList.XOR.functionParameter.logical2.detail",
  8178. example: "2<9",
  8179. require: 0,
  8180. repeat: 1
  8181. }
  8182. ]
  8183. }
  8184. ], $i = [
  8185. {
  8186. functionName: y.ADDRESS,
  8187. functionType: t.Lookup,
  8188. description: "formula.functionList.ADDRESS.description",
  8189. abstract: "formula.functionList.ADDRESS.abstract",
  8190. functionParameter: [
  8191. {
  8192. name: "formula.functionList.ADDRESS.functionParameter.row_num.name",
  8193. detail: "formula.functionList.ADDRESS.functionParameter.row_num.detail",
  8194. example: "2",
  8195. require: 1,
  8196. repeat: 0
  8197. },
  8198. {
  8199. name: "formula.functionList.ADDRESS.functionParameter.column_num.name",
  8200. detail: "formula.functionList.ADDRESS.functionParameter.column_num.detail",
  8201. example: "2",
  8202. require: 1,
  8203. repeat: 0
  8204. },
  8205. {
  8206. name: "formula.functionList.ADDRESS.functionParameter.abs_num.name",
  8207. detail: "formula.functionList.ADDRESS.functionParameter.abs_num.detail",
  8208. example: "1",
  8209. require: 0,
  8210. repeat: 0
  8211. },
  8212. {
  8213. name: "formula.functionList.ADDRESS.functionParameter.a1.name",
  8214. detail: "formula.functionList.ADDRESS.functionParameter.a1.detail",
  8215. example: "TRUE",
  8216. require: 0,
  8217. repeat: 0
  8218. },
  8219. {
  8220. name: "formula.functionList.ADDRESS.functionParameter.sheet_text.name",
  8221. detail: "formula.functionList.ADDRESS.functionParameter.sheet_text.detail",
  8222. example: '"Sheet2"',
  8223. require: 0,
  8224. repeat: 0
  8225. }
  8226. ]
  8227. },
  8228. {
  8229. functionName: y.AREAS,
  8230. functionType: t.Lookup,
  8231. description: "formula.functionList.AREAS.description",
  8232. abstract: "formula.functionList.AREAS.abstract",
  8233. functionParameter: [
  8234. {
  8235. name: "formula.functionList.AREAS.functionParameter.reference.name",
  8236. detail: "formula.functionList.AREAS.functionParameter.reference.detail",
  8237. example: "A1:A20",
  8238. require: 1,
  8239. repeat: 0
  8240. }
  8241. ]
  8242. },
  8243. {
  8244. functionName: y.CHOOSE,
  8245. functionType: t.Lookup,
  8246. description: "formula.functionList.CHOOSE.description",
  8247. abstract: "formula.functionList.CHOOSE.abstract",
  8248. functionParameter: [
  8249. {
  8250. name: "formula.functionList.CHOOSE.functionParameter.indexNum.name",
  8251. detail: "formula.functionList.CHOOSE.functionParameter.indexNum.detail",
  8252. example: "1",
  8253. require: 1,
  8254. repeat: 0
  8255. },
  8256. {
  8257. name: "formula.functionList.CHOOSE.functionParameter.value1.name",
  8258. detail: "formula.functionList.CHOOSE.functionParameter.value1.detail",
  8259. example: '"Hello"',
  8260. require: 1,
  8261. repeat: 0
  8262. },
  8263. {
  8264. name: "formula.functionList.CHOOSE.functionParameter.value2.name",
  8265. detail: "formula.functionList.CHOOSE.functionParameter.value2.detail",
  8266. example: '"Univer"',
  8267. require: 0,
  8268. repeat: 1
  8269. }
  8270. ]
  8271. },
  8272. {
  8273. functionName: y.CHOOSECOLS,
  8274. functionType: t.Lookup,
  8275. description: "formula.functionList.CHOOSECOLS.description",
  8276. abstract: "formula.functionList.CHOOSECOLS.abstract",
  8277. functionParameter: [
  8278. {
  8279. name: "formula.functionList.CHOOSECOLS.functionParameter.array.name",
  8280. detail: "formula.functionList.CHOOSECOLS.functionParameter.array.detail",
  8281. example: "A1:C2",
  8282. require: 1,
  8283. repeat: 0
  8284. },
  8285. {
  8286. name: "formula.functionList.CHOOSECOLS.functionParameter.colNum1.name",
  8287. detail: "formula.functionList.CHOOSECOLS.functionParameter.colNum1.detail",
  8288. example: "1",
  8289. require: 1,
  8290. repeat: 0
  8291. },
  8292. {
  8293. name: "formula.functionList.CHOOSECOLS.functionParameter.colNum2.name",
  8294. detail: "formula.functionList.CHOOSECOLS.functionParameter.colNum2.detail",
  8295. example: "2",
  8296. require: 0,
  8297. repeat: 1
  8298. }
  8299. ]
  8300. },
  8301. {
  8302. functionName: y.CHOOSEROWS,
  8303. functionType: t.Lookup,
  8304. description: "formula.functionList.CHOOSEROWS.description",
  8305. abstract: "formula.functionList.CHOOSEROWS.abstract",
  8306. functionParameter: [
  8307. {
  8308. name: "formula.functionList.CHOOSEROWS.functionParameter.array.name",
  8309. detail: "formula.functionList.CHOOSEROWS.functionParameter.array.detail",
  8310. example: "A1:C2",
  8311. require: 1,
  8312. repeat: 0
  8313. },
  8314. {
  8315. name: "formula.functionList.CHOOSEROWS.functionParameter.rowNum1.name",
  8316. detail: "formula.functionList.CHOOSEROWS.functionParameter.rowNum1.detail",
  8317. example: "1",
  8318. require: 1,
  8319. repeat: 0
  8320. },
  8321. {
  8322. name: "formula.functionList.CHOOSEROWS.functionParameter.rowNum2.name",
  8323. detail: "formula.functionList.CHOOSEROWS.functionParameter.rowNum2.detail",
  8324. example: "2",
  8325. require: 0,
  8326. repeat: 1
  8327. }
  8328. ]
  8329. },
  8330. {
  8331. functionName: y.COLUMN,
  8332. functionType: t.Lookup,
  8333. description: "formula.functionList.COLUMN.description",
  8334. abstract: "formula.functionList.COLUMN.abstract",
  8335. functionParameter: [
  8336. {
  8337. name: "formula.functionList.COLUMN.functionParameter.reference.name",
  8338. detail: "formula.functionList.COLUMN.functionParameter.reference.detail",
  8339. example: "A1:A20",
  8340. require: 0,
  8341. repeat: 0
  8342. }
  8343. ]
  8344. },
  8345. {
  8346. functionName: y.COLUMNS,
  8347. functionType: t.Lookup,
  8348. description: "formula.functionList.COLUMNS.description",
  8349. abstract: "formula.functionList.COLUMNS.abstract",
  8350. functionParameter: [
  8351. {
  8352. name: "formula.functionList.COLUMNS.functionParameter.array.name",
  8353. detail: "formula.functionList.COLUMNS.functionParameter.array.detail",
  8354. example: "A1:A20",
  8355. require: 1,
  8356. repeat: 0
  8357. }
  8358. ]
  8359. },
  8360. {
  8361. functionName: y.DROP,
  8362. functionType: t.Lookup,
  8363. description: "formula.functionList.DROP.description",
  8364. abstract: "formula.functionList.DROP.abstract",
  8365. functionParameter: [
  8366. {
  8367. name: "formula.functionList.DROP.functionParameter.array.name",
  8368. detail: "formula.functionList.DROP.functionParameter.array.detail",
  8369. example: "A2:C4",
  8370. require: 1,
  8371. repeat: 0
  8372. },
  8373. {
  8374. name: "formula.functionList.DROP.functionParameter.rows.name",
  8375. detail: "formula.functionList.DROP.functionParameter.rows.detail",
  8376. example: "2",
  8377. require: 1,
  8378. repeat: 0
  8379. },
  8380. {
  8381. name: "formula.functionList.DROP.functionParameter.columns.name",
  8382. detail: "formula.functionList.DROP.functionParameter.columns.detail",
  8383. example: "2",
  8384. require: 0,
  8385. repeat: 0
  8386. }
  8387. ]
  8388. },
  8389. {
  8390. functionName: y.EXPAND,
  8391. functionType: t.Lookup,
  8392. description: "formula.functionList.EXPAND.description",
  8393. abstract: "formula.functionList.EXPAND.abstract",
  8394. functionParameter: [
  8395. {
  8396. name: "formula.functionList.EXPAND.functionParameter.array.name",
  8397. detail: "formula.functionList.EXPAND.functionParameter.array.detail",
  8398. example: "A2",
  8399. require: 1,
  8400. repeat: 0
  8401. },
  8402. {
  8403. name: "formula.functionList.EXPAND.functionParameter.rows.name",
  8404. detail: "formula.functionList.EXPAND.functionParameter.rows.detail",
  8405. example: "3",
  8406. require: 1,
  8407. repeat: 0
  8408. },
  8409. {
  8410. name: "formula.functionList.EXPAND.functionParameter.columns.name",
  8411. detail: "formula.functionList.EXPAND.functionParameter.columns.detail",
  8412. example: "3",
  8413. require: 0,
  8414. repeat: 0
  8415. },
  8416. {
  8417. name: "formula.functionList.EXPAND.functionParameter.padWith.name",
  8418. detail: "formula.functionList.EXPAND.functionParameter.padWith.detail",
  8419. example: '"-"',
  8420. require: 0,
  8421. repeat: 0
  8422. }
  8423. ]
  8424. },
  8425. {
  8426. functionName: y.FILTER,
  8427. functionType: t.Lookup,
  8428. description: "formula.functionList.FILTER.description",
  8429. abstract: "formula.functionList.FILTER.abstract",
  8430. functionParameter: [
  8431. {
  8432. name: "formula.functionList.FILTER.functionParameter.array.name",
  8433. detail: "formula.functionList.FILTER.functionParameter.array.detail",
  8434. example: "A5:D20",
  8435. require: 1,
  8436. repeat: 0
  8437. },
  8438. {
  8439. name: "formula.functionList.FILTER.functionParameter.include.name",
  8440. detail: "formula.functionList.FILTER.functionParameter.include.detail",
  8441. example: '(C5:C20="Apple")*(A5:A20="East")',
  8442. require: 1,
  8443. repeat: 0
  8444. },
  8445. {
  8446. name: "formula.functionList.FILTER.functionParameter.ifEmpty.name",
  8447. detail: "formula.functionList.FILTER.functionParameter.ifEmpty.detail",
  8448. example: '""',
  8449. require: 0,
  8450. repeat: 0
  8451. }
  8452. ]
  8453. },
  8454. {
  8455. functionName: y.FORMULATEXT,
  8456. functionType: t.Lookup,
  8457. description: "formula.functionList.FORMULATEXT.description",
  8458. abstract: "formula.functionList.FORMULATEXT.abstract",
  8459. functionParameter: [
  8460. {
  8461. name: "formula.functionList.FORMULATEXT.functionParameter.reference.name",
  8462. detail: "formula.functionList.FORMULATEXT.functionParameter.reference.detail",
  8463. example: "A1:A20",
  8464. require: 1,
  8465. repeat: 0
  8466. }
  8467. ]
  8468. },
  8469. {
  8470. functionName: y.GETPIVOTDATA,
  8471. functionType: t.Lookup,
  8472. description: "formula.functionList.GETPIVOTDATA.description",
  8473. abstract: "formula.functionList.GETPIVOTDATA.abstract",
  8474. functionParameter: [
  8475. {
  8476. name: "formula.functionList.GETPIVOTDATA.functionParameter.number1.name",
  8477. detail: "formula.functionList.GETPIVOTDATA.functionParameter.number1.detail",
  8478. example: "A1:A20",
  8479. require: 1,
  8480. repeat: 0
  8481. },
  8482. {
  8483. name: "formula.functionList.GETPIVOTDATA.functionParameter.number2.name",
  8484. detail: "formula.functionList.GETPIVOTDATA.functionParameter.number2.detail",
  8485. example: "A1:A20",
  8486. require: 1,
  8487. repeat: 0
  8488. }
  8489. ]
  8490. },
  8491. {
  8492. functionName: y.HLOOKUP,
  8493. functionType: t.Lookup,
  8494. description: "formula.functionList.HLOOKUP.description",
  8495. abstract: "formula.functionList.HLOOKUP.abstract",
  8496. functionParameter: [
  8497. {
  8498. name: "formula.functionList.HLOOKUP.functionParameter.lookupValue.name",
  8499. detail: "formula.functionList.HLOOKUP.functionParameter.lookupValue.detail",
  8500. example: "A1",
  8501. require: 1,
  8502. repeat: 0
  8503. },
  8504. {
  8505. name: "formula.functionList.HLOOKUP.functionParameter.tableArray.name",
  8506. detail: "formula.functionList.HLOOKUP.functionParameter.tableArray.detail",
  8507. example: "A1:A20",
  8508. require: 1,
  8509. repeat: 0
  8510. },
  8511. {
  8512. name: "formula.functionList.HLOOKUP.functionParameter.rowIndexNum.name",
  8513. detail: "formula.functionList.HLOOKUP.functionParameter.rowIndexNum.detail",
  8514. example: "1",
  8515. require: 1,
  8516. repeat: 0
  8517. },
  8518. {
  8519. name: "formula.functionList.HLOOKUP.functionParameter.rangeLookup.name",
  8520. detail: "formula.functionList.HLOOKUP.functionParameter.rangeLookup.detail",
  8521. example: "false",
  8522. require: 0,
  8523. repeat: 0
  8524. }
  8525. ]
  8526. },
  8527. {
  8528. functionName: y.HSTACK,
  8529. functionType: t.Lookup,
  8530. description: "formula.functionList.HSTACK.description",
  8531. abstract: "formula.functionList.HSTACK.abstract",
  8532. functionParameter: [
  8533. {
  8534. name: "formula.functionList.HSTACK.functionParameter.array1.name",
  8535. detail: "formula.functionList.HSTACK.functionParameter.array1.detail",
  8536. example: "A2:C3",
  8537. require: 1,
  8538. repeat: 0
  8539. },
  8540. {
  8541. name: "formula.functionList.HSTACK.functionParameter.array2.name",
  8542. detail: "formula.functionList.HSTACK.functionParameter.array2.detail",
  8543. example: "E2:G3",
  8544. require: 0,
  8545. repeat: 1
  8546. }
  8547. ]
  8548. },
  8549. {
  8550. functionName: y.HYPERLINK,
  8551. functionType: t.Lookup,
  8552. description: "formula.functionList.HYPERLINK.description",
  8553. abstract: "formula.functionList.HYPERLINK.abstract",
  8554. functionParameter: [
  8555. {
  8556. name: "formula.functionList.HYPERLINK.functionParameter.number1.name",
  8557. detail: "formula.functionList.HYPERLINK.functionParameter.number1.detail",
  8558. example: "A1:A20",
  8559. require: 1,
  8560. repeat: 0
  8561. },
  8562. {
  8563. name: "formula.functionList.HYPERLINK.functionParameter.number2.name",
  8564. detail: "formula.functionList.HYPERLINK.functionParameter.number2.detail",
  8565. example: "A1:A20",
  8566. require: 1,
  8567. repeat: 0
  8568. }
  8569. ]
  8570. },
  8571. {
  8572. functionName: y.IMAGE,
  8573. functionType: t.Lookup,
  8574. description: "formula.functionList.IMAGE.description",
  8575. abstract: "formula.functionList.IMAGE.abstract",
  8576. functionParameter: [
  8577. {
  8578. name: "formula.functionList.IMAGE.functionParameter.number1.name",
  8579. detail: "formula.functionList.IMAGE.functionParameter.number1.detail",
  8580. example: "A1:A20",
  8581. require: 1,
  8582. repeat: 0
  8583. },
  8584. {
  8585. name: "formula.functionList.IMAGE.functionParameter.number2.name",
  8586. detail: "formula.functionList.IMAGE.functionParameter.number2.detail",
  8587. example: "A1:A20",
  8588. require: 1,
  8589. repeat: 0
  8590. }
  8591. ]
  8592. },
  8593. {
  8594. functionName: y.INDEX,
  8595. functionType: t.Lookup,
  8596. description: "formula.functionList.INDEX.description",
  8597. abstract: "formula.functionList.INDEX.abstract",
  8598. functionParameter: [
  8599. {
  8600. name: "formula.functionList.INDEX.functionParameter.reference.name",
  8601. detail: "formula.functionList.INDEX.functionParameter.reference.detail",
  8602. example: "A1:A20",
  8603. require: 1,
  8604. repeat: 0
  8605. },
  8606. {
  8607. name: "formula.functionList.INDEX.functionParameter.rowNum.name",
  8608. detail: "formula.functionList.INDEX.functionParameter.rowNum.detail",
  8609. example: "1",
  8610. require: 0,
  8611. repeat: 0
  8612. },
  8613. {
  8614. name: "formula.functionList.INDEX.functionParameter.columnNum.name",
  8615. detail: "formula.functionList.INDEX.functionParameter.columnNum.detail",
  8616. example: "1",
  8617. require: 0,
  8618. repeat: 0
  8619. },
  8620. {
  8621. name: "formula.functionList.INDEX.functionParameter.areaNum.name",
  8622. detail: "formula.functionList.INDEX.functionParameter.areaNum.detail",
  8623. example: "2",
  8624. require: 0,
  8625. repeat: 0
  8626. }
  8627. ]
  8628. },
  8629. {
  8630. functionName: y.INDIRECT,
  8631. functionType: t.Lookup,
  8632. description: "formula.functionList.INDIRECT.description",
  8633. abstract: "formula.functionList.INDIRECT.abstract",
  8634. functionParameter: [
  8635. {
  8636. name: "formula.functionList.INDIRECT.functionParameter.refText.name",
  8637. detail: "formula.functionList.INDIRECT.functionParameter.refText.detail",
  8638. example: '"A1"',
  8639. require: 1,
  8640. repeat: 0
  8641. },
  8642. {
  8643. name: "formula.functionList.INDIRECT.functionParameter.a1.name",
  8644. detail: "formula.functionList.INDIRECT.functionParameter.a1.detail",
  8645. example: "TRUE",
  8646. require: 0,
  8647. repeat: 0
  8648. }
  8649. ]
  8650. },
  8651. {
  8652. functionName: y.LOOKUP,
  8653. functionType: t.Lookup,
  8654. description: "formula.functionList.LOOKUP.description",
  8655. abstract: "formula.functionList.LOOKUP.abstract",
  8656. functionParameter: [
  8657. {
  8658. name: "formula.functionList.LOOKUP.functionParameter.lookupValue.name",
  8659. detail: "formula.functionList.LOOKUP.functionParameter.lookupValue.detail",
  8660. example: "A1",
  8661. require: 1,
  8662. repeat: 0
  8663. },
  8664. {
  8665. name: "formula.functionList.LOOKUP.functionParameter.lookupVectorOrArray.name",
  8666. detail: "formula.functionList.LOOKUP.functionParameter.lookupVectorOrArray.detail",
  8667. example: "A1:A20",
  8668. require: 1,
  8669. repeat: 0
  8670. },
  8671. {
  8672. name: "formula.functionList.LOOKUP.functionParameter.resultVector.name",
  8673. detail: "formula.functionList.LOOKUP.functionParameter.resultVector.detail",
  8674. example: "A1:A20",
  8675. require: 0,
  8676. repeat: 0
  8677. }
  8678. ]
  8679. },
  8680. {
  8681. functionName: y.MATCH,
  8682. functionType: t.Lookup,
  8683. description: "formula.functionList.MATCH.description",
  8684. abstract: "formula.functionList.MATCH.abstract",
  8685. functionParameter: [
  8686. {
  8687. name: "formula.functionList.MATCH.functionParameter.lookupValue.name",
  8688. detail: "formula.functionList.MATCH.functionParameter.lookupValue.detail",
  8689. example: "10",
  8690. require: 1,
  8691. repeat: 0
  8692. },
  8693. {
  8694. name: "formula.functionList.MATCH.functionParameter.lookupArray.name",
  8695. detail: "formula.functionList.MATCH.functionParameter.lookupArray.detail",
  8696. example: "A1:A20",
  8697. require: 1,
  8698. repeat: 0
  8699. },
  8700. {
  8701. name: "formula.functionList.MATCH.functionParameter.matchType.name",
  8702. detail: "formula.functionList.MATCH.functionParameter.matchType.detail",
  8703. example: "1",
  8704. require: 0,
  8705. repeat: 0
  8706. }
  8707. ]
  8708. },
  8709. {
  8710. functionName: y.OFFSET,
  8711. functionType: t.Lookup,
  8712. description: "formula.functionList.OFFSET.description",
  8713. abstract: "formula.functionList.OFFSET.abstract",
  8714. functionParameter: [
  8715. {
  8716. name: "formula.functionList.OFFSET.functionParameter.reference.name",
  8717. detail: "formula.functionList.OFFSET.functionParameter.reference.detail",
  8718. example: "A1",
  8719. require: 1,
  8720. repeat: 0
  8721. },
  8722. {
  8723. name: "formula.functionList.OFFSET.functionParameter.rows.name",
  8724. detail: "formula.functionList.OFFSET.functionParameter.rows.detail",
  8725. example: "1",
  8726. require: 1,
  8727. repeat: 0
  8728. },
  8729. {
  8730. name: "formula.functionList.OFFSET.functionParameter.cols.name",
  8731. detail: "formula.functionList.OFFSET.functionParameter.cols.detail",
  8732. example: "1",
  8733. require: 1,
  8734. repeat: 0
  8735. },
  8736. {
  8737. name: "formula.functionList.OFFSET.functionParameter.height.name",
  8738. detail: "formula.functionList.OFFSET.functionParameter.height.detail",
  8739. example: "1",
  8740. require: 0,
  8741. repeat: 0
  8742. },
  8743. {
  8744. name: "formula.functionList.OFFSET.functionParameter.width.name",
  8745. detail: "formula.functionList.OFFSET.functionParameter.width.detail",
  8746. example: "1",
  8747. require: 0,
  8748. repeat: 0
  8749. }
  8750. ]
  8751. },
  8752. {
  8753. functionName: y.ROW,
  8754. functionType: t.Lookup,
  8755. description: "formula.functionList.ROW.description",
  8756. abstract: "formula.functionList.ROW.abstract",
  8757. functionParameter: [
  8758. {
  8759. name: "formula.functionList.ROW.functionParameter.reference.name",
  8760. detail: "formula.functionList.ROW.functionParameter.reference.detail",
  8761. example: "A1",
  8762. require: 0,
  8763. repeat: 0
  8764. }
  8765. ]
  8766. },
  8767. {
  8768. functionName: y.ROWS,
  8769. functionType: t.Lookup,
  8770. description: "formula.functionList.ROWS.description",
  8771. abstract: "formula.functionList.ROWS.abstract",
  8772. functionParameter: [
  8773. {
  8774. name: "formula.functionList.ROWS.functionParameter.array.name",
  8775. detail: "formula.functionList.ROWS.functionParameter.array.detail",
  8776. example: "A1:A20",
  8777. require: 1,
  8778. repeat: 0
  8779. }
  8780. ]
  8781. },
  8782. {
  8783. functionName: y.RTD,
  8784. functionType: t.Lookup,
  8785. description: "formula.functionList.RTD.description",
  8786. abstract: "formula.functionList.RTD.abstract",
  8787. functionParameter: [
  8788. {
  8789. name: "formula.functionList.RTD.functionParameter.number1.name",
  8790. detail: "formula.functionList.RTD.functionParameter.number1.detail",
  8791. example: "A1:A20",
  8792. require: 1,
  8793. repeat: 0
  8794. },
  8795. {
  8796. name: "formula.functionList.RTD.functionParameter.number2.name",
  8797. detail: "formula.functionList.RTD.functionParameter.number2.detail",
  8798. example: "A1:A20",
  8799. require: 1,
  8800. repeat: 0
  8801. }
  8802. ]
  8803. },
  8804. {
  8805. functionName: y.SORT,
  8806. functionType: t.Lookup,
  8807. description: "formula.functionList.SORT.description",
  8808. abstract: "formula.functionList.SORT.abstract",
  8809. functionParameter: [
  8810. {
  8811. name: "formula.functionList.SORT.functionParameter.array.name",
  8812. detail: "formula.functionList.SORT.functionParameter.array.detail",
  8813. example: "A2:A17",
  8814. require: 1,
  8815. repeat: 0
  8816. },
  8817. {
  8818. name: "formula.functionList.SORT.functionParameter.sortIndex.name",
  8819. detail: "formula.functionList.SORT.functionParameter.sortIndex.detail",
  8820. example: "1",
  8821. require: 0,
  8822. repeat: 0
  8823. },
  8824. {
  8825. name: "formula.functionList.SORT.functionParameter.sortOrder.name",
  8826. detail: "formula.functionList.SORT.functionParameter.sortOrder.detail",
  8827. example: "1",
  8828. require: 0,
  8829. repeat: 0
  8830. },
  8831. {
  8832. name: "formula.functionList.SORT.functionParameter.byCol.name",
  8833. detail: "formula.functionList.SORT.functionParameter.byCol.detail",
  8834. example: "false",
  8835. require: 0,
  8836. repeat: 0
  8837. }
  8838. ]
  8839. },
  8840. {
  8841. functionName: y.SORTBY,
  8842. functionType: t.Lookup,
  8843. description: "formula.functionList.SORTBY.description",
  8844. abstract: "formula.functionList.SORTBY.abstract",
  8845. functionParameter: [
  8846. {
  8847. name: "formula.functionList.SORTBY.functionParameter.array.name",
  8848. detail: "formula.functionList.SORTBY.functionParameter.array.detail",
  8849. example: "D2:D9",
  8850. require: 1,
  8851. repeat: 0
  8852. },
  8853. {
  8854. name: "formula.functionList.SORTBY.functionParameter.byArray1.name",
  8855. detail: "formula.functionList.SORTBY.functionParameter.byArray1.detail",
  8856. example: "E2:E9",
  8857. require: 1,
  8858. repeat: 0
  8859. },
  8860. {
  8861. name: "formula.functionList.SORTBY.functionParameter.sortOrder1.name",
  8862. detail: "formula.functionList.SORTBY.functionParameter.sortOrder1.detail",
  8863. example: "1",
  8864. require: 1,
  8865. repeat: 0
  8866. },
  8867. {
  8868. name: "formula.functionList.SORTBY.functionParameter.byArray2.name",
  8869. detail: "formula.functionList.SORTBY.functionParameter.byArray2.detail",
  8870. example: "E2:E9",
  8871. require: 0,
  8872. repeat: 1
  8873. },
  8874. {
  8875. name: "formula.functionList.SORTBY.functionParameter.sortOrder2.name",
  8876. detail: "formula.functionList.SORTBY.functionParameter.sortOrder2.detail",
  8877. example: "1",
  8878. require: 0,
  8879. repeat: 1
  8880. }
  8881. ]
  8882. },
  8883. {
  8884. functionName: y.TAKE,
  8885. functionType: t.Lookup,
  8886. description: "formula.functionList.TAKE.description",
  8887. abstract: "formula.functionList.TAKE.abstract",
  8888. functionParameter: [
  8889. {
  8890. name: "formula.functionList.TAKE.functionParameter.array.name",
  8891. detail: "formula.functionList.TAKE.functionParameter.array.detail",
  8892. example: "A2:C4",
  8893. require: 1,
  8894. repeat: 0
  8895. },
  8896. {
  8897. name: "formula.functionList.TAKE.functionParameter.rows.name",
  8898. detail: "formula.functionList.TAKE.functionParameter.rows.detail",
  8899. example: "2",
  8900. require: 1,
  8901. repeat: 0
  8902. },
  8903. {
  8904. name: "formula.functionList.TAKE.functionParameter.columns.name",
  8905. detail: "formula.functionList.TAKE.functionParameter.columns.detail",
  8906. example: "2",
  8907. require: 0,
  8908. repeat: 0
  8909. }
  8910. ]
  8911. },
  8912. {
  8913. functionName: y.TOCOL,
  8914. functionType: t.Lookup,
  8915. description: "formula.functionList.TOCOL.description",
  8916. abstract: "formula.functionList.TOCOL.abstract",
  8917. functionParameter: [
  8918. {
  8919. name: "formula.functionList.TOCOL.functionParameter.array.name",
  8920. detail: "formula.functionList.TOCOL.functionParameter.array.detail",
  8921. example: "A2:D4",
  8922. require: 1,
  8923. repeat: 0
  8924. },
  8925. {
  8926. name: "formula.functionList.TOCOL.functionParameter.ignore.name",
  8927. detail: "formula.functionList.TOCOL.functionParameter.ignore.detail",
  8928. example: "1",
  8929. require: 0,
  8930. repeat: 0
  8931. },
  8932. {
  8933. name: "formula.functionList.TOCOL.functionParameter.scanByColumn.name",
  8934. detail: "formula.functionList.TOCOL.functionParameter.scanByColumn.detail",
  8935. example: "TRUE",
  8936. require: 0,
  8937. repeat: 0
  8938. }
  8939. ]
  8940. },
  8941. {
  8942. functionName: y.TOROW,
  8943. functionType: t.Lookup,
  8944. description: "formula.functionList.TOROW.description",
  8945. abstract: "formula.functionList.TOROW.abstract",
  8946. functionParameter: [
  8947. {
  8948. name: "formula.functionList.TOROW.functionParameter.array.name",
  8949. detail: "formula.functionList.TOROW.functionParameter.array.detail",
  8950. example: "A2:D4",
  8951. require: 1,
  8952. repeat: 0
  8953. },
  8954. {
  8955. name: "formula.functionList.TOROW.functionParameter.ignore.name",
  8956. detail: "formula.functionList.TOROW.functionParameter.ignore.detail",
  8957. example: "1",
  8958. require: 0,
  8959. repeat: 0
  8960. },
  8961. {
  8962. name: "formula.functionList.TOROW.functionParameter.scanByColumn.name",
  8963. detail: "formula.functionList.TOROW.functionParameter.scanByColumn.detail",
  8964. example: "TRUE",
  8965. require: 0,
  8966. repeat: 0
  8967. }
  8968. ]
  8969. },
  8970. {
  8971. functionName: y.TRANSPOSE,
  8972. functionType: t.Lookup,
  8973. description: "formula.functionList.TRANSPOSE.description",
  8974. abstract: "formula.functionList.TRANSPOSE.abstract",
  8975. functionParameter: [
  8976. {
  8977. name: "formula.functionList.TRANSPOSE.functionParameter.array.name",
  8978. detail: "formula.functionList.TRANSPOSE.functionParameter.array.detail",
  8979. example: "A2:F9",
  8980. require: 1,
  8981. repeat: 0
  8982. }
  8983. ]
  8984. },
  8985. {
  8986. functionName: y.UNIQUE,
  8987. functionType: t.Lookup,
  8988. description: "formula.functionList.UNIQUE.description",
  8989. abstract: "formula.functionList.UNIQUE.abstract",
  8990. functionParameter: [
  8991. {
  8992. name: "formula.functionList.UNIQUE.functionParameter.array.name",
  8993. detail: "formula.functionList.UNIQUE.functionParameter.array.detail",
  8994. example: "A2:A12",
  8995. require: 1,
  8996. repeat: 0
  8997. },
  8998. {
  8999. name: "formula.functionList.UNIQUE.functionParameter.byCol.name",
  9000. detail: "formula.functionList.UNIQUE.functionParameter.byCol.detail",
  9001. example: "false",
  9002. require: 0,
  9003. repeat: 0
  9004. },
  9005. {
  9006. name: "formula.functionList.UNIQUE.functionParameter.exactlyOnce.name",
  9007. detail: "formula.functionList.UNIQUE.functionParameter.exactlyOnce.detail",
  9008. example: "false",
  9009. require: 0,
  9010. repeat: 0
  9011. }
  9012. ]
  9013. },
  9014. {
  9015. functionName: y.VLOOKUP,
  9016. functionType: t.Lookup,
  9017. description: "formula.functionList.VLOOKUP.description",
  9018. abstract: "formula.functionList.VLOOKUP.abstract",
  9019. functionParameter: [
  9020. {
  9021. name: "formula.functionList.VLOOKUP.functionParameter.lookupValue.name",
  9022. detail: "formula.functionList.VLOOKUP.functionParameter.lookupValue.detail",
  9023. example: "B2",
  9024. require: 1,
  9025. repeat: 0
  9026. },
  9027. {
  9028. name: "formula.functionList.VLOOKUP.functionParameter.tableArray.name",
  9029. detail: "formula.functionList.VLOOKUP.functionParameter.tableArray.detail",
  9030. example: "C2:E7",
  9031. require: 1,
  9032. repeat: 0
  9033. },
  9034. {
  9035. name: "formula.functionList.VLOOKUP.functionParameter.colIndexNum.name",
  9036. detail: "formula.functionList.VLOOKUP.functionParameter.colIndexNum.detail",
  9037. example: "1",
  9038. require: 1,
  9039. repeat: 0
  9040. },
  9041. {
  9042. name: "formula.functionList.VLOOKUP.functionParameter.rangeLookup.name",
  9043. detail: "formula.functionList.VLOOKUP.functionParameter.rangeLookup.detail",
  9044. example: "TRUE",
  9045. require: 0,
  9046. repeat: 0
  9047. }
  9048. ]
  9049. },
  9050. {
  9051. functionName: y.VSTACK,
  9052. functionType: t.Lookup,
  9053. description: "formula.functionList.VSTACK.description",
  9054. abstract: "formula.functionList.VSTACK.abstract",
  9055. functionParameter: [
  9056. {
  9057. name: "formula.functionList.VSTACK.functionParameter.array1.name",
  9058. detail: "formula.functionList.VSTACK.functionParameter.array1.detail",
  9059. example: "A2:C3",
  9060. require: 1,
  9061. repeat: 0
  9062. },
  9063. {
  9064. name: "formula.functionList.VSTACK.functionParameter.array2.name",
  9065. detail: "formula.functionList.VSTACK.functionParameter.array2.detail",
  9066. example: "E2:G3",
  9067. require: 0,
  9068. repeat: 1
  9069. }
  9070. ]
  9071. },
  9072. {
  9073. functionName: y.WRAPCOLS,
  9074. functionType: t.Lookup,
  9075. description: "formula.functionList.WRAPCOLS.description",
  9076. abstract: "formula.functionList.WRAPCOLS.abstract",
  9077. functionParameter: [
  9078. {
  9079. name: "formula.functionList.WRAPCOLS.functionParameter.vector.name",
  9080. detail: "formula.functionList.WRAPCOLS.functionParameter.vector.detail",
  9081. example: "A2:G2",
  9082. require: 1,
  9083. repeat: 0
  9084. },
  9085. {
  9086. name: "formula.functionList.WRAPCOLS.functionParameter.wrapCount.name",
  9087. detail: "formula.functionList.WRAPCOLS.functionParameter.wrapCount.detail",
  9088. example: "3",
  9089. require: 1,
  9090. repeat: 0
  9091. },
  9092. {
  9093. name: "formula.functionList.WRAPCOLS.functionParameter.padWith.name",
  9094. detail: "formula.functionList.WRAPCOLS.functionParameter.padWith.detail",
  9095. example: '"x"',
  9096. require: 0,
  9097. repeat: 0
  9098. }
  9099. ]
  9100. },
  9101. {
  9102. functionName: y.WRAPROWS,
  9103. functionType: t.Lookup,
  9104. description: "formula.functionList.WRAPROWS.description",
  9105. abstract: "formula.functionList.WRAPROWS.abstract",
  9106. functionParameter: [
  9107. {
  9108. name: "formula.functionList.WRAPROWS.functionParameter.vector.name",
  9109. detail: "formula.functionList.WRAPROWS.functionParameter.vector.detail",
  9110. example: "A2:G2",
  9111. require: 1,
  9112. repeat: 0
  9113. },
  9114. {
  9115. name: "formula.functionList.WRAPROWS.functionParameter.wrapCount.name",
  9116. detail: "formula.functionList.WRAPROWS.functionParameter.wrapCount.detail",
  9117. example: "3",
  9118. require: 1,
  9119. repeat: 0
  9120. },
  9121. {
  9122. name: "formula.functionList.WRAPROWS.functionParameter.padWith.name",
  9123. detail: "formula.functionList.WRAPROWS.functionParameter.padWith.detail",
  9124. example: '"x"',
  9125. require: 0,
  9126. repeat: 0
  9127. }
  9128. ]
  9129. },
  9130. {
  9131. functionName: y.XLOOKUP,
  9132. functionType: t.Lookup,
  9133. description: "formula.functionList.XLOOKUP.description",
  9134. abstract: "formula.functionList.XLOOKUP.abstract",
  9135. functionParameter: [
  9136. {
  9137. name: "formula.functionList.XLOOKUP.functionParameter.lookupValue.name",
  9138. detail: "formula.functionList.XLOOKUP.functionParameter.lookupValue.detail",
  9139. example: "A1",
  9140. require: 1,
  9141. repeat: 0
  9142. },
  9143. {
  9144. name: "formula.functionList.XLOOKUP.functionParameter.lookupArray.name",
  9145. detail: "formula.functionList.XLOOKUP.functionParameter.lookupArray.detail",
  9146. example: "A1:A20",
  9147. require: 1,
  9148. repeat: 0
  9149. },
  9150. {
  9151. name: "formula.functionList.XLOOKUP.functionParameter.returnArray.name",
  9152. detail: "formula.functionList.XLOOKUP.functionParameter.returnArray.detail",
  9153. example: "B1:B20",
  9154. require: 1,
  9155. repeat: 0
  9156. },
  9157. {
  9158. name: "formula.functionList.XLOOKUP.functionParameter.ifNotFound.name",
  9159. detail: "formula.functionList.XLOOKUP.functionParameter.ifNotFound.detail",
  9160. example: "default",
  9161. require: 0,
  9162. repeat: 0
  9163. },
  9164. {
  9165. name: "formula.functionList.XLOOKUP.functionParameter.matchMode.name",
  9166. detail: "formula.functionList.XLOOKUP.functionParameter.matchMode.detail",
  9167. example: "0",
  9168. require: 0,
  9169. repeat: 0
  9170. },
  9171. {
  9172. name: "formula.functionList.XLOOKUP.functionParameter.searchMode.name",
  9173. detail: "formula.functionList.XLOOKUP.functionParameter.searchMode.detail",
  9174. example: "1",
  9175. require: 0,
  9176. repeat: 0
  9177. }
  9178. ]
  9179. },
  9180. {
  9181. functionName: y.XMATCH,
  9182. functionType: t.Lookup,
  9183. description: "formula.functionList.XMATCH.description",
  9184. abstract: "formula.functionList.XMATCH.abstract",
  9185. functionParameter: [
  9186. {
  9187. name: "formula.functionList.XMATCH.functionParameter.lookupValue.name",
  9188. detail: "formula.functionList.XMATCH.functionParameter.lookupValue.detail",
  9189. example: "B1",
  9190. require: 1,
  9191. repeat: 0
  9192. },
  9193. {
  9194. name: "formula.functionList.XMATCH.functionParameter.lookupArray.name",
  9195. detail: "formula.functionList.XMATCH.functionParameter.lookupArray.detail",
  9196. example: "A1:A20",
  9197. require: 1,
  9198. repeat: 0
  9199. },
  9200. {
  9201. name: "formula.functionList.XMATCH.functionParameter.matchMode.name",
  9202. detail: "formula.functionList.XMATCH.functionParameter.matchMode.detail",
  9203. example: "0",
  9204. require: 0,
  9205. repeat: 0
  9206. },
  9207. {
  9208. name: "formula.functionList.XMATCH.functionParameter.searchMode.name",
  9209. detail: "formula.functionList.XMATCH.functionParameter.searchMode.detail",
  9210. example: "1",
  9211. require: 0,
  9212. repeat: 0
  9213. }
  9214. ]
  9215. }
  9216. ], ji = [
  9217. {
  9218. functionName: T.ABS,
  9219. functionType: t.Math,
  9220. description: "formula.functionList.ABS.description",
  9221. abstract: "formula.functionList.ABS.abstract",
  9222. functionParameter: [
  9223. {
  9224. name: "formula.functionList.ABS.functionParameter.number.name",
  9225. detail: "formula.functionList.ABS.functionParameter.number.detail",
  9226. example: "-2",
  9227. require: 1,
  9228. repeat: 0
  9229. }
  9230. ]
  9231. },
  9232. {
  9233. functionName: T.ACOS,
  9234. functionType: t.Math,
  9235. description: "formula.functionList.ACOS.description",
  9236. abstract: "formula.functionList.ACOS.abstract",
  9237. functionParameter: [
  9238. {
  9239. name: "formula.functionList.ACOS.functionParameter.number.name",
  9240. detail: "formula.functionList.ACOS.functionParameter.number.detail",
  9241. example: "0",
  9242. require: 1,
  9243. repeat: 0
  9244. }
  9245. ]
  9246. },
  9247. {
  9248. functionName: T.ACOSH,
  9249. functionType: t.Math,
  9250. description: "formula.functionList.ACOSH.description",
  9251. abstract: "formula.functionList.ACOSH.abstract",
  9252. functionParameter: [
  9253. {
  9254. name: "formula.functionList.ACOSH.functionParameter.number.name",
  9255. detail: "formula.functionList.ACOSH.functionParameter.number.detail",
  9256. example: "2",
  9257. require: 1,
  9258. repeat: 0
  9259. }
  9260. ]
  9261. },
  9262. {
  9263. functionName: T.ACOT,
  9264. functionType: t.Math,
  9265. description: "formula.functionList.ACOT.description",
  9266. abstract: "formula.functionList.ACOT.abstract",
  9267. functionParameter: [
  9268. {
  9269. name: "formula.functionList.ACOT.functionParameter.number.name",
  9270. detail: "formula.functionList.ACOT.functionParameter.number.detail",
  9271. example: "0",
  9272. require: 1,
  9273. repeat: 0
  9274. }
  9275. ]
  9276. },
  9277. {
  9278. functionName: T.ACOTH,
  9279. functionType: t.Math,
  9280. description: "formula.functionList.ACOTH.description",
  9281. abstract: "formula.functionList.ACOTH.abstract",
  9282. functionParameter: [
  9283. {
  9284. name: "formula.functionList.ACOTH.functionParameter.number.name",
  9285. detail: "formula.functionList.ACOTH.functionParameter.number.detail",
  9286. example: "6",
  9287. require: 1,
  9288. repeat: 0
  9289. }
  9290. ]
  9291. },
  9292. {
  9293. functionName: T.AGGREGATE,
  9294. functionType: t.Math,
  9295. description: "formula.functionList.AGGREGATE.description",
  9296. abstract: "formula.functionList.AGGREGATE.abstract",
  9297. functionParameter: [
  9298. {
  9299. name: "formula.functionList.AGGREGATE.functionParameter.number1.name",
  9300. detail: "formula.functionList.AGGREGATE.functionParameter.number1.detail",
  9301. example: "A1:A20",
  9302. require: 1,
  9303. repeat: 0
  9304. },
  9305. {
  9306. name: "formula.functionList.AGGREGATE.functionParameter.number2.name",
  9307. detail: "formula.functionList.AGGREGATE.functionParameter.number2.detail",
  9308. example: "A1:A20",
  9309. require: 1,
  9310. repeat: 0
  9311. }
  9312. ]
  9313. },
  9314. {
  9315. functionName: T.ARABIC,
  9316. functionType: t.Math,
  9317. description: "formula.functionList.ARABIC.description",
  9318. abstract: "formula.functionList.ARABIC.abstract",
  9319. functionParameter: [
  9320. {
  9321. name: "formula.functionList.ARABIC.functionParameter.text.name",
  9322. detail: "formula.functionList.ARABIC.functionParameter.text.detail",
  9323. example: '"LVII"',
  9324. require: 1,
  9325. repeat: 0
  9326. }
  9327. ]
  9328. },
  9329. {
  9330. functionName: T.ASIN,
  9331. functionType: t.Math,
  9332. description: "formula.functionList.ASIN.description",
  9333. abstract: "formula.functionList.ASIN.abstract",
  9334. functionParameter: [
  9335. {
  9336. name: "formula.functionList.ASIN.functionParameter.number.name",
  9337. detail: "formula.functionList.ASIN.functionParameter.number.detail",
  9338. example: "0",
  9339. require: 1,
  9340. repeat: 0
  9341. }
  9342. ]
  9343. },
  9344. {
  9345. functionName: T.ASINH,
  9346. functionType: t.Math,
  9347. description: "formula.functionList.ASINH.description",
  9348. abstract: "formula.functionList.ASINH.abstract",
  9349. functionParameter: [
  9350. {
  9351. name: "formula.functionList.ASINH.functionParameter.number.name",
  9352. detail: "formula.functionList.ASINH.functionParameter.number.detail",
  9353. example: "10",
  9354. require: 1,
  9355. repeat: 0
  9356. }
  9357. ]
  9358. },
  9359. {
  9360. functionName: T.ATAN,
  9361. functionType: t.Math,
  9362. description: "formula.functionList.ATAN.description",
  9363. abstract: "formula.functionList.ATAN.abstract",
  9364. functionParameter: [
  9365. {
  9366. name: "formula.functionList.ATAN.functionParameter.number.name",
  9367. detail: "formula.functionList.ATAN.functionParameter.number.detail",
  9368. example: "1",
  9369. require: 1,
  9370. repeat: 0
  9371. }
  9372. ]
  9373. },
  9374. {
  9375. functionName: T.ATAN2,
  9376. functionType: t.Math,
  9377. description: "formula.functionList.ATAN2.description",
  9378. abstract: "formula.functionList.ATAN2.abstract",
  9379. functionParameter: [
  9380. {
  9381. name: "formula.functionList.ATAN2.functionParameter.xNum.name",
  9382. detail: "formula.functionList.ATAN2.functionParameter.xNum.detail",
  9383. example: "4",
  9384. require: 1,
  9385. repeat: 0
  9386. },
  9387. {
  9388. name: "formula.functionList.ATAN2.functionParameter.yNum.name",
  9389. detail: "formula.functionList.ATAN2.functionParameter.yNum.detail",
  9390. example: "3",
  9391. require: 1,
  9392. repeat: 0
  9393. }
  9394. ]
  9395. },
  9396. {
  9397. functionName: T.ATANH,
  9398. functionType: t.Math,
  9399. description: "formula.functionList.ATANH.description",
  9400. abstract: "formula.functionList.ATANH.abstract",
  9401. functionParameter: [
  9402. {
  9403. name: "formula.functionList.ATANH.functionParameter.number.name",
  9404. detail: "formula.functionList.ATANH.functionParameter.number.detail",
  9405. example: "0.1",
  9406. require: 1,
  9407. repeat: 0
  9408. }
  9409. ]
  9410. },
  9411. {
  9412. functionName: T.BASE,
  9413. functionType: t.Math,
  9414. description: "formula.functionList.BASE.description",
  9415. abstract: "formula.functionList.BASE.abstract",
  9416. functionParameter: [
  9417. {
  9418. name: "formula.functionList.BASE.functionParameter.number.name",
  9419. detail: "formula.functionList.BASE.functionParameter.number.detail",
  9420. example: "15",
  9421. require: 1,
  9422. repeat: 0
  9423. },
  9424. {
  9425. name: "formula.functionList.BASE.functionParameter.radix.name",
  9426. detail: "formula.functionList.BASE.functionParameter.radix.detail",
  9427. example: "2",
  9428. require: 1,
  9429. repeat: 0
  9430. },
  9431. {
  9432. name: "formula.functionList.BASE.functionParameter.minLength.name",
  9433. detail: "formula.functionList.BASE.functionParameter.minLength.detail",
  9434. example: "10",
  9435. require: 0,
  9436. repeat: 0
  9437. }
  9438. ]
  9439. },
  9440. {
  9441. functionName: T.CEILING,
  9442. functionType: t.Math,
  9443. description: "formula.functionList.CEILING.description",
  9444. abstract: "formula.functionList.CEILING.abstract",
  9445. functionParameter: [
  9446. {
  9447. name: "formula.functionList.CEILING.functionParameter.number.name",
  9448. detail: "formula.functionList.CEILING.functionParameter.number.detail",
  9449. example: "2.5",
  9450. require: 1,
  9451. repeat: 0
  9452. },
  9453. {
  9454. name: "formula.functionList.CEILING.functionParameter.significance.name",
  9455. detail: "formula.functionList.CEILING.functionParameter.significance.detail",
  9456. example: "1",
  9457. require: 1,
  9458. repeat: 0
  9459. }
  9460. ]
  9461. },
  9462. {
  9463. functionName: T.CEILING_MATH,
  9464. functionType: t.Math,
  9465. description: "formula.functionList.CEILING_MATH.description",
  9466. abstract: "formula.functionList.CEILING_MATH.abstract",
  9467. functionParameter: [
  9468. {
  9469. name: "formula.functionList.CEILING_MATH.functionParameter.number.name",
  9470. detail: "formula.functionList.CEILING_MATH.functionParameter.number.detail",
  9471. example: "-5.5",
  9472. require: 1,
  9473. repeat: 0
  9474. },
  9475. {
  9476. name: "formula.functionList.CEILING_MATH.functionParameter.significance.name",
  9477. detail: "formula.functionList.CEILING_MATH.functionParameter.significance.detail",
  9478. example: "2",
  9479. require: 0,
  9480. repeat: 0
  9481. },
  9482. {
  9483. name: "formula.functionList.CEILING_MATH.functionParameter.mode.name",
  9484. detail: "formula.functionList.CEILING_MATH.functionParameter.mode.detail",
  9485. example: "-1",
  9486. require: 0,
  9487. repeat: 0
  9488. }
  9489. ]
  9490. },
  9491. {
  9492. functionName: T.CEILING_PRECISE,
  9493. functionType: t.Math,
  9494. description: "formula.functionList.CEILING_PRECISE.description",
  9495. abstract: "formula.functionList.CEILING_PRECISE.abstract",
  9496. functionParameter: [
  9497. {
  9498. name: "formula.functionList.CEILING_PRECISE.functionParameter.number.name",
  9499. detail: "formula.functionList.CEILING_PRECISE.functionParameter.number.detail",
  9500. example: "4.3",
  9501. require: 1,
  9502. repeat: 0
  9503. },
  9504. {
  9505. name: "formula.functionList.CEILING_PRECISE.functionParameter.significance.name",
  9506. detail: "formula.functionList.CEILING_PRECISE.functionParameter.significance.detail",
  9507. example: "2",
  9508. require: 0,
  9509. repeat: 0
  9510. }
  9511. ]
  9512. },
  9513. {
  9514. functionName: T.COMBIN,
  9515. functionType: t.Math,
  9516. description: "formula.functionList.COMBIN.description",
  9517. abstract: "formula.functionList.COMBIN.abstract",
  9518. functionParameter: [
  9519. {
  9520. name: "formula.functionList.COMBIN.functionParameter.number.name",
  9521. detail: "formula.functionList.COMBIN.functionParameter.number.detail",
  9522. example: "8",
  9523. require: 1,
  9524. repeat: 0
  9525. },
  9526. {
  9527. name: "formula.functionList.COMBIN.functionParameter.numberChosen.name",
  9528. detail: "formula.functionList.COMBIN.functionParameter.numberChosen.detail",
  9529. example: "2",
  9530. require: 1,
  9531. repeat: 0
  9532. }
  9533. ]
  9534. },
  9535. {
  9536. functionName: T.COMBINA,
  9537. functionType: t.Math,
  9538. description: "formula.functionList.COMBINA.description",
  9539. abstract: "formula.functionList.COMBINA.abstract",
  9540. functionParameter: [
  9541. {
  9542. name: "formula.functionList.COMBINA.functionParameter.number.name",
  9543. detail: "formula.functionList.COMBINA.functionParameter.number.detail",
  9544. example: "8",
  9545. require: 1,
  9546. repeat: 0
  9547. },
  9548. {
  9549. name: "formula.functionList.COMBINA.functionParameter.numberChosen.name",
  9550. detail: "formula.functionList.COMBINA.functionParameter.numberChosen.detail",
  9551. example: "2",
  9552. require: 1,
  9553. repeat: 0
  9554. }
  9555. ]
  9556. },
  9557. {
  9558. functionName: T.COS,
  9559. functionType: t.Math,
  9560. description: "formula.functionList.COS.description",
  9561. abstract: "formula.functionList.COS.abstract",
  9562. functionParameter: [
  9563. {
  9564. name: "formula.functionList.COS.functionParameter.number.name",
  9565. detail: "formula.functionList.COS.functionParameter.number.detail",
  9566. example: "1",
  9567. require: 1,
  9568. repeat: 0
  9569. }
  9570. ]
  9571. },
  9572. {
  9573. functionName: T.COSH,
  9574. functionType: t.Math,
  9575. description: "formula.functionList.COSH.description",
  9576. abstract: "formula.functionList.COSH.abstract",
  9577. functionParameter: [
  9578. {
  9579. name: "formula.functionList.COSH.functionParameter.number.name",
  9580. detail: "formula.functionList.COSH.functionParameter.number.detail",
  9581. example: "4",
  9582. require: 1,
  9583. repeat: 0
  9584. }
  9585. ]
  9586. },
  9587. {
  9588. functionName: T.COT,
  9589. functionType: t.Math,
  9590. description: "formula.functionList.COT.description",
  9591. abstract: "formula.functionList.COT.abstract",
  9592. functionParameter: [
  9593. {
  9594. name: "formula.functionList.COT.functionParameter.number.name",
  9595. detail: "formula.functionList.COT.functionParameter.number.detail",
  9596. example: "30",
  9597. require: 1,
  9598. repeat: 0
  9599. }
  9600. ]
  9601. },
  9602. {
  9603. functionName: T.COTH,
  9604. functionType: t.Math,
  9605. description: "formula.functionList.COTH.description",
  9606. abstract: "formula.functionList.COTH.abstract",
  9607. functionParameter: [
  9608. {
  9609. name: "formula.functionList.COTH.functionParameter.number.name",
  9610. detail: "formula.functionList.COTH.functionParameter.number.detail",
  9611. example: "2",
  9612. require: 1,
  9613. repeat: 0
  9614. }
  9615. ]
  9616. },
  9617. {
  9618. functionName: T.CSC,
  9619. functionType: t.Math,
  9620. description: "formula.functionList.CSC.description",
  9621. abstract: "formula.functionList.CSC.abstract",
  9622. functionParameter: [
  9623. {
  9624. name: "formula.functionList.CSC.functionParameter.number.name",
  9625. detail: "formula.functionList.CSC.functionParameter.number.detail",
  9626. example: "15",
  9627. require: 1,
  9628. repeat: 0
  9629. }
  9630. ]
  9631. },
  9632. {
  9633. functionName: T.CSCH,
  9634. functionType: t.Math,
  9635. description: "formula.functionList.CSCH.description",
  9636. abstract: "formula.functionList.CSCH.abstract",
  9637. functionParameter: [
  9638. {
  9639. name: "formula.functionList.CSCH.functionParameter.number.name",
  9640. detail: "formula.functionList.CSCH.functionParameter.number.detail",
  9641. example: "1.5",
  9642. require: 1,
  9643. repeat: 0
  9644. }
  9645. ]
  9646. },
  9647. {
  9648. functionName: T.DECIMAL,
  9649. functionType: t.Math,
  9650. description: "formula.functionList.DECIMAL.description",
  9651. abstract: "formula.functionList.DECIMAL.abstract",
  9652. functionParameter: [
  9653. {
  9654. name: "formula.functionList.DECIMAL.functionParameter.text.name",
  9655. detail: "formula.functionList.DECIMAL.functionParameter.text.detail",
  9656. example: '"FF"',
  9657. require: 1,
  9658. repeat: 0
  9659. },
  9660. {
  9661. name: "formula.functionList.DECIMAL.functionParameter.radix.name",
  9662. detail: "formula.functionList.DECIMAL.functionParameter.radix.detail",
  9663. example: "16",
  9664. require: 1,
  9665. repeat: 0
  9666. }
  9667. ]
  9668. },
  9669. {
  9670. functionName: T.DEGREES,
  9671. functionType: t.Math,
  9672. description: "formula.functionList.DEGREES.description",
  9673. abstract: "formula.functionList.DEGREES.abstract",
  9674. functionParameter: [
  9675. {
  9676. name: "formula.functionList.DEGREES.functionParameter.angle.name",
  9677. detail: "formula.functionList.DEGREES.functionParameter.angle.detail",
  9678. example: "PI()",
  9679. require: 1,
  9680. repeat: 0
  9681. }
  9682. ]
  9683. },
  9684. {
  9685. functionName: T.EVEN,
  9686. functionType: t.Math,
  9687. description: "formula.functionList.EVEN.description",
  9688. abstract: "formula.functionList.EVEN.abstract",
  9689. functionParameter: [
  9690. {
  9691. name: "formula.functionList.EVEN.functionParameter.number.name",
  9692. detail: "formula.functionList.EVEN.functionParameter.number.detail",
  9693. example: "1.5",
  9694. require: 1,
  9695. repeat: 0
  9696. }
  9697. ]
  9698. },
  9699. {
  9700. functionName: T.EXP,
  9701. functionType: t.Math,
  9702. description: "formula.functionList.EXP.description",
  9703. abstract: "formula.functionList.EXP.abstract",
  9704. functionParameter: [
  9705. {
  9706. name: "formula.functionList.EXP.functionParameter.number.name",
  9707. detail: "formula.functionList.EXP.functionParameter.number.detail",
  9708. example: "2",
  9709. require: 1,
  9710. repeat: 0
  9711. }
  9712. ]
  9713. },
  9714. {
  9715. functionName: T.FACT,
  9716. functionType: t.Math,
  9717. description: "formula.functionList.FACT.description",
  9718. abstract: "formula.functionList.FACT.abstract",
  9719. functionParameter: [
  9720. {
  9721. name: "formula.functionList.FACT.functionParameter.number.name",
  9722. detail: "formula.functionList.FACT.functionParameter.number.detail",
  9723. example: "5",
  9724. require: 1,
  9725. repeat: 0
  9726. }
  9727. ]
  9728. },
  9729. {
  9730. functionName: T.FACTDOUBLE,
  9731. functionType: t.Math,
  9732. description: "formula.functionList.FACTDOUBLE.description",
  9733. abstract: "formula.functionList.FACTDOUBLE.abstract",
  9734. functionParameter: [
  9735. {
  9736. name: "formula.functionList.FACTDOUBLE.functionParameter.number.name",
  9737. detail: "formula.functionList.FACTDOUBLE.functionParameter.number.detail",
  9738. example: "6",
  9739. require: 1,
  9740. repeat: 0
  9741. }
  9742. ]
  9743. },
  9744. {
  9745. functionName: T.FLOOR,
  9746. functionType: t.Math,
  9747. description: "formula.functionList.FLOOR.description",
  9748. abstract: "formula.functionList.FLOOR.abstract",
  9749. functionParameter: [
  9750. {
  9751. name: "formula.functionList.FLOOR.functionParameter.number.name",
  9752. detail: "formula.functionList.FLOOR.functionParameter.number.detail",
  9753. example: "3.7",
  9754. require: 1,
  9755. repeat: 0
  9756. },
  9757. {
  9758. name: "formula.functionList.FLOOR.functionParameter.significance.name",
  9759. detail: "formula.functionList.FLOOR.functionParameter.significance.detail",
  9760. example: "2",
  9761. require: 1,
  9762. repeat: 0
  9763. }
  9764. ]
  9765. },
  9766. {
  9767. functionName: T.FLOOR_MATH,
  9768. functionType: t.Math,
  9769. description: "formula.functionList.FLOOR_MATH.description",
  9770. abstract: "formula.functionList.FLOOR_MATH.abstract",
  9771. functionParameter: [
  9772. {
  9773. name: "formula.functionList.FLOOR_MATH.functionParameter.number.name",
  9774. detail: "formula.functionList.FLOOR_MATH.functionParameter.number.detail",
  9775. example: "-5.5",
  9776. require: 1,
  9777. repeat: 0
  9778. },
  9779. {
  9780. name: "formula.functionList.FLOOR_MATH.functionParameter.significance.name",
  9781. detail: "formula.functionList.FLOOR_MATH.functionParameter.significance.detail",
  9782. example: "2",
  9783. require: 0,
  9784. repeat: 0
  9785. },
  9786. {
  9787. name: "formula.functionList.FLOOR_MATH.functionParameter.mode.name",
  9788. detail: "formula.functionList.FLOOR_MATH.functionParameter.mode.detail",
  9789. example: "-1",
  9790. require: 0,
  9791. repeat: 0
  9792. }
  9793. ]
  9794. },
  9795. {
  9796. functionName: T.FLOOR_PRECISE,
  9797. functionType: t.Math,
  9798. description: "formula.functionList.FLOOR_PRECISE.description",
  9799. abstract: "formula.functionList.FLOOR_PRECISE.abstract",
  9800. functionParameter: [
  9801. {
  9802. name: "formula.functionList.FLOOR_PRECISE.functionParameter.number.name",
  9803. detail: "formula.functionList.FLOOR_PRECISE.functionParameter.number.detail",
  9804. example: "-3.2",
  9805. require: 1,
  9806. repeat: 0
  9807. },
  9808. {
  9809. name: "formula.functionList.FLOOR_PRECISE.functionParameter.significance.name",
  9810. detail: "formula.functionList.FLOOR_PRECISE.functionParameter.significance.detail",
  9811. example: "-1",
  9812. require: 0,
  9813. repeat: 0
  9814. }
  9815. ]
  9816. },
  9817. {
  9818. functionName: T.GCD,
  9819. functionType: t.Math,
  9820. description: "formula.functionList.GCD.description",
  9821. abstract: "formula.functionList.GCD.abstract",
  9822. functionParameter: [
  9823. {
  9824. name: "formula.functionList.GCD.functionParameter.number1.name",
  9825. detail: "formula.functionList.GCD.functionParameter.number1.detail",
  9826. example: "5",
  9827. require: 1,
  9828. repeat: 0
  9829. },
  9830. {
  9831. name: "formula.functionList.GCD.functionParameter.number2.name",
  9832. detail: "formula.functionList.GCD.functionParameter.number2.detail",
  9833. example: "2",
  9834. require: 0,
  9835. repeat: 1
  9836. }
  9837. ]
  9838. },
  9839. {
  9840. functionName: T.INT,
  9841. functionType: t.Math,
  9842. description: "formula.functionList.INT.description",
  9843. abstract: "formula.functionList.INT.abstract",
  9844. functionParameter: [
  9845. {
  9846. name: "formula.functionList.INT.functionParameter.number.name",
  9847. detail: "formula.functionList.INT.functionParameter.number.detail",
  9848. example: "8.9",
  9849. require: 1,
  9850. repeat: 0
  9851. }
  9852. ]
  9853. },
  9854. {
  9855. functionName: T.ISO_CEILING,
  9856. functionType: t.Math,
  9857. description: "formula.functionList.ISO_CEILING.description",
  9858. abstract: "formula.functionList.ISO_CEILING.abstract",
  9859. functionParameter: [
  9860. {
  9861. name: "formula.functionList.ISO_CEILING.functionParameter.number1.name",
  9862. detail: "formula.functionList.ISO_CEILING.functionParameter.number1.detail",
  9863. example: "A1:A20",
  9864. require: 1,
  9865. repeat: 0
  9866. },
  9867. {
  9868. name: "formula.functionList.ISO_CEILING.functionParameter.number2.name",
  9869. detail: "formula.functionList.ISO_CEILING.functionParameter.number2.detail",
  9870. example: "A1:A20",
  9871. require: 1,
  9872. repeat: 0
  9873. }
  9874. ]
  9875. },
  9876. {
  9877. functionName: T.LCM,
  9878. functionType: t.Math,
  9879. description: "formula.functionList.LCM.description",
  9880. abstract: "formula.functionList.LCM.abstract",
  9881. functionParameter: [
  9882. {
  9883. name: "formula.functionList.LCM.functionParameter.number1.name",
  9884. detail: "formula.functionList.LCM.functionParameter.number1.detail",
  9885. example: "5",
  9886. require: 1,
  9887. repeat: 0
  9888. },
  9889. {
  9890. name: "formula.functionList.LCM.functionParameter.number2.name",
  9891. detail: "formula.functionList.LCM.functionParameter.number2.detail",
  9892. example: "2",
  9893. require: 0,
  9894. repeat: 1
  9895. }
  9896. ]
  9897. },
  9898. {
  9899. functionName: T.LET,
  9900. functionType: t.Math,
  9901. description: "formula.functionList.LET.description",
  9902. abstract: "formula.functionList.LET.abstract",
  9903. functionParameter: [
  9904. {
  9905. name: "formula.functionList.LET.functionParameter.number1.name",
  9906. detail: "formula.functionList.LET.functionParameter.number1.detail",
  9907. example: "A1:A20",
  9908. require: 1,
  9909. repeat: 0
  9910. },
  9911. {
  9912. name: "formula.functionList.LET.functionParameter.number2.name",
  9913. detail: "formula.functionList.LET.functionParameter.number2.detail",
  9914. example: "A1:A20",
  9915. require: 1,
  9916. repeat: 0
  9917. }
  9918. ]
  9919. },
  9920. {
  9921. functionName: T.LN,
  9922. functionType: t.Math,
  9923. description: "formula.functionList.LN.description",
  9924. abstract: "formula.functionList.LN.abstract",
  9925. functionParameter: [
  9926. {
  9927. name: "formula.functionList.LN.functionParameter.number.name",
  9928. detail: "formula.functionList.LN.functionParameter.number.detail",
  9929. example: "EXP(3)",
  9930. require: 1,
  9931. repeat: 0
  9932. }
  9933. ]
  9934. },
  9935. {
  9936. functionName: T.LOG,
  9937. functionType: t.Math,
  9938. description: "formula.functionList.LOG.description",
  9939. abstract: "formula.functionList.LOG.abstract",
  9940. functionParameter: [
  9941. {
  9942. name: "formula.functionList.LOG.functionParameter.number.name",
  9943. detail: "formula.functionList.LOG.functionParameter.number.detail",
  9944. example: "8",
  9945. require: 1,
  9946. repeat: 0
  9947. },
  9948. {
  9949. name: "formula.functionList.LOG.functionParameter.base.name",
  9950. detail: "formula.functionList.LOG.functionParameter.base.detail",
  9951. example: "2",
  9952. require: 0,
  9953. repeat: 0
  9954. }
  9955. ]
  9956. },
  9957. {
  9958. functionName: T.LOG10,
  9959. functionType: t.Math,
  9960. description: "formula.functionList.LOG10.description",
  9961. abstract: "formula.functionList.LOG10.abstract",
  9962. functionParameter: [
  9963. {
  9964. name: "formula.functionList.LOG10.functionParameter.number.name",
  9965. detail: "formula.functionList.LOG10.functionParameter.number.detail",
  9966. example: "100000",
  9967. require: 1,
  9968. repeat: 0
  9969. }
  9970. ]
  9971. },
  9972. {
  9973. functionName: T.MDETERM,
  9974. functionType: t.Math,
  9975. description: "formula.functionList.MDETERM.description",
  9976. abstract: "formula.functionList.MDETERM.abstract",
  9977. functionParameter: [
  9978. {
  9979. name: "formula.functionList.MDETERM.functionParameter.array.name",
  9980. detail: "formula.functionList.MDETERM.functionParameter.array.detail",
  9981. example: "A1:C3",
  9982. require: 1,
  9983. repeat: 0
  9984. }
  9985. ]
  9986. },
  9987. {
  9988. functionName: T.MINVERSE,
  9989. functionType: t.Math,
  9990. description: "formula.functionList.MINVERSE.description",
  9991. abstract: "formula.functionList.MINVERSE.abstract",
  9992. functionParameter: [
  9993. {
  9994. name: "formula.functionList.MINVERSE.functionParameter.array.name",
  9995. detail: "formula.functionList.MINVERSE.functionParameter.array.detail",
  9996. example: "A1:C3",
  9997. require: 1,
  9998. repeat: 0
  9999. }
  10000. ]
  10001. },
  10002. {
  10003. functionName: T.MMULT,
  10004. functionType: t.Math,
  10005. description: "formula.functionList.MMULT.description",
  10006. abstract: "formula.functionList.MMULT.abstract",
  10007. functionParameter: [
  10008. {
  10009. name: "formula.functionList.MMULT.functionParameter.array1.name",
  10010. detail: "formula.functionList.MMULT.functionParameter.array1.detail",
  10011. example: "A2:B3",
  10012. require: 1,
  10013. repeat: 0
  10014. },
  10015. {
  10016. name: "formula.functionList.MMULT.functionParameter.array2.name",
  10017. detail: "formula.functionList.MMULT.functionParameter.array2.detail",
  10018. example: "A5:B6",
  10019. require: 1,
  10020. repeat: 0
  10021. }
  10022. ]
  10023. },
  10024. {
  10025. functionName: T.MOD,
  10026. functionType: t.Math,
  10027. description: "formula.functionList.MOD.description",
  10028. abstract: "formula.functionList.MOD.abstract",
  10029. functionParameter: [
  10030. {
  10031. name: "formula.functionList.MOD.functionParameter.number.name",
  10032. detail: "formula.functionList.MOD.functionParameter.number.detail",
  10033. example: "3",
  10034. require: 1,
  10035. repeat: 0
  10036. },
  10037. {
  10038. name: "formula.functionList.MOD.functionParameter.divisor.name",
  10039. detail: "formula.functionList.MOD.functionParameter.divisor.detail",
  10040. example: "2",
  10041. require: 1,
  10042. repeat: 0
  10043. }
  10044. ]
  10045. },
  10046. {
  10047. functionName: T.MROUND,
  10048. functionType: t.Math,
  10049. description: "formula.functionList.MROUND.description",
  10050. abstract: "formula.functionList.MROUND.abstract",
  10051. functionParameter: [
  10052. {
  10053. name: "formula.functionList.MROUND.functionParameter.number.name",
  10054. detail: "formula.functionList.MROUND.functionParameter.number.detail",
  10055. example: "10",
  10056. require: 1,
  10057. repeat: 0
  10058. },
  10059. {
  10060. name: "formula.functionList.MROUND.functionParameter.multiple.name",
  10061. detail: "formula.functionList.MROUND.functionParameter.multiple.detail",
  10062. example: "3",
  10063. require: 1,
  10064. repeat: 0
  10065. }
  10066. ]
  10067. },
  10068. {
  10069. functionName: T.MULTINOMIAL,
  10070. functionType: t.Math,
  10071. description: "formula.functionList.MULTINOMIAL.description",
  10072. abstract: "formula.functionList.MULTINOMIAL.abstract",
  10073. functionParameter: [
  10074. {
  10075. name: "formula.functionList.MULTINOMIAL.functionParameter.number1.name",
  10076. detail: "formula.functionList.MULTINOMIAL.functionParameter.number1.detail",
  10077. example: "5",
  10078. require: 1,
  10079. repeat: 0
  10080. },
  10081. {
  10082. name: "formula.functionList.MULTINOMIAL.functionParameter.number2.name",
  10083. detail: "formula.functionList.MULTINOMIAL.functionParameter.number2.detail",
  10084. example: "2",
  10085. require: 0,
  10086. repeat: 1
  10087. }
  10088. ]
  10089. },
  10090. {
  10091. functionName: T.MUNIT,
  10092. functionType: t.Math,
  10093. description: "formula.functionList.MUNIT.description",
  10094. abstract: "formula.functionList.MUNIT.abstract",
  10095. functionParameter: [
  10096. {
  10097. name: "formula.functionList.MUNIT.functionParameter.dimension.name",
  10098. detail: "formula.functionList.MUNIT.functionParameter.dimension.detail",
  10099. example: "3",
  10100. require: 1,
  10101. repeat: 0
  10102. }
  10103. ]
  10104. },
  10105. {
  10106. functionName: T.ODD,
  10107. functionType: t.Math,
  10108. description: "formula.functionList.ODD.description",
  10109. abstract: "formula.functionList.ODD.abstract",
  10110. functionParameter: [
  10111. {
  10112. name: "formula.functionList.ODD.functionParameter.number.name",
  10113. detail: "formula.functionList.ODD.functionParameter.number.detail",
  10114. example: "1.5",
  10115. require: 1,
  10116. repeat: 0
  10117. }
  10118. ]
  10119. },
  10120. {
  10121. functionName: T.PI,
  10122. functionType: t.Math,
  10123. description: "formula.functionList.PI.description",
  10124. abstract: "formula.functionList.PI.abstract",
  10125. functionParameter: []
  10126. },
  10127. {
  10128. functionName: T.POWER,
  10129. functionType: t.Math,
  10130. description: "formula.functionList.POWER.description",
  10131. abstract: "formula.functionList.POWER.abstract",
  10132. functionParameter: [
  10133. {
  10134. name: "formula.functionList.POWER.functionParameter.number.name",
  10135. detail: "formula.functionList.POWER.functionParameter.number.detail",
  10136. example: "5",
  10137. require: 1,
  10138. repeat: 0
  10139. },
  10140. {
  10141. name: "formula.functionList.POWER.functionParameter.power.name",
  10142. detail: "formula.functionList.POWER.functionParameter.power.detail",
  10143. example: "2",
  10144. require: 1,
  10145. repeat: 0
  10146. }
  10147. ]
  10148. },
  10149. {
  10150. functionName: T.PRODUCT,
  10151. functionType: t.Math,
  10152. description: "formula.functionList.PRODUCT.description",
  10153. abstract: "formula.functionList.PRODUCT.abstract",
  10154. functionParameter: [
  10155. {
  10156. name: "formula.functionList.PRODUCT.functionParameter.number1.name",
  10157. detail: "formula.functionList.PRODUCT.functionParameter.number1.detail",
  10158. example: "A1",
  10159. require: 1,
  10160. repeat: 0
  10161. },
  10162. {
  10163. name: "formula.functionList.PRODUCT.functionParameter.number2.name",
  10164. detail: "formula.functionList.PRODUCT.functionParameter.number2.detail",
  10165. example: "A2",
  10166. require: 0,
  10167. repeat: 1
  10168. }
  10169. ]
  10170. },
  10171. {
  10172. functionName: T.QUOTIENT,
  10173. functionType: t.Math,
  10174. description: "formula.functionList.QUOTIENT.description",
  10175. abstract: "formula.functionList.QUOTIENT.abstract",
  10176. functionParameter: [
  10177. {
  10178. name: "formula.functionList.QUOTIENT.functionParameter.numerator.name",
  10179. detail: "formula.functionList.QUOTIENT.functionParameter.numerator.detail",
  10180. example: "5",
  10181. require: 1,
  10182. repeat: 0
  10183. },
  10184. {
  10185. name: "formula.functionList.QUOTIENT.functionParameter.denominator.name",
  10186. detail: "formula.functionList.QUOTIENT.functionParameter.denominator.detail",
  10187. example: "2",
  10188. require: 1,
  10189. repeat: 0
  10190. }
  10191. ]
  10192. },
  10193. {
  10194. functionName: T.RADIANS,
  10195. functionType: t.Math,
  10196. description: "formula.functionList.RADIANS.description",
  10197. abstract: "formula.functionList.RADIANS.abstract",
  10198. functionParameter: [
  10199. {
  10200. name: "formula.functionList.RADIANS.functionParameter.angle.name",
  10201. detail: "formula.functionList.RADIANS.functionParameter.angle.detail",
  10202. example: "270",
  10203. require: 1,
  10204. repeat: 0
  10205. }
  10206. ]
  10207. },
  10208. {
  10209. functionName: T.RAND,
  10210. functionType: t.Math,
  10211. description: "formula.functionList.RAND.description",
  10212. abstract: "formula.functionList.RAND.abstract",
  10213. functionParameter: []
  10214. },
  10215. {
  10216. functionName: T.RANDARRAY,
  10217. functionType: t.Math,
  10218. description: "formula.functionList.RANDARRAY.description",
  10219. abstract: "formula.functionList.RANDARRAY.abstract",
  10220. functionParameter: [
  10221. {
  10222. name: "formula.functionList.RANDARRAY.functionParameter.rows.name",
  10223. detail: "formula.functionList.RANDARRAY.functionParameter.rows.detail",
  10224. example: "5",
  10225. require: 0,
  10226. repeat: 0
  10227. },
  10228. {
  10229. name: "formula.functionList.RANDARRAY.functionParameter.columns.name",
  10230. detail: "formula.functionList.RANDARRAY.functionParameter.columns.detail",
  10231. example: "3",
  10232. require: 0,
  10233. repeat: 0
  10234. },
  10235. {
  10236. name: "formula.functionList.RANDARRAY.functionParameter.min.name",
  10237. detail: "formula.functionList.RANDARRAY.functionParameter.min.detail",
  10238. example: "1",
  10239. require: 0,
  10240. repeat: 0
  10241. },
  10242. {
  10243. name: "formula.functionList.RANDARRAY.functionParameter.max.name",
  10244. detail: "formula.functionList.RANDARRAY.functionParameter.max.detail",
  10245. example: "100",
  10246. require: 0,
  10247. repeat: 0
  10248. },
  10249. {
  10250. name: "formula.functionList.RANDARRAY.functionParameter.wholeNumber.name",
  10251. detail: "formula.functionList.RANDARRAY.functionParameter.wholeNumber.detail",
  10252. example: "TRUE",
  10253. require: 0,
  10254. repeat: 0
  10255. }
  10256. ]
  10257. },
  10258. {
  10259. functionName: T.RANDBETWEEN,
  10260. functionType: t.Math,
  10261. description: "formula.functionList.RANDBETWEEN.description",
  10262. abstract: "formula.functionList.RANDBETWEEN.abstract",
  10263. functionParameter: [
  10264. {
  10265. name: "formula.functionList.RANDBETWEEN.functionParameter.bottom.name",
  10266. detail: "formula.functionList.RANDBETWEEN.functionParameter.bottom.detail",
  10267. example: "1",
  10268. require: 1,
  10269. repeat: 0
  10270. },
  10271. {
  10272. name: "formula.functionList.RANDBETWEEN.functionParameter.top.name",
  10273. detail: "formula.functionList.RANDBETWEEN.functionParameter.top.detail",
  10274. example: "100",
  10275. require: 1,
  10276. repeat: 0
  10277. }
  10278. ]
  10279. },
  10280. {
  10281. functionName: T.ROMAN,
  10282. functionType: t.Math,
  10283. description: "formula.functionList.ROMAN.description",
  10284. abstract: "formula.functionList.ROMAN.abstract",
  10285. functionParameter: [
  10286. {
  10287. name: "formula.functionList.ROMAN.functionParameter.number.name",
  10288. detail: "formula.functionList.ROMAN.functionParameter.number.detail",
  10289. example: "499",
  10290. require: 1,
  10291. repeat: 0
  10292. },
  10293. {
  10294. name: "formula.functionList.ROMAN.functionParameter.form.name",
  10295. detail: "formula.functionList.ROMAN.functionParameter.form.detail",
  10296. example: "0",
  10297. require: 0,
  10298. repeat: 0
  10299. }
  10300. ]
  10301. },
  10302. {
  10303. functionName: T.ROUND,
  10304. functionType: t.Math,
  10305. description: "formula.functionList.ROUND.description",
  10306. abstract: "formula.functionList.ROUND.abstract",
  10307. functionParameter: [
  10308. {
  10309. name: "formula.functionList.ROUND.functionParameter.number.name",
  10310. detail: "formula.functionList.ROUND.functionParameter.number.detail",
  10311. example: "2.15",
  10312. require: 1,
  10313. repeat: 0
  10314. },
  10315. {
  10316. name: "formula.functionList.ROUND.functionParameter.numDigits.name",
  10317. detail: "formula.functionList.ROUND.functionParameter.numDigits.detail",
  10318. example: "1",
  10319. require: 1,
  10320. repeat: 0
  10321. }
  10322. ]
  10323. },
  10324. {
  10325. functionName: T.ROUNDBANK,
  10326. functionType: t.Math,
  10327. description: "formula.functionList.ROUNDBANK.description",
  10328. abstract: "formula.functionList.ROUNDBANK.abstract",
  10329. functionParameter: [
  10330. {
  10331. name: "formula.functionList.ROUNDBANK.functionParameter.number.name",
  10332. detail: "formula.functionList.ROUNDBANK.functionParameter.number.detail",
  10333. example: "2.345",
  10334. require: 1,
  10335. repeat: 0
  10336. },
  10337. {
  10338. name: "formula.functionList.ROUNDBANK.functionParameter.numDigits.name",
  10339. detail: "formula.functionList.ROUNDBANK.functionParameter.numDigits.detail",
  10340. example: "2",
  10341. require: 1,
  10342. repeat: 0
  10343. }
  10344. ]
  10345. },
  10346. {
  10347. functionName: T.ROUNDDOWN,
  10348. functionType: t.Math,
  10349. description: "formula.functionList.ROUNDDOWN.description",
  10350. abstract: "formula.functionList.ROUNDDOWN.abstract",
  10351. functionParameter: [
  10352. {
  10353. name: "formula.functionList.ROUNDDOWN.functionParameter.number.name",
  10354. detail: "formula.functionList.ROUNDDOWN.functionParameter.number.detail",
  10355. example: "3.2",
  10356. require: 1,
  10357. repeat: 0
  10358. },
  10359. {
  10360. name: "formula.functionList.ROUNDDOWN.functionParameter.numDigits.name",
  10361. detail: "formula.functionList.ROUNDDOWN.functionParameter.numDigits.detail",
  10362. example: "0",
  10363. require: 1,
  10364. repeat: 0
  10365. }
  10366. ]
  10367. },
  10368. {
  10369. functionName: T.ROUNDUP,
  10370. functionType: t.Math,
  10371. description: "formula.functionList.ROUNDUP.description",
  10372. abstract: "formula.functionList.ROUNDUP.abstract",
  10373. functionParameter: [
  10374. {
  10375. name: "formula.functionList.ROUNDUP.functionParameter.number.name",
  10376. detail: "formula.functionList.ROUNDUP.functionParameter.number.detail",
  10377. example: "3.2",
  10378. require: 1,
  10379. repeat: 0
  10380. },
  10381. {
  10382. name: "formula.functionList.ROUNDUP.functionParameter.numDigits.name",
  10383. detail: "formula.functionList.ROUNDUP.functionParameter.numDigits.detail",
  10384. example: "0",
  10385. require: 1,
  10386. repeat: 0
  10387. }
  10388. ]
  10389. },
  10390. {
  10391. functionName: T.SEC,
  10392. functionType: t.Math,
  10393. description: "formula.functionList.SEC.description",
  10394. abstract: "formula.functionList.SEC.abstract",
  10395. functionParameter: [
  10396. {
  10397. name: "formula.functionList.SEC.functionParameter.number.name",
  10398. detail: "formula.functionList.SEC.functionParameter.number.detail",
  10399. example: "30",
  10400. require: 1,
  10401. repeat: 0
  10402. }
  10403. ]
  10404. },
  10405. {
  10406. functionName: T.SECH,
  10407. functionType: t.Math,
  10408. description: "formula.functionList.SECH.description",
  10409. abstract: "formula.functionList.SECH.abstract",
  10410. functionParameter: [
  10411. {
  10412. name: "formula.functionList.SECH.functionParameter.number.name",
  10413. detail: "formula.functionList.SECH.functionParameter.number.detail",
  10414. example: "30",
  10415. require: 1,
  10416. repeat: 0
  10417. }
  10418. ]
  10419. },
  10420. {
  10421. functionName: T.SERIESSUM,
  10422. functionType: t.Math,
  10423. description: "formula.functionList.SERIESSUM.description",
  10424. abstract: "formula.functionList.SERIESSUM.abstract",
  10425. functionParameter: [
  10426. {
  10427. name: "formula.functionList.SERIESSUM.functionParameter.x.name",
  10428. detail: "formula.functionList.SERIESSUM.functionParameter.x.detail",
  10429. example: "0.785398163",
  10430. require: 1,
  10431. repeat: 0
  10432. },
  10433. {
  10434. name: "formula.functionList.SERIESSUM.functionParameter.n.name",
  10435. detail: "formula.functionList.SERIESSUM.functionParameter.n.detail",
  10436. example: "0",
  10437. require: 1,
  10438. repeat: 0
  10439. },
  10440. {
  10441. name: "formula.functionList.SERIESSUM.functionParameter.m.name",
  10442. detail: "formula.functionList.SERIESSUM.functionParameter.m.detail",
  10443. example: "2",
  10444. require: 1,
  10445. repeat: 0
  10446. },
  10447. {
  10448. name: "formula.functionList.SERIESSUM.functionParameter.coefficients.name",
  10449. detail: "formula.functionList.SERIESSUM.functionParameter.coefficients.detail",
  10450. example: "A1:A4",
  10451. require: 1,
  10452. repeat: 0
  10453. }
  10454. ]
  10455. },
  10456. {
  10457. functionName: T.SEQUENCE,
  10458. functionType: t.Math,
  10459. description: "formula.functionList.SEQUENCE.description",
  10460. abstract: "formula.functionList.SEQUENCE.abstract",
  10461. functionParameter: [
  10462. {
  10463. name: "formula.functionList.SEQUENCE.functionParameter.rows.name",
  10464. detail: "formula.functionList.SEQUENCE.functionParameter.rows.detail",
  10465. example: "4",
  10466. require: 1,
  10467. repeat: 0
  10468. },
  10469. {
  10470. name: "formula.functionList.SEQUENCE.functionParameter.columns.name",
  10471. detail: "formula.functionList.SEQUENCE.functionParameter.columns.detail",
  10472. example: "5",
  10473. require: 0,
  10474. repeat: 0
  10475. },
  10476. {
  10477. name: "formula.functionList.SEQUENCE.functionParameter.start.name",
  10478. detail: "formula.functionList.SEQUENCE.functionParameter.start.detail",
  10479. example: "1",
  10480. require: 0,
  10481. repeat: 0
  10482. },
  10483. {
  10484. name: "formula.functionList.SEQUENCE.functionParameter.step.name",
  10485. detail: "formula.functionList.SEQUENCE.functionParameter.step.detail",
  10486. example: "1",
  10487. require: 0,
  10488. repeat: 0
  10489. }
  10490. ]
  10491. },
  10492. {
  10493. functionName: T.SIGN,
  10494. functionType: t.Math,
  10495. description: "formula.functionList.SIGN.description",
  10496. abstract: "formula.functionList.SIGN.abstract",
  10497. functionParameter: [
  10498. {
  10499. name: "formula.functionList.SIGN.functionParameter.number.name",
  10500. detail: "formula.functionList.SIGN.functionParameter.number.detail",
  10501. example: "10",
  10502. require: 1,
  10503. repeat: 0
  10504. }
  10505. ]
  10506. },
  10507. {
  10508. functionName: T.SIN,
  10509. functionType: t.Math,
  10510. description: "formula.functionList.SIN.description",
  10511. abstract: "formula.functionList.SIN.abstract",
  10512. functionParameter: [
  10513. {
  10514. name: "formula.functionList.SIN.functionParameter.number.name",
  10515. detail: "formula.functionList.SIN.functionParameter.number.detail",
  10516. example: "30*PI()/180",
  10517. require: 1,
  10518. repeat: 0
  10519. }
  10520. ]
  10521. },
  10522. {
  10523. functionName: T.SINH,
  10524. functionType: t.Math,
  10525. description: "formula.functionList.SINH.description",
  10526. abstract: "formula.functionList.SINH.abstract",
  10527. functionParameter: [
  10528. {
  10529. name: "formula.functionList.SINH.functionParameter.number.name",
  10530. detail: "formula.functionList.SINH.functionParameter.number.detail",
  10531. example: "0.0342*1.03",
  10532. require: 1,
  10533. repeat: 0
  10534. }
  10535. ]
  10536. },
  10537. {
  10538. functionName: T.SQRT,
  10539. functionType: t.Math,
  10540. description: "formula.functionList.SQRT.description",
  10541. abstract: "formula.functionList.SQRT.abstract",
  10542. functionParameter: [
  10543. {
  10544. name: "formula.functionList.SQRT.functionParameter.number.name",
  10545. detail: "formula.functionList.SQRT.functionParameter.number.detail",
  10546. example: "16",
  10547. require: 1,
  10548. repeat: 0
  10549. }
  10550. ]
  10551. },
  10552. {
  10553. functionName: T.SQRTPI,
  10554. functionType: t.Math,
  10555. description: "formula.functionList.SQRTPI.description",
  10556. abstract: "formula.functionList.SQRTPI.abstract",
  10557. functionParameter: [
  10558. {
  10559. name: "formula.functionList.SQRTPI.functionParameter.number.name",
  10560. detail: "formula.functionList.SQRTPI.functionParameter.number.detail",
  10561. example: "1",
  10562. require: 1,
  10563. repeat: 0
  10564. }
  10565. ]
  10566. },
  10567. {
  10568. functionName: T.SUBTOTAL,
  10569. functionType: t.Math,
  10570. description: "formula.functionList.SUBTOTAL.description",
  10571. abstract: "formula.functionList.SUBTOTAL.abstract",
  10572. functionParameter: [
  10573. {
  10574. name: "formula.functionList.SUBTOTAL.functionParameter.functionNum.name",
  10575. detail: "formula.functionList.SUBTOTAL.functionParameter.functionNum.detail",
  10576. example: "1",
  10577. require: 1,
  10578. repeat: 0
  10579. },
  10580. {
  10581. name: "formula.functionList.SUBTOTAL.functionParameter.ref1.name",
  10582. detail: "formula.functionList.SUBTOTAL.functionParameter.ref1.detail",
  10583. example: "A1:A20",
  10584. require: 1,
  10585. repeat: 0
  10586. },
  10587. {
  10588. name: "formula.functionList.SUBTOTAL.functionParameter.ref2.name",
  10589. detail: "formula.functionList.SUBTOTAL.functionParameter.ref2.detail",
  10590. example: "B1:B20",
  10591. require: 0,
  10592. repeat: 1
  10593. }
  10594. ]
  10595. },
  10596. {
  10597. functionName: T.SUM,
  10598. aliasFunctionName: "formula.functionList.SUM.aliasFunctionName",
  10599. functionType: t.Math,
  10600. description: "formula.functionList.SUM.description",
  10601. abstract: "formula.functionList.SUM.abstract",
  10602. functionParameter: [
  10603. {
  10604. name: "formula.functionList.SUM.functionParameter.number1.name",
  10605. detail: "formula.functionList.SUM.functionParameter.number1.detail",
  10606. example: "A1:A20",
  10607. require: 1,
  10608. repeat: 0
  10609. },
  10610. {
  10611. name: "formula.functionList.SUM.functionParameter.number2.name",
  10612. detail: "formula.functionList.SUM.functionParameter.number2.detail",
  10613. example: "B2:B10",
  10614. require: 0,
  10615. repeat: 1
  10616. }
  10617. ]
  10618. },
  10619. {
  10620. functionName: T.SUMIF,
  10621. aliasFunctionName: "formula.functionList.SUMIF.aliasFunctionName",
  10622. functionType: t.Math,
  10623. description: "formula.functionList.SUMIF.description",
  10624. abstract: "formula.functionList.SUMIF.abstract",
  10625. functionParameter: [
  10626. {
  10627. name: "formula.functionList.SUMIF.functionParameter.range.name",
  10628. detail: "formula.functionList.SUMIF.functionParameter.range.detail",
  10629. example: "A1:A20",
  10630. require: 1,
  10631. repeat: 0
  10632. },
  10633. {
  10634. name: "formula.functionList.SUMIF.functionParameter.criteria.name",
  10635. detail: "formula.functionList.SUMIF.functionParameter.criteria.detail",
  10636. example: '">5"',
  10637. require: 1,
  10638. repeat: 0
  10639. },
  10640. {
  10641. name: "formula.functionList.SUMIF.functionParameter.sumRange.name",
  10642. detail: "formula.functionList.SUMIF.functionParameter.sumRange.detail",
  10643. example: "B1:B20",
  10644. require: 0,
  10645. repeat: 0
  10646. }
  10647. ]
  10648. },
  10649. {
  10650. functionName: T.SUMIFS,
  10651. functionType: t.Math,
  10652. description: "formula.functionList.SUMIFS.description",
  10653. abstract: "formula.functionList.SUMIFS.abstract",
  10654. functionParameter: [
  10655. {
  10656. name: "formula.functionList.SUMIFS.functionParameter.sumRange.name",
  10657. detail: "formula.functionList.SUMIFS.functionParameter.sumRange.detail",
  10658. example: "A1:A20",
  10659. require: 1,
  10660. repeat: 0
  10661. },
  10662. {
  10663. name: "formula.functionList.SUMIFS.functionParameter.criteriaRange1.name",
  10664. detail: "formula.functionList.SUMIFS.functionParameter.criteriaRange1.detail",
  10665. example: "B1:B20",
  10666. require: 1,
  10667. repeat: 0
  10668. },
  10669. {
  10670. name: "formula.functionList.SUMIFS.functionParameter.criteria1.name",
  10671. detail: "formula.functionList.SUMIFS.functionParameter.criteria1.detail",
  10672. example: '">10"',
  10673. require: 1,
  10674. repeat: 0
  10675. },
  10676. {
  10677. name: "formula.functionList.SUMIFS.functionParameter.criteriaRange2.name",
  10678. detail: "formula.functionList.SUMIFS.functionParameter.criteriaRange2.detail",
  10679. example: "C1:C20",
  10680. require: 0,
  10681. repeat: 1
  10682. },
  10683. {
  10684. name: "formula.functionList.SUMIFS.functionParameter.criteria2.name",
  10685. detail: "formula.functionList.SUMIFS.functionParameter.criteria2.detail",
  10686. example: '"<20"',
  10687. require: 0,
  10688. repeat: 1
  10689. }
  10690. ]
  10691. },
  10692. {
  10693. functionName: T.SUMPRODUCT,
  10694. functionType: t.Math,
  10695. description: "formula.functionList.SUMPRODUCT.description",
  10696. abstract: "formula.functionList.SUMPRODUCT.abstract",
  10697. functionParameter: [
  10698. {
  10699. name: "formula.functionList.SUMPRODUCT.functionParameter.array1.name",
  10700. detail: "formula.functionList.SUMPRODUCT.functionParameter.array1.detail",
  10701. example: "C2:C5",
  10702. require: 1,
  10703. repeat: 0
  10704. },
  10705. {
  10706. name: "formula.functionList.SUMPRODUCT.functionParameter.array2.name",
  10707. detail: "formula.functionList.SUMPRODUCT.functionParameter.array2.detail",
  10708. example: "D2:D5",
  10709. require: 0,
  10710. repeat: 1
  10711. }
  10712. ]
  10713. },
  10714. {
  10715. functionName: T.SUMSQ,
  10716. functionType: t.Math,
  10717. description: "formula.functionList.SUMSQ.description",
  10718. abstract: "formula.functionList.SUMSQ.abstract",
  10719. functionParameter: [
  10720. {
  10721. name: "formula.functionList.SUMSQ.functionParameter.number1.name",
  10722. detail: "formula.functionList.SUMSQ.functionParameter.number1.detail",
  10723. example: "3",
  10724. require: 1,
  10725. repeat: 0
  10726. },
  10727. {
  10728. name: "formula.functionList.SUMSQ.functionParameter.number2.name",
  10729. detail: "formula.functionList.SUMSQ.functionParameter.number2.detail",
  10730. example: "4",
  10731. require: 0,
  10732. repeat: 1
  10733. }
  10734. ]
  10735. },
  10736. {
  10737. functionName: T.SUMX2MY2,
  10738. functionType: t.Math,
  10739. description: "formula.functionList.SUMX2MY2.description",
  10740. abstract: "formula.functionList.SUMX2MY2.abstract",
  10741. functionParameter: [
  10742. {
  10743. name: "formula.functionList.SUMX2MY2.functionParameter.arrayX.name",
  10744. detail: "formula.functionList.SUMX2MY2.functionParameter.arrayX.detail",
  10745. example: "A2:A8",
  10746. require: 1,
  10747. repeat: 0
  10748. },
  10749. {
  10750. name: "formula.functionList.SUMX2MY2.functionParameter.arrayY.name",
  10751. detail: "formula.functionList.SUMX2MY2.functionParameter.arrayY.detail",
  10752. example: "B2:B8",
  10753. require: 1,
  10754. repeat: 0
  10755. }
  10756. ]
  10757. },
  10758. {
  10759. functionName: T.SUMX2PY2,
  10760. functionType: t.Math,
  10761. description: "formula.functionList.SUMX2PY2.description",
  10762. abstract: "formula.functionList.SUMX2PY2.abstract",
  10763. functionParameter: [
  10764. {
  10765. name: "formula.functionList.SUMX2PY2.functionParameter.arrayX.name",
  10766. detail: "formula.functionList.SUMX2PY2.functionParameter.arrayX.detail",
  10767. example: "A2:A8",
  10768. require: 1,
  10769. repeat: 0
  10770. },
  10771. {
  10772. name: "formula.functionList.SUMX2PY2.functionParameter.arrayY.name",
  10773. detail: "formula.functionList.SUMX2PY2.functionParameter.arrayY.detail",
  10774. example: "B2:B8",
  10775. require: 1,
  10776. repeat: 0
  10777. }
  10778. ]
  10779. },
  10780. {
  10781. functionName: T.SUMXMY2,
  10782. functionType: t.Math,
  10783. description: "formula.functionList.SUMXMY2.description",
  10784. abstract: "formula.functionList.SUMXMY2.abstract",
  10785. functionParameter: [
  10786. {
  10787. name: "formula.functionList.SUMXMY2.functionParameter.arrayX.name",
  10788. detail: "formula.functionList.SUMXMY2.functionParameter.arrayX.detail",
  10789. example: "A2:A8",
  10790. require: 1,
  10791. repeat: 0
  10792. },
  10793. {
  10794. name: "formula.functionList.SUMXMY2.functionParameter.arrayY.name",
  10795. detail: "formula.functionList.SUMXMY2.functionParameter.arrayY.detail",
  10796. example: "B2:B8",
  10797. require: 1,
  10798. repeat: 0
  10799. }
  10800. ]
  10801. },
  10802. {
  10803. functionName: T.TAN,
  10804. functionType: t.Math,
  10805. description: "formula.functionList.TAN.description",
  10806. abstract: "formula.functionList.TAN.abstract",
  10807. functionParameter: [
  10808. {
  10809. name: "formula.functionList.TAN.functionParameter.number.name",
  10810. detail: "formula.functionList.TAN.functionParameter.number.detail",
  10811. example: "1",
  10812. require: 1,
  10813. repeat: 0
  10814. }
  10815. ]
  10816. },
  10817. {
  10818. functionName: T.TANH,
  10819. functionType: t.Math,
  10820. description: "formula.functionList.TANH.description",
  10821. abstract: "formula.functionList.TANH.abstract",
  10822. functionParameter: [
  10823. {
  10824. name: "formula.functionList.TANH.functionParameter.number.name",
  10825. detail: "formula.functionList.TANH.functionParameter.number.detail",
  10826. example: "1",
  10827. require: 1,
  10828. repeat: 0
  10829. }
  10830. ]
  10831. },
  10832. {
  10833. functionName: T.TRUNC,
  10834. functionType: t.Math,
  10835. description: "formula.functionList.TRUNC.description",
  10836. abstract: "formula.functionList.TRUNC.abstract",
  10837. functionParameter: [
  10838. {
  10839. name: "formula.functionList.TRUNC.functionParameter.number.name",
  10840. detail: "formula.functionList.TRUNC.functionParameter.number.detail",
  10841. example: "0.45",
  10842. require: 1,
  10843. repeat: 0
  10844. },
  10845. {
  10846. name: "formula.functionList.TRUNC.functionParameter.numDigits.name",
  10847. detail: "formula.functionList.TRUNC.functionParameter.numDigits.detail",
  10848. example: "1",
  10849. require: 0,
  10850. repeat: 0
  10851. }
  10852. ]
  10853. }
  10854. ], zi = [
  10855. {
  10856. functionName: l.AVEDEV,
  10857. functionType: t.Statistical,
  10858. description: "formula.functionList.AVEDEV.description",
  10859. abstract: "formula.functionList.AVEDEV.abstract",
  10860. functionParameter: [
  10861. {
  10862. name: "formula.functionList.AVEDEV.functionParameter.number1.name",
  10863. detail: "formula.functionList.AVEDEV.functionParameter.number1.detail",
  10864. example: "A1:A20",
  10865. require: 1,
  10866. repeat: 0
  10867. },
  10868. {
  10869. name: "formula.functionList.AVEDEV.functionParameter.number2.name",
  10870. detail: "formula.functionList.AVEDEV.functionParameter.number2.detail",
  10871. example: "B1:B20",
  10872. require: 0,
  10873. repeat: 1
  10874. }
  10875. ]
  10876. },
  10877. {
  10878. functionName: l.AVERAGE,
  10879. aliasFunctionName: "formula.functionList.AVERAGE.aliasFunctionName",
  10880. functionType: t.Statistical,
  10881. description: "formula.functionList.AVERAGE.description",
  10882. abstract: "formula.functionList.AVERAGE.abstract",
  10883. functionParameter: [
  10884. {
  10885. name: "formula.functionList.AVERAGE.functionParameter.number1.name",
  10886. detail: "formula.functionList.AVERAGE.functionParameter.number1.detail",
  10887. example: "A1:A20",
  10888. require: 1,
  10889. repeat: 0
  10890. },
  10891. {
  10892. name: "formula.functionList.AVERAGE.functionParameter.number2.name",
  10893. detail: "formula.functionList.AVERAGE.functionParameter.number2.detail",
  10894. example: "B1:B20",
  10895. require: 0,
  10896. repeat: 1
  10897. }
  10898. ]
  10899. },
  10900. {
  10901. functionName: l.AVERAGE_WEIGHTED,
  10902. aliasFunctionName: "formula.functionList.AVERAGE_WEIGHTED.aliasFunctionName",
  10903. functionType: t.Statistical,
  10904. description: "formula.functionList.AVERAGE_WEIGHTED.description",
  10905. abstract: "formula.functionList.AVERAGE_WEIGHTED.abstract",
  10906. functionParameter: [
  10907. {
  10908. name: "formula.functionList.AVERAGE_WEIGHTED.functionParameter.values.name",
  10909. detail: "formula.functionList.AVERAGE_WEIGHTED.functionParameter.values.detail",
  10910. example: "10",
  10911. require: 1,
  10912. repeat: 0
  10913. },
  10914. {
  10915. name: "formula.functionList.AVERAGE_WEIGHTED.functionParameter.weights.name",
  10916. detail: "formula.functionList.AVERAGE_WEIGHTED.functionParameter.weights.detail",
  10917. example: "1",
  10918. require: 1,
  10919. repeat: 0
  10920. },
  10921. {
  10922. name: "formula.functionList.AVERAGE_WEIGHTED.functionParameter.additionalValues.name",
  10923. detail: "formula.functionList.AVERAGE_WEIGHTED.functionParameter.additionalValues.detail",
  10924. example: "20",
  10925. require: 0,
  10926. repeat: 1
  10927. },
  10928. {
  10929. name: "formula.functionList.AVERAGE_WEIGHTED.functionParameter.additionalWeights.name",
  10930. detail: "formula.functionList.AVERAGE_WEIGHTED.functionParameter.additionalWeights.detail",
  10931. example: "3",
  10932. require: 0,
  10933. repeat: 1
  10934. }
  10935. ]
  10936. },
  10937. {
  10938. functionName: l.AVERAGEA,
  10939. functionType: t.Statistical,
  10940. description: "formula.functionList.AVERAGEA.description",
  10941. abstract: "formula.functionList.AVERAGEA.abstract",
  10942. functionParameter: [
  10943. {
  10944. name: "formula.functionList.AVERAGEA.functionParameter.value1.name",
  10945. detail: "formula.functionList.AVERAGEA.functionParameter.value1.detail",
  10946. example: "A1:A20",
  10947. require: 1,
  10948. repeat: 0
  10949. },
  10950. {
  10951. name: "formula.functionList.AVERAGEA.functionParameter.value2.name",
  10952. detail: "formula.functionList.AVERAGEA.functionParameter.value2.detail",
  10953. example: "B1:B20",
  10954. require: 0,
  10955. repeat: 1
  10956. }
  10957. ]
  10958. },
  10959. {
  10960. functionName: l.AVERAGEIF,
  10961. functionType: t.Statistical,
  10962. description: "formula.functionList.AVERAGEIF.description",
  10963. abstract: "formula.functionList.AVERAGEIF.abstract",
  10964. functionParameter: [
  10965. {
  10966. name: "formula.functionList.AVERAGEIF.functionParameter.range.name",
  10967. detail: "formula.functionList.AVERAGEIF.functionParameter.range.detail",
  10968. example: "A1:A20",
  10969. require: 1,
  10970. repeat: 0
  10971. },
  10972. {
  10973. name: "formula.functionList.AVERAGEIF.functionParameter.criteria.name",
  10974. detail: "formula.functionList.AVERAGEIF.functionParameter.criteria.detail",
  10975. example: '">5"',
  10976. require: 1,
  10977. repeat: 0
  10978. },
  10979. {
  10980. name: "formula.functionList.AVERAGEIF.functionParameter.averageRange.name",
  10981. detail: "formula.functionList.AVERAGEIF.functionParameter.averageRange.detail",
  10982. example: "B1:B20",
  10983. require: 0,
  10984. repeat: 0
  10985. }
  10986. ]
  10987. },
  10988. {
  10989. functionName: l.AVERAGEIFS,
  10990. functionType: t.Statistical,
  10991. description: "formula.functionList.AVERAGEIFS.description",
  10992. abstract: "formula.functionList.AVERAGEIFS.abstract",
  10993. functionParameter: [
  10994. {
  10995. name: "formula.functionList.AVERAGEIFS.functionParameter.averageRange.name",
  10996. detail: "formula.functionList.AVERAGEIFS.functionParameter.averageRange.detail",
  10997. example: "A1:A20",
  10998. require: 1,
  10999. repeat: 0
  11000. },
  11001. {
  11002. name: "formula.functionList.AVERAGEIFS.functionParameter.criteriaRange1.name",
  11003. detail: "formula.functionList.AVERAGEIFS.functionParameter.criteriaRange1.detail",
  11004. example: "B1:B20",
  11005. require: 1,
  11006. repeat: 0
  11007. },
  11008. {
  11009. name: "formula.functionList.AVERAGEIFS.functionParameter.criteria1.name",
  11010. detail: "formula.functionList.AVERAGEIFS.functionParameter.criteria1.detail",
  11011. example: '">10"',
  11012. require: 1,
  11013. repeat: 0
  11014. },
  11015. {
  11016. name: "formula.functionList.AVERAGEIFS.functionParameter.criteriaRange2.name",
  11017. detail: "formula.functionList.AVERAGEIFS.functionParameter.criteriaRange2.detail",
  11018. example: "C1:C20",
  11019. require: 0,
  11020. repeat: 1
  11021. },
  11022. {
  11023. name: "formula.functionList.AVERAGEIFS.functionParameter.criteria2.name",
  11024. detail: "formula.functionList.AVERAGEIFS.functionParameter.criteria2.detail",
  11025. example: '"<20"',
  11026. require: 0,
  11027. repeat: 1
  11028. }
  11029. ]
  11030. },
  11031. {
  11032. functionName: l.BETA_DIST,
  11033. functionType: t.Statistical,
  11034. description: "formula.functionList.BETA_DIST.description",
  11035. abstract: "formula.functionList.BETA_DIST.abstract",
  11036. functionParameter: [
  11037. {
  11038. name: "formula.functionList.BETA_DIST.functionParameter.x.name",
  11039. detail: "formula.functionList.BETA_DIST.functionParameter.x.detail",
  11040. example: "2",
  11041. require: 1,
  11042. repeat: 0
  11043. },
  11044. {
  11045. name: "formula.functionList.BETA_DIST.functionParameter.alpha.name",
  11046. detail: "formula.functionList.BETA_DIST.functionParameter.alpha.detail",
  11047. example: "8",
  11048. require: 1,
  11049. repeat: 0
  11050. },
  11051. {
  11052. name: "formula.functionList.BETA_DIST.functionParameter.beta.name",
  11053. detail: "formula.functionList.BETA_DIST.functionParameter.beta.detail",
  11054. example: "10",
  11055. require: 1,
  11056. repeat: 0
  11057. },
  11058. {
  11059. name: "formula.functionList.BETA_DIST.functionParameter.cumulative.name",
  11060. detail: "formula.functionList.BETA_DIST.functionParameter.cumulative.detail",
  11061. example: "true",
  11062. require: 1,
  11063. repeat: 0
  11064. },
  11065. {
  11066. name: "formula.functionList.BETA_DIST.functionParameter.A.name",
  11067. detail: "formula.functionList.BETA_DIST.functionParameter.A.detail",
  11068. example: "1",
  11069. require: 0,
  11070. repeat: 0
  11071. },
  11072. {
  11073. name: "formula.functionList.BETA_DIST.functionParameter.B.name",
  11074. detail: "formula.functionList.BETA_DIST.functionParameter.B.detail",
  11075. example: "3",
  11076. require: 0,
  11077. repeat: 0
  11078. }
  11079. ]
  11080. },
  11081. {
  11082. functionName: l.BETA_INV,
  11083. functionType: t.Statistical,
  11084. description: "formula.functionList.BETA_INV.description",
  11085. abstract: "formula.functionList.BETA_INV.abstract",
  11086. functionParameter: [
  11087. {
  11088. name: "formula.functionList.BETA_INV.functionParameter.probability.name",
  11089. detail: "formula.functionList.BETA_INV.functionParameter.probability.detail",
  11090. example: "0.685470581",
  11091. require: 1,
  11092. repeat: 0
  11093. },
  11094. {
  11095. name: "formula.functionList.BETA_INV.functionParameter.alpha.name",
  11096. detail: "formula.functionList.BETA_INV.functionParameter.alpha.detail",
  11097. example: "8",
  11098. require: 1,
  11099. repeat: 0
  11100. },
  11101. {
  11102. name: "formula.functionList.BETA_INV.functionParameter.beta.name",
  11103. detail: "formula.functionList.BETA_INV.functionParameter.beta.detail",
  11104. example: "10",
  11105. require: 1,
  11106. repeat: 0
  11107. },
  11108. {
  11109. name: "formula.functionList.BETA_INV.functionParameter.A.name",
  11110. detail: "formula.functionList.BETA_INV.functionParameter.A.detail",
  11111. example: "1",
  11112. require: 0,
  11113. repeat: 0
  11114. },
  11115. {
  11116. name: "formula.functionList.BETA_INV.functionParameter.B.name",
  11117. detail: "formula.functionList.BETA_INV.functionParameter.B.detail",
  11118. example: "3",
  11119. require: 0,
  11120. repeat: 0
  11121. }
  11122. ]
  11123. },
  11124. {
  11125. functionName: l.BINOM_DIST,
  11126. functionType: t.Statistical,
  11127. description: "formula.functionList.BINOM_DIST.description",
  11128. abstract: "formula.functionList.BINOM_DIST.abstract",
  11129. functionParameter: [
  11130. {
  11131. name: "formula.functionList.BINOM_DIST.functionParameter.numberS.name",
  11132. detail: "formula.functionList.BINOM_DIST.functionParameter.numberS.detail",
  11133. example: "6",
  11134. require: 1,
  11135. repeat: 0
  11136. },
  11137. {
  11138. name: "formula.functionList.BINOM_DIST.functionParameter.trials.name",
  11139. detail: "formula.functionList.BINOM_DIST.functionParameter.trials.detail",
  11140. example: "10",
  11141. require: 1,
  11142. repeat: 0
  11143. },
  11144. {
  11145. name: "formula.functionList.BINOM_DIST.functionParameter.probabilityS.name",
  11146. detail: "formula.functionList.BINOM_DIST.functionParameter.probabilityS.detail",
  11147. example: "0.5",
  11148. require: 1,
  11149. repeat: 0
  11150. },
  11151. {
  11152. name: "formula.functionList.BINOM_DIST.functionParameter.cumulative.name",
  11153. detail: "formula.functionList.BINOM_DIST.functionParameter.cumulative.detail",
  11154. example: "false",
  11155. require: 1,
  11156. repeat: 0
  11157. }
  11158. ]
  11159. },
  11160. {
  11161. functionName: l.BINOM_DIST_RANGE,
  11162. functionType: t.Statistical,
  11163. description: "formula.functionList.BINOM_DIST_RANGE.description",
  11164. abstract: "formula.functionList.BINOM_DIST_RANGE.abstract",
  11165. functionParameter: [
  11166. {
  11167. name: "formula.functionList.BINOM_DIST_RANGE.functionParameter.trials.name",
  11168. detail: "formula.functionList.BINOM_DIST_RANGE.functionParameter.trials.detail",
  11169. example: "60",
  11170. require: 1,
  11171. repeat: 0
  11172. },
  11173. {
  11174. name: "formula.functionList.BINOM_DIST_RANGE.functionParameter.probabilityS.name",
  11175. detail: "formula.functionList.BINOM_DIST_RANGE.functionParameter.probabilityS.detail",
  11176. example: "0.75",
  11177. require: 1,
  11178. repeat: 0
  11179. },
  11180. {
  11181. name: "formula.functionList.BINOM_DIST_RANGE.functionParameter.numberS.name",
  11182. detail: "formula.functionList.BINOM_DIST_RANGE.functionParameter.numberS.detail",
  11183. example: "45",
  11184. require: 1,
  11185. repeat: 0
  11186. },
  11187. {
  11188. name: "formula.functionList.BINOM_DIST_RANGE.functionParameter.numberS2.name",
  11189. detail: "formula.functionList.BINOM_DIST_RANGE.functionParameter.numberS2.detail",
  11190. example: "50",
  11191. require: 0,
  11192. repeat: 0
  11193. }
  11194. ]
  11195. },
  11196. {
  11197. functionName: l.BINOM_INV,
  11198. functionType: t.Statistical,
  11199. description: "formula.functionList.BINOM_INV.description",
  11200. abstract: "formula.functionList.BINOM_INV.abstract",
  11201. functionParameter: [
  11202. {
  11203. name: "formula.functionList.BINOM_INV.functionParameter.trials.name",
  11204. detail: "formula.functionList.BINOM_INV.functionParameter.trials.detail",
  11205. example: "6",
  11206. require: 1,
  11207. repeat: 0
  11208. },
  11209. {
  11210. name: "formula.functionList.BINOM_INV.functionParameter.probabilityS.name",
  11211. detail: "formula.functionList.BINOM_INV.functionParameter.probabilityS.detail",
  11212. example: "0.5",
  11213. require: 1,
  11214. repeat: 0
  11215. },
  11216. {
  11217. name: "formula.functionList.BINOM_INV.functionParameter.alpha.name",
  11218. detail: "formula.functionList.BINOM_INV.functionParameter.alpha.detail",
  11219. example: "0.75",
  11220. require: 1,
  11221. repeat: 0
  11222. }
  11223. ]
  11224. },
  11225. {
  11226. functionName: l.CHISQ_DIST,
  11227. functionType: t.Statistical,
  11228. description: "formula.functionList.CHISQ_DIST.description",
  11229. abstract: "formula.functionList.CHISQ_DIST.abstract",
  11230. functionParameter: [
  11231. {
  11232. name: "formula.functionList.CHISQ_DIST.functionParameter.x.name",
  11233. detail: "formula.functionList.CHISQ_DIST.functionParameter.x.detail",
  11234. example: "0.5",
  11235. require: 1,
  11236. repeat: 0
  11237. },
  11238. {
  11239. name: "formula.functionList.CHISQ_DIST.functionParameter.degFreedom.name",
  11240. detail: "formula.functionList.CHISQ_DIST.functionParameter.degFreedom.detail",
  11241. example: "1",
  11242. require: 1,
  11243. repeat: 0
  11244. },
  11245. {
  11246. name: "formula.functionList.CHISQ_DIST.functionParameter.cumulative.name",
  11247. detail: "formula.functionList.CHISQ_DIST.functionParameter.cumulative.detail",
  11248. example: "true",
  11249. require: 1,
  11250. repeat: 0
  11251. }
  11252. ]
  11253. },
  11254. {
  11255. functionName: l.CHISQ_DIST_RT,
  11256. functionType: t.Statistical,
  11257. description: "formula.functionList.CHISQ_DIST_RT.description",
  11258. abstract: "formula.functionList.CHISQ_DIST_RT.abstract",
  11259. functionParameter: [
  11260. {
  11261. name: "formula.functionList.CHISQ_DIST_RT.functionParameter.x.name",
  11262. detail: "formula.functionList.CHISQ_DIST_RT.functionParameter.x.detail",
  11263. example: "0.5",
  11264. require: 1,
  11265. repeat: 0
  11266. },
  11267. {
  11268. name: "formula.functionList.CHISQ_DIST_RT.functionParameter.degFreedom.name",
  11269. detail: "formula.functionList.CHISQ_DIST_RT.functionParameter.degFreedom.detail",
  11270. example: "1",
  11271. require: 1,
  11272. repeat: 0
  11273. }
  11274. ]
  11275. },
  11276. {
  11277. functionName: l.CHISQ_INV,
  11278. functionType: t.Statistical,
  11279. description: "formula.functionList.CHISQ_INV.description",
  11280. abstract: "formula.functionList.CHISQ_INV.abstract",
  11281. functionParameter: [
  11282. {
  11283. name: "formula.functionList.CHISQ_INV.functionParameter.probability.name",
  11284. detail: "formula.functionList.CHISQ_INV.functionParameter.probability.detail",
  11285. example: "0.93",
  11286. require: 1,
  11287. repeat: 0
  11288. },
  11289. {
  11290. name: "formula.functionList.CHISQ_INV.functionParameter.degFreedom.name",
  11291. detail: "formula.functionList.CHISQ_INV.functionParameter.degFreedom.detail",
  11292. example: "1",
  11293. require: 1,
  11294. repeat: 0
  11295. }
  11296. ]
  11297. },
  11298. {
  11299. functionName: l.CHISQ_INV_RT,
  11300. functionType: t.Statistical,
  11301. description: "formula.functionList.CHISQ_INV_RT.description",
  11302. abstract: "formula.functionList.CHISQ_INV_RT.abstract",
  11303. functionParameter: [
  11304. {
  11305. name: "formula.functionList.CHISQ_INV_RT.functionParameter.probability.name",
  11306. detail: "formula.functionList.CHISQ_INV_RT.functionParameter.probability.detail",
  11307. example: "0.93",
  11308. require: 1,
  11309. repeat: 0
  11310. },
  11311. {
  11312. name: "formula.functionList.CHISQ_INV_RT.functionParameter.degFreedom.name",
  11313. detail: "formula.functionList.CHISQ_INV_RT.functionParameter.degFreedom.detail",
  11314. example: "1",
  11315. require: 1,
  11316. repeat: 0
  11317. }
  11318. ]
  11319. },
  11320. {
  11321. functionName: l.CHISQ_TEST,
  11322. functionType: t.Statistical,
  11323. description: "formula.functionList.CHISQ_TEST.description",
  11324. abstract: "formula.functionList.CHISQ_TEST.abstract",
  11325. functionParameter: [
  11326. {
  11327. name: "formula.functionList.CHISQ_TEST.functionParameter.actualRange.name",
  11328. detail: "formula.functionList.CHISQ_TEST.functionParameter.actualRange.detail",
  11329. example: "A1:A4",
  11330. require: 1,
  11331. repeat: 0
  11332. },
  11333. {
  11334. name: "formula.functionList.CHISQ_TEST.functionParameter.expectedRange.name",
  11335. detail: "formula.functionList.CHISQ_TEST.functionParameter.expectedRange.detail",
  11336. example: "B1:B4",
  11337. require: 1,
  11338. repeat: 0
  11339. }
  11340. ]
  11341. },
  11342. {
  11343. functionName: l.CONFIDENCE_NORM,
  11344. functionType: t.Statistical,
  11345. description: "formula.functionList.CONFIDENCE_NORM.description",
  11346. abstract: "formula.functionList.CONFIDENCE_NORM.abstract",
  11347. functionParameter: [
  11348. {
  11349. name: "formula.functionList.CONFIDENCE_NORM.functionParameter.alpha.name",
  11350. detail: "formula.functionList.CONFIDENCE_NORM.functionParameter.alpha.detail",
  11351. example: "0.05",
  11352. require: 1,
  11353. repeat: 0
  11354. },
  11355. {
  11356. name: "formula.functionList.CONFIDENCE_NORM.functionParameter.standardDev.name",
  11357. detail: "formula.functionList.CONFIDENCE_NORM.functionParameter.standardDev.detail",
  11358. example: "2.5",
  11359. require: 1,
  11360. repeat: 0
  11361. },
  11362. {
  11363. name: "formula.functionList.CONFIDENCE_NORM.functionParameter.size.name",
  11364. detail: "formula.functionList.CONFIDENCE_NORM.functionParameter.size.detail",
  11365. example: "50",
  11366. require: 1,
  11367. repeat: 0
  11368. }
  11369. ]
  11370. },
  11371. {
  11372. functionName: l.CONFIDENCE_T,
  11373. functionType: t.Statistical,
  11374. description: "formula.functionList.CONFIDENCE_T.description",
  11375. abstract: "formula.functionList.CONFIDENCE_T.abstract",
  11376. functionParameter: [
  11377. {
  11378. name: "formula.functionList.CONFIDENCE_T.functionParameter.alpha.name",
  11379. detail: "formula.functionList.CONFIDENCE_T.functionParameter.alpha.detail",
  11380. example: "0.05",
  11381. require: 1,
  11382. repeat: 0
  11383. },
  11384. {
  11385. name: "formula.functionList.CONFIDENCE_T.functionParameter.standardDev.name",
  11386. detail: "formula.functionList.CONFIDENCE_T.functionParameter.standardDev.detail",
  11387. example: "2.5",
  11388. require: 1,
  11389. repeat: 0
  11390. },
  11391. {
  11392. name: "formula.functionList.CONFIDENCE_T.functionParameter.size.name",
  11393. detail: "formula.functionList.CONFIDENCE_T.functionParameter.size.detail",
  11394. example: "50",
  11395. require: 1,
  11396. repeat: 0
  11397. }
  11398. ]
  11399. },
  11400. {
  11401. functionName: l.CORREL,
  11402. functionType: t.Statistical,
  11403. description: "formula.functionList.CORREL.description",
  11404. abstract: "formula.functionList.CORREL.abstract",
  11405. functionParameter: [
  11406. {
  11407. name: "formula.functionList.CORREL.functionParameter.array1.name",
  11408. detail: "formula.functionList.CORREL.functionParameter.array1.detail",
  11409. example: "A1:A4",
  11410. require: 1,
  11411. repeat: 0
  11412. },
  11413. {
  11414. name: "formula.functionList.CORREL.functionParameter.array2.name",
  11415. detail: "formula.functionList.CORREL.functionParameter.array2.detail",
  11416. example: "B1:B4",
  11417. require: 1,
  11418. repeat: 0
  11419. }
  11420. ]
  11421. },
  11422. {
  11423. functionName: l.COUNT,
  11424. aliasFunctionName: "formula.functionList.COUNT.aliasFunctionName",
  11425. functionType: t.Statistical,
  11426. description: "formula.functionList.COUNT.description",
  11427. abstract: "formula.functionList.COUNT.abstract",
  11428. functionParameter: [
  11429. {
  11430. name: "formula.functionList.COUNT.functionParameter.value1.name",
  11431. detail: "formula.functionList.COUNT.functionParameter.value1.detail",
  11432. example: "A1:A20",
  11433. require: 1,
  11434. repeat: 0
  11435. },
  11436. {
  11437. name: "formula.functionList.COUNT.functionParameter.value2.name",
  11438. detail: "formula.functionList.COUNT.functionParameter.value2.detail",
  11439. example: "B2:B10",
  11440. require: 0,
  11441. repeat: 1
  11442. }
  11443. ]
  11444. },
  11445. {
  11446. functionName: l.COUNTA,
  11447. aliasFunctionName: "formula.functionList.COUNTA.aliasFunctionName",
  11448. functionType: t.Statistical,
  11449. description: "formula.functionList.COUNTA.description",
  11450. abstract: "formula.functionList.COUNTA.abstract",
  11451. functionParameter: [
  11452. {
  11453. name: "formula.functionList.COUNTA.functionParameter.number1.name",
  11454. detail: "formula.functionList.COUNTA.functionParameter.number1.detail",
  11455. example: "A1:A20",
  11456. require: 1,
  11457. repeat: 0
  11458. },
  11459. {
  11460. name: "formula.functionList.COUNTA.functionParameter.number2.name",
  11461. detail: "formula.functionList.COUNTA.functionParameter.number2.detail",
  11462. example: "B2:B10",
  11463. require: 0,
  11464. repeat: 1
  11465. }
  11466. ]
  11467. },
  11468. {
  11469. functionName: l.COUNTBLANK,
  11470. functionType: t.Statistical,
  11471. description: "formula.functionList.COUNTBLANK.description",
  11472. abstract: "formula.functionList.COUNTBLANK.abstract",
  11473. functionParameter: [
  11474. {
  11475. name: "formula.functionList.COUNTBLANK.functionParameter.range.name",
  11476. detail: "formula.functionList.COUNTBLANK.functionParameter.range.detail",
  11477. example: "A1:A20",
  11478. require: 1,
  11479. repeat: 0
  11480. }
  11481. ]
  11482. },
  11483. {
  11484. functionName: l.COUNTIF,
  11485. functionType: t.Statistical,
  11486. description: "formula.functionList.COUNTIF.description",
  11487. abstract: "formula.functionList.COUNTIF.abstract",
  11488. functionParameter: [
  11489. {
  11490. name: "formula.functionList.COUNTIF.functionParameter.range.name",
  11491. detail: "formula.functionList.COUNTIF.functionParameter.range.detail",
  11492. example: "A1:A20",
  11493. require: 1,
  11494. repeat: 0
  11495. },
  11496. {
  11497. name: "formula.functionList.COUNTIF.functionParameter.criteria.name",
  11498. detail: "formula.functionList.COUNTIF.functionParameter.criteria.detail",
  11499. example: '">5"',
  11500. require: 1,
  11501. repeat: 0
  11502. }
  11503. ]
  11504. },
  11505. {
  11506. functionName: l.COUNTIFS,
  11507. functionType: t.Statistical,
  11508. description: "formula.functionList.COUNTIFS.description",
  11509. abstract: "formula.functionList.COUNTIFS.abstract",
  11510. functionParameter: [
  11511. {
  11512. name: "formula.functionList.COUNTIFS.functionParameter.criteriaRange1.name",
  11513. detail: "formula.functionList.COUNTIFS.functionParameter.criteriaRange1.detail",
  11514. example: "A1:A20",
  11515. require: 1,
  11516. repeat: 0
  11517. },
  11518. {
  11519. name: "formula.functionList.COUNTIFS.functionParameter.criteria1.name",
  11520. detail: "formula.functionList.COUNTIFS.functionParameter.criteria1.detail",
  11521. example: '">10"',
  11522. require: 1,
  11523. repeat: 0
  11524. },
  11525. {
  11526. name: "formula.functionList.COUNTIFS.functionParameter.criteriaRange2.name",
  11527. detail: "formula.functionList.COUNTIFS.functionParameter.criteriaRange2.detail",
  11528. example: "B1:B20",
  11529. require: 0,
  11530. repeat: 1
  11531. },
  11532. {
  11533. name: "formula.functionList.COUNTIFS.functionParameter.criteria2.name",
  11534. detail: "formula.functionList.COUNTIFS.functionParameter.criteria2.detail",
  11535. example: '"<20"',
  11536. require: 0,
  11537. repeat: 1
  11538. }
  11539. ]
  11540. },
  11541. {
  11542. functionName: l.COVARIANCE_P,
  11543. functionType: t.Statistical,
  11544. description: "formula.functionList.COVARIANCE_P.description",
  11545. abstract: "formula.functionList.COVARIANCE_P.abstract",
  11546. functionParameter: [
  11547. {
  11548. name: "formula.functionList.COVARIANCE_P.functionParameter.array1.name",
  11549. detail: "formula.functionList.COVARIANCE_P.functionParameter.array1.detail",
  11550. example: "A1:A4",
  11551. require: 1,
  11552. repeat: 0
  11553. },
  11554. {
  11555. name: "formula.functionList.COVARIANCE_P.functionParameter.array2.name",
  11556. detail: "formula.functionList.COVARIANCE_P.functionParameter.array2.detail",
  11557. example: "B1:B4",
  11558. require: 1,
  11559. repeat: 0
  11560. }
  11561. ]
  11562. },
  11563. {
  11564. functionName: l.COVARIANCE_S,
  11565. functionType: t.Statistical,
  11566. description: "formula.functionList.COVARIANCE_S.description",
  11567. abstract: "formula.functionList.COVARIANCE_S.abstract",
  11568. functionParameter: [
  11569. {
  11570. name: "formula.functionList.COVARIANCE_S.functionParameter.array1.name",
  11571. detail: "formula.functionList.COVARIANCE_S.functionParameter.array1.detail",
  11572. example: "A1:A4",
  11573. require: 1,
  11574. repeat: 0
  11575. },
  11576. {
  11577. name: "formula.functionList.COVARIANCE_S.functionParameter.array2.name",
  11578. detail: "formula.functionList.COVARIANCE_S.functionParameter.array2.detail",
  11579. example: "B1:B4",
  11580. require: 1,
  11581. repeat: 0
  11582. }
  11583. ]
  11584. },
  11585. {
  11586. functionName: l.DEVSQ,
  11587. functionType: t.Statistical,
  11588. description: "formula.functionList.DEVSQ.description",
  11589. abstract: "formula.functionList.DEVSQ.abstract",
  11590. functionParameter: [
  11591. {
  11592. name: "formula.functionList.DEVSQ.functionParameter.number1.name",
  11593. detail: "formula.functionList.DEVSQ.functionParameter.number1.detail",
  11594. example: "1",
  11595. require: 1,
  11596. repeat: 0
  11597. },
  11598. {
  11599. name: "formula.functionList.DEVSQ.functionParameter.number2.name",
  11600. detail: "formula.functionList.DEVSQ.functionParameter.number2.detail",
  11601. example: "2",
  11602. require: 0,
  11603. repeat: 1
  11604. }
  11605. ]
  11606. },
  11607. {
  11608. functionName: l.EXPON_DIST,
  11609. functionType: t.Statistical,
  11610. description: "formula.functionList.EXPON_DIST.description",
  11611. abstract: "formula.functionList.EXPON_DIST.abstract",
  11612. functionParameter: [
  11613. {
  11614. name: "formula.functionList.EXPON_DIST.functionParameter.x.name",
  11615. detail: "formula.functionList.EXPON_DIST.functionParameter.x.detail",
  11616. example: "0.2",
  11617. require: 1,
  11618. repeat: 0
  11619. },
  11620. {
  11621. name: "formula.functionList.EXPON_DIST.functionParameter.lambda.name",
  11622. detail: "formula.functionList.EXPON_DIST.functionParameter.lambda.detail",
  11623. example: "10",
  11624. require: 1,
  11625. repeat: 0
  11626. },
  11627. {
  11628. name: "formula.functionList.EXPON_DIST.functionParameter.cumulative.name",
  11629. detail: "formula.functionList.EXPON_DIST.functionParameter.cumulative.detail",
  11630. example: "true",
  11631. require: 1,
  11632. repeat: 0
  11633. }
  11634. ]
  11635. },
  11636. {
  11637. functionName: l.F_DIST,
  11638. functionType: t.Statistical,
  11639. description: "formula.functionList.F_DIST.description",
  11640. abstract: "formula.functionList.F_DIST.abstract",
  11641. functionParameter: [
  11642. {
  11643. name: "formula.functionList.F_DIST.functionParameter.x.name",
  11644. detail: "formula.functionList.F_DIST.functionParameter.x.detail",
  11645. example: "15.2069",
  11646. require: 1,
  11647. repeat: 0
  11648. },
  11649. {
  11650. name: "formula.functionList.F_DIST.functionParameter.degFreedom1.name",
  11651. detail: "formula.functionList.F_DIST.functionParameter.degFreedom1.detail",
  11652. example: "6",
  11653. require: 1,
  11654. repeat: 0
  11655. },
  11656. {
  11657. name: "formula.functionList.F_DIST.functionParameter.degFreedom2.name",
  11658. detail: "formula.functionList.F_DIST.functionParameter.degFreedom2.detail",
  11659. example: "4",
  11660. require: 1,
  11661. repeat: 0
  11662. },
  11663. {
  11664. name: "formula.functionList.F_DIST.functionParameter.cumulative.name",
  11665. detail: "formula.functionList.F_DIST.functionParameter.cumulative.detail",
  11666. example: "true",
  11667. require: 1,
  11668. repeat: 0
  11669. }
  11670. ]
  11671. },
  11672. {
  11673. functionName: l.F_DIST_RT,
  11674. functionType: t.Statistical,
  11675. description: "formula.functionList.F_DIST_RT.description",
  11676. abstract: "formula.functionList.F_DIST_RT.abstract",
  11677. functionParameter: [
  11678. {
  11679. name: "formula.functionList.F_DIST_RT.functionParameter.x.name",
  11680. detail: "formula.functionList.F_DIST_RT.functionParameter.x.detail",
  11681. example: "15.2069",
  11682. require: 1,
  11683. repeat: 0
  11684. },
  11685. {
  11686. name: "formula.functionList.F_DIST_RT.functionParameter.degFreedom1.name",
  11687. detail: "formula.functionList.F_DIST_RT.functionParameter.degFreedom1.detail",
  11688. example: "6",
  11689. require: 1,
  11690. repeat: 0
  11691. },
  11692. {
  11693. name: "formula.functionList.F_DIST_RT.functionParameter.degFreedom2.name",
  11694. detail: "formula.functionList.F_DIST_RT.functionParameter.degFreedom2.detail",
  11695. example: "4",
  11696. require: 1,
  11697. repeat: 0
  11698. }
  11699. ]
  11700. },
  11701. {
  11702. functionName: l.F_INV,
  11703. functionType: t.Statistical,
  11704. description: "formula.functionList.F_INV.description",
  11705. abstract: "formula.functionList.F_INV.abstract",
  11706. functionParameter: [
  11707. {
  11708. name: "formula.functionList.F_INV.functionParameter.probability.name",
  11709. detail: "formula.functionList.F_INV.functionParameter.probability.detail",
  11710. example: "0.01",
  11711. require: 1,
  11712. repeat: 0
  11713. },
  11714. {
  11715. name: "formula.functionList.F_INV.functionParameter.degFreedom1.name",
  11716. detail: "formula.functionList.F_INV.functionParameter.degFreedom1.detail",
  11717. example: "6",
  11718. require: 1,
  11719. repeat: 0
  11720. },
  11721. {
  11722. name: "formula.functionList.F_INV.functionParameter.degFreedom2.name",
  11723. detail: "formula.functionList.F_INV.functionParameter.degFreedom2.detail",
  11724. example: "4",
  11725. require: 1,
  11726. repeat: 0
  11727. }
  11728. ]
  11729. },
  11730. {
  11731. functionName: l.F_INV_RT,
  11732. functionType: t.Statistical,
  11733. description: "formula.functionList.F_INV_RT.description",
  11734. abstract: "formula.functionList.F_INV_RT.abstract",
  11735. functionParameter: [
  11736. {
  11737. name: "formula.functionList.F_INV_RT.functionParameter.probability.name",
  11738. detail: "formula.functionList.F_INV_RT.functionParameter.probability.detail",
  11739. example: "0.01",
  11740. require: 1,
  11741. repeat: 0
  11742. },
  11743. {
  11744. name: "formula.functionList.F_INV_RT.functionParameter.degFreedom1.name",
  11745. detail: "formula.functionList.F_INV_RT.functionParameter.degFreedom1.detail",
  11746. example: "6",
  11747. require: 1,
  11748. repeat: 0
  11749. },
  11750. {
  11751. name: "formula.functionList.F_INV_RT.functionParameter.degFreedom2.name",
  11752. detail: "formula.functionList.F_INV_RT.functionParameter.degFreedom2.detail",
  11753. example: "4",
  11754. require: 1,
  11755. repeat: 0
  11756. }
  11757. ]
  11758. },
  11759. {
  11760. functionName: l.F_TEST,
  11761. functionType: t.Statistical,
  11762. description: "formula.functionList.F_TEST.description",
  11763. abstract: "formula.functionList.F_TEST.abstract",
  11764. functionParameter: [
  11765. {
  11766. name: "formula.functionList.F_TEST.functionParameter.array1.name",
  11767. detail: "formula.functionList.F_TEST.functionParameter.array1.detail",
  11768. example: "A1:A4",
  11769. require: 1,
  11770. repeat: 0
  11771. },
  11772. {
  11773. name: "formula.functionList.F_TEST.functionParameter.array2.name",
  11774. detail: "formula.functionList.F_TEST.functionParameter.array2.detail",
  11775. example: "B1:B4",
  11776. require: 1,
  11777. repeat: 0
  11778. }
  11779. ]
  11780. },
  11781. {
  11782. functionName: l.FISHER,
  11783. functionType: t.Statistical,
  11784. description: "formula.functionList.FISHER.description",
  11785. abstract: "formula.functionList.FISHER.abstract",
  11786. functionParameter: [
  11787. {
  11788. name: "formula.functionList.FISHER.functionParameter.x.name",
  11789. detail: "formula.functionList.FISHER.functionParameter.x.detail",
  11790. example: "0.75",
  11791. require: 1,
  11792. repeat: 0
  11793. }
  11794. ]
  11795. },
  11796. {
  11797. functionName: l.FISHERINV,
  11798. functionType: t.Statistical,
  11799. description: "formula.functionList.FISHERINV.description",
  11800. abstract: "formula.functionList.FISHERINV.abstract",
  11801. functionParameter: [
  11802. {
  11803. name: "formula.functionList.FISHERINV.functionParameter.y.name",
  11804. detail: "formula.functionList.FISHERINV.functionParameter.y.detail",
  11805. example: "0.75",
  11806. require: 1,
  11807. repeat: 0
  11808. }
  11809. ]
  11810. },
  11811. {
  11812. functionName: l.FORECAST,
  11813. functionType: t.Statistical,
  11814. description: "formula.functionList.FORECAST.description",
  11815. abstract: "formula.functionList.FORECAST.abstract",
  11816. functionParameter: [
  11817. {
  11818. name: "formula.functionList.FORECAST.functionParameter.x.name",
  11819. detail: "formula.functionList.FORECAST.functionParameter.x.detail",
  11820. example: "30",
  11821. require: 1,
  11822. repeat: 0
  11823. },
  11824. {
  11825. name: "formula.functionList.FORECAST.functionParameter.knownYs.name",
  11826. detail: "formula.functionList.FORECAST.functionParameter.knownYs.detail",
  11827. example: "A1:A4",
  11828. require: 1,
  11829. repeat: 0
  11830. },
  11831. {
  11832. name: "formula.functionList.FORECAST.functionParameter.knownXs.name",
  11833. detail: "formula.functionList.FORECAST.functionParameter.knownXs.detail",
  11834. example: "B1:B4",
  11835. require: 1,
  11836. repeat: 0
  11837. }
  11838. ]
  11839. },
  11840. {
  11841. functionName: l.FORECAST_ETS,
  11842. functionType: t.Statistical,
  11843. description: "formula.functionList.FORECAST_ETS.description",
  11844. abstract: "formula.functionList.FORECAST_ETS.abstract",
  11845. functionParameter: [
  11846. {
  11847. name: "formula.functionList.FORECAST_ETS.functionParameter.number1.name",
  11848. detail: "formula.functionList.FORECAST_ETS.functionParameter.number1.detail",
  11849. example: "A1:A20",
  11850. require: 1,
  11851. repeat: 0
  11852. },
  11853. {
  11854. name: "formula.functionList.FORECAST_ETS.functionParameter.number2.name",
  11855. detail: "formula.functionList.FORECAST_ETS.functionParameter.number2.detail",
  11856. example: "A1:A20",
  11857. require: 1,
  11858. repeat: 0
  11859. }
  11860. ]
  11861. },
  11862. {
  11863. functionName: l.FORECAST_ETS_CONFINT,
  11864. functionType: t.Statistical,
  11865. description: "formula.functionList.FORECAST_ETS_CONFINT.description",
  11866. abstract: "formula.functionList.FORECAST_ETS_CONFINT.abstract",
  11867. functionParameter: [
  11868. {
  11869. name: "formula.functionList.FORECAST_ETS_CONFINT.functionParameter.number1.name",
  11870. detail: "formula.functionList.FORECAST_ETS_CONFINT.functionParameter.number1.detail",
  11871. example: "A1:A20",
  11872. require: 1,
  11873. repeat: 0
  11874. },
  11875. {
  11876. name: "formula.functionList.FORECAST_ETS_CONFINT.functionParameter.number2.name",
  11877. detail: "formula.functionList.FORECAST_ETS_CONFINT.functionParameter.number2.detail",
  11878. example: "A1:A20",
  11879. require: 1,
  11880. repeat: 0
  11881. }
  11882. ]
  11883. },
  11884. {
  11885. functionName: l.FORECAST_ETS_SEASONALITY,
  11886. functionType: t.Statistical,
  11887. description: "formula.functionList.FORECAST_ETS_SEASONALITY.description",
  11888. abstract: "formula.functionList.FORECAST_ETS_SEASONALITY.abstract",
  11889. functionParameter: [
  11890. {
  11891. name: "formula.functionList.FORECAST_ETS_SEASONALITY.functionParameter.number1.name",
  11892. detail: "formula.functionList.FORECAST_ETS_SEASONALITY.functionParameter.number1.detail",
  11893. example: "A1:A20",
  11894. require: 1,
  11895. repeat: 0
  11896. },
  11897. {
  11898. name: "formula.functionList.FORECAST_ETS_SEASONALITY.functionParameter.number2.name",
  11899. detail: "formula.functionList.FORECAST_ETS_SEASONALITY.functionParameter.number2.detail",
  11900. example: "A1:A20",
  11901. require: 1,
  11902. repeat: 0
  11903. }
  11904. ]
  11905. },
  11906. {
  11907. functionName: l.FORECAST_ETS_STAT,
  11908. functionType: t.Statistical,
  11909. description: "formula.functionList.FORECAST_ETS_STAT.description",
  11910. abstract: "formula.functionList.FORECAST_ETS_STAT.abstract",
  11911. functionParameter: [
  11912. {
  11913. name: "formula.functionList.FORECAST_ETS_STAT.functionParameter.number1.name",
  11914. detail: "formula.functionList.FORECAST_ETS_STAT.functionParameter.number1.detail",
  11915. example: "A1:A20",
  11916. require: 1,
  11917. repeat: 0
  11918. },
  11919. {
  11920. name: "formula.functionList.FORECAST_ETS_STAT.functionParameter.number2.name",
  11921. detail: "formula.functionList.FORECAST_ETS_STAT.functionParameter.number2.detail",
  11922. example: "A1:A20",
  11923. require: 1,
  11924. repeat: 0
  11925. }
  11926. ]
  11927. },
  11928. {
  11929. functionName: l.FORECAST_LINEAR,
  11930. functionType: t.Statistical,
  11931. description: "formula.functionList.FORECAST_LINEAR.description",
  11932. abstract: "formula.functionList.FORECAST_LINEAR.abstract",
  11933. functionParameter: [
  11934. {
  11935. name: "formula.functionList.FORECAST_LINEAR.functionParameter.x.name",
  11936. detail: "formula.functionList.FORECAST_LINEAR.functionParameter.x.detail",
  11937. example: "30",
  11938. require: 1,
  11939. repeat: 0
  11940. },
  11941. {
  11942. name: "formula.functionList.FORECAST_LINEAR.functionParameter.knownYs.name",
  11943. detail: "formula.functionList.FORECAST_LINEAR.functionParameter.knownYs.detail",
  11944. example: "A1:A4",
  11945. require: 1,
  11946. repeat: 0
  11947. },
  11948. {
  11949. name: "formula.functionList.FORECAST_LINEAR.functionParameter.knownXs.name",
  11950. detail: "formula.functionList.FORECAST_LINEAR.functionParameter.knownXs.detail",
  11951. example: "B1:B4",
  11952. require: 1,
  11953. repeat: 0
  11954. }
  11955. ]
  11956. },
  11957. {
  11958. functionName: l.FREQUENCY,
  11959. functionType: t.Statistical,
  11960. description: "formula.functionList.FREQUENCY.description",
  11961. abstract: "formula.functionList.FREQUENCY.abstract",
  11962. functionParameter: [
  11963. {
  11964. name: "formula.functionList.FREQUENCY.functionParameter.dataArray.name",
  11965. detail: "formula.functionList.FREQUENCY.functionParameter.dataArray.detail",
  11966. example: "A2:A10",
  11967. require: 1,
  11968. repeat: 0
  11969. },
  11970. {
  11971. name: "formula.functionList.FREQUENCY.functionParameter.binsArray.name",
  11972. detail: "formula.functionList.FREQUENCY.functionParameter.binsArray.detail",
  11973. example: "B2:B4",
  11974. require: 1,
  11975. repeat: 0
  11976. }
  11977. ]
  11978. },
  11979. {
  11980. functionName: l.GAMMA,
  11981. functionType: t.Statistical,
  11982. description: "formula.functionList.GAMMA.description",
  11983. abstract: "formula.functionList.GAMMA.abstract",
  11984. functionParameter: [
  11985. {
  11986. name: "formula.functionList.GAMMA.functionParameter.number.name",
  11987. detail: "formula.functionList.GAMMA.functionParameter.number.detail",
  11988. example: "2.5",
  11989. require: 1,
  11990. repeat: 0
  11991. }
  11992. ]
  11993. },
  11994. {
  11995. functionName: l.GAMMA_DIST,
  11996. functionType: t.Statistical,
  11997. description: "formula.functionList.GAMMA_DIST.description",
  11998. abstract: "formula.functionList.GAMMA_DIST.abstract",
  11999. functionParameter: [
  12000. {
  12001. name: "formula.functionList.GAMMA_DIST.functionParameter.x.name",
  12002. detail: "formula.functionList.GAMMA_DIST.functionParameter.x.detail",
  12003. example: "10",
  12004. require: 1,
  12005. repeat: 0
  12006. },
  12007. {
  12008. name: "formula.functionList.GAMMA_DIST.functionParameter.alpha.name",
  12009. detail: "formula.functionList.GAMMA_DIST.functionParameter.alpha.detail",
  12010. example: "8",
  12011. require: 1,
  12012. repeat: 0
  12013. },
  12014. {
  12015. name: "formula.functionList.GAMMA_DIST.functionParameter.beta.name",
  12016. detail: "formula.functionList.GAMMA_DIST.functionParameter.beta.detail",
  12017. example: "2",
  12018. require: 1,
  12019. repeat: 0
  12020. },
  12021. {
  12022. name: "formula.functionList.GAMMA_DIST.functionParameter.cumulative.name",
  12023. detail: "formula.functionList.GAMMA_DIST.functionParameter.cumulative.detail",
  12024. example: "true",
  12025. require: 1,
  12026. repeat: 0
  12027. }
  12028. ]
  12029. },
  12030. {
  12031. functionName: l.GAMMA_INV,
  12032. functionType: t.Statistical,
  12033. description: "formula.functionList.GAMMA_INV.description",
  12034. abstract: "formula.functionList.GAMMA_INV.abstract",
  12035. functionParameter: [
  12036. {
  12037. name: "formula.functionList.GAMMA_INV.functionParameter.probability.name",
  12038. detail: "formula.functionList.GAMMA_INV.functionParameter.probability.detail",
  12039. example: "0.068094",
  12040. require: 1,
  12041. repeat: 0
  12042. },
  12043. {
  12044. name: "formula.functionList.GAMMA_INV.functionParameter.alpha.name",
  12045. detail: "formula.functionList.GAMMA_INV.functionParameter.alpha.detail",
  12046. example: "9",
  12047. require: 1,
  12048. repeat: 0
  12049. },
  12050. {
  12051. name: "formula.functionList.GAMMA_INV.functionParameter.beta.name",
  12052. detail: "formula.functionList.GAMMA_INV.functionParameter.beta.detail",
  12053. example: "2",
  12054. require: 1,
  12055. repeat: 0
  12056. }
  12057. ]
  12058. },
  12059. {
  12060. functionName: l.GAMMALN,
  12061. functionType: t.Statistical,
  12062. description: "formula.functionList.GAMMALN.description",
  12063. abstract: "formula.functionList.GAMMALN.abstract",
  12064. functionParameter: [
  12065. {
  12066. name: "formula.functionList.GAMMALN.functionParameter.x.name",
  12067. detail: "formula.functionList.GAMMALN.functionParameter.x.detail",
  12068. example: "4",
  12069. require: 1,
  12070. repeat: 0
  12071. }
  12072. ]
  12073. },
  12074. {
  12075. functionName: l.GAMMALN_PRECISE,
  12076. functionType: t.Statistical,
  12077. description: "formula.functionList.GAMMALN_PRECISE.description",
  12078. abstract: "formula.functionList.GAMMALN_PRECISE.abstract",
  12079. functionParameter: [
  12080. {
  12081. name: "formula.functionList.GAMMALN_PRECISE.functionParameter.x.name",
  12082. detail: "formula.functionList.GAMMALN_PRECISE.functionParameter.x.detail",
  12083. example: "4",
  12084. require: 1,
  12085. repeat: 0
  12086. }
  12087. ]
  12088. },
  12089. {
  12090. functionName: l.GAUSS,
  12091. functionType: t.Statistical,
  12092. description: "formula.functionList.GAUSS.description",
  12093. abstract: "formula.functionList.GAUSS.abstract",
  12094. functionParameter: [
  12095. {
  12096. name: "formula.functionList.GAUSS.functionParameter.z.name",
  12097. detail: "formula.functionList.GAUSS.functionParameter.z.detail",
  12098. example: "2",
  12099. require: 1,
  12100. repeat: 0
  12101. }
  12102. ]
  12103. },
  12104. {
  12105. functionName: l.GEOMEAN,
  12106. functionType: t.Statistical,
  12107. description: "formula.functionList.GEOMEAN.description",
  12108. abstract: "formula.functionList.GEOMEAN.abstract",
  12109. functionParameter: [
  12110. {
  12111. name: "formula.functionList.GEOMEAN.functionParameter.number1.name",
  12112. detail: "formula.functionList.GEOMEAN.functionParameter.number1.detail",
  12113. example: "1",
  12114. require: 1,
  12115. repeat: 0
  12116. },
  12117. {
  12118. name: "formula.functionList.GEOMEAN.functionParameter.number2.name",
  12119. detail: "formula.functionList.GEOMEAN.functionParameter.number2.detail",
  12120. example: "2",
  12121. require: 0,
  12122. repeat: 1
  12123. }
  12124. ]
  12125. },
  12126. {
  12127. functionName: l.GROWTH,
  12128. functionType: t.Statistical,
  12129. description: "formula.functionList.GROWTH.description",
  12130. abstract: "formula.functionList.GROWTH.abstract",
  12131. functionParameter: [
  12132. {
  12133. name: "formula.functionList.GROWTH.functionParameter.knownYs.name",
  12134. detail: "formula.functionList.GROWTH.functionParameter.knownYs.detail",
  12135. example: "B2:B7",
  12136. require: 1,
  12137. repeat: 0
  12138. },
  12139. {
  12140. name: "formula.functionList.GROWTH.functionParameter.knownXs.name",
  12141. detail: "formula.functionList.GROWTH.functionParameter.knownXs.detail",
  12142. example: "A2:A7",
  12143. require: 0,
  12144. repeat: 0
  12145. },
  12146. {
  12147. name: "formula.functionList.GROWTH.functionParameter.newXs.name",
  12148. detail: "formula.functionList.GROWTH.functionParameter.newXs.detail",
  12149. example: "A9:A10",
  12150. require: 0,
  12151. repeat: 0
  12152. },
  12153. {
  12154. name: "formula.functionList.GROWTH.functionParameter.constb.name",
  12155. detail: "formula.functionList.GROWTH.functionParameter.constb.detail",
  12156. example: "true",
  12157. require: 0,
  12158. repeat: 0
  12159. }
  12160. ]
  12161. },
  12162. {
  12163. functionName: l.HARMEAN,
  12164. functionType: t.Statistical,
  12165. description: "formula.functionList.HARMEAN.description",
  12166. abstract: "formula.functionList.HARMEAN.abstract",
  12167. functionParameter: [
  12168. {
  12169. name: "formula.functionList.HARMEAN.functionParameter.number1.name",
  12170. detail: "formula.functionList.HARMEAN.functionParameter.number1.detail",
  12171. example: "1",
  12172. require: 1,
  12173. repeat: 0
  12174. },
  12175. {
  12176. name: "formula.functionList.HARMEAN.functionParameter.number2.name",
  12177. detail: "formula.functionList.HARMEAN.functionParameter.number2.detail",
  12178. example: "2",
  12179. require: 0,
  12180. repeat: 1
  12181. }
  12182. ]
  12183. },
  12184. {
  12185. functionName: l.HYPGEOM_DIST,
  12186. functionType: t.Statistical,
  12187. description: "formula.functionList.HYPGEOM_DIST.description",
  12188. abstract: "formula.functionList.HYPGEOM_DIST.abstract",
  12189. functionParameter: [
  12190. {
  12191. name: "formula.functionList.HYPGEOM_DIST.functionParameter.sampleS.name",
  12192. detail: "formula.functionList.HYPGEOM_DIST.functionParameter.sampleS.detail",
  12193. example: "1",
  12194. require: 1,
  12195. repeat: 0
  12196. },
  12197. {
  12198. name: "formula.functionList.HYPGEOM_DIST.functionParameter.numberSample.name",
  12199. detail: "formula.functionList.HYPGEOM_DIST.functionParameter.numberSample.detail",
  12200. example: "4",
  12201. require: 1,
  12202. repeat: 0
  12203. },
  12204. {
  12205. name: "formula.functionList.HYPGEOM_DIST.functionParameter.populationS.name",
  12206. detail: "formula.functionList.HYPGEOM_DIST.functionParameter.populationS.detail",
  12207. example: "8",
  12208. require: 1,
  12209. repeat: 0
  12210. },
  12211. {
  12212. name: "formula.functionList.HYPGEOM_DIST.functionParameter.numberPop.name",
  12213. detail: "formula.functionList.HYPGEOM_DIST.functionParameter.numberPop.detail",
  12214. example: "20",
  12215. require: 1,
  12216. repeat: 0
  12217. },
  12218. {
  12219. name: "formula.functionList.HYPGEOM_DIST.functionParameter.cumulative.name",
  12220. detail: "formula.functionList.HYPGEOM_DIST.functionParameter.cumulative.detail",
  12221. example: "true",
  12222. require: 1,
  12223. repeat: 0
  12224. }
  12225. ]
  12226. },
  12227. {
  12228. functionName: l.INTERCEPT,
  12229. functionType: t.Statistical,
  12230. description: "formula.functionList.INTERCEPT.description",
  12231. abstract: "formula.functionList.INTERCEPT.abstract",
  12232. functionParameter: [
  12233. {
  12234. name: "formula.functionList.INTERCEPT.functionParameter.knownYs.name",
  12235. detail: "formula.functionList.INTERCEPT.functionParameter.knownYs.detail",
  12236. example: "A1:A4",
  12237. require: 1,
  12238. repeat: 0
  12239. },
  12240. {
  12241. name: "formula.functionList.INTERCEPT.functionParameter.knownXs.name",
  12242. detail: "formula.functionList.INTERCEPT.functionParameter.knownXs.detail",
  12243. example: "B1:B4",
  12244. require: 1,
  12245. repeat: 0
  12246. }
  12247. ]
  12248. },
  12249. {
  12250. functionName: l.KURT,
  12251. functionType: t.Statistical,
  12252. description: "formula.functionList.KURT.description",
  12253. abstract: "formula.functionList.KURT.abstract",
  12254. functionParameter: [
  12255. {
  12256. name: "formula.functionList.KURT.functionParameter.number1.name",
  12257. detail: "formula.functionList.KURT.functionParameter.number1.detail",
  12258. example: "A1:A4",
  12259. require: 1,
  12260. repeat: 0
  12261. },
  12262. {
  12263. name: "formula.functionList.KURT.functionParameter.number2.name",
  12264. detail: "formula.functionList.KURT.functionParameter.number2.detail",
  12265. example: "4",
  12266. require: 0,
  12267. repeat: 1
  12268. }
  12269. ]
  12270. },
  12271. {
  12272. functionName: l.LARGE,
  12273. functionType: t.Statistical,
  12274. description: "formula.functionList.LARGE.description",
  12275. abstract: "formula.functionList.LARGE.abstract",
  12276. functionParameter: [
  12277. {
  12278. name: "formula.functionList.LARGE.functionParameter.array.name",
  12279. detail: "formula.functionList.LARGE.functionParameter.array.detail",
  12280. example: "A2:B6",
  12281. require: 1,
  12282. repeat: 0
  12283. },
  12284. {
  12285. name: "formula.functionList.LARGE.functionParameter.k.name",
  12286. detail: "formula.functionList.LARGE.functionParameter.k.detail",
  12287. example: "3",
  12288. require: 1,
  12289. repeat: 0
  12290. }
  12291. ]
  12292. },
  12293. {
  12294. functionName: l.LINEST,
  12295. functionType: t.Statistical,
  12296. description: "formula.functionList.LINEST.description",
  12297. abstract: "formula.functionList.LINEST.abstract",
  12298. functionParameter: [
  12299. {
  12300. name: "formula.functionList.LINEST.functionParameter.knownYs.name",
  12301. detail: "formula.functionList.LINEST.functionParameter.knownYs.detail",
  12302. example: "B2:B7",
  12303. require: 1,
  12304. repeat: 0
  12305. },
  12306. {
  12307. name: "formula.functionList.LINEST.functionParameter.knownXs.name",
  12308. detail: "formula.functionList.LINEST.functionParameter.knownXs.detail",
  12309. example: "A2:A7",
  12310. require: 0,
  12311. repeat: 0
  12312. },
  12313. {
  12314. name: "formula.functionList.LINEST.functionParameter.constb.name",
  12315. detail: "formula.functionList.LINEST.functionParameter.constb.detail",
  12316. example: "true",
  12317. require: 0,
  12318. repeat: 0
  12319. },
  12320. {
  12321. name: "formula.functionList.LINEST.functionParameter.stats.name",
  12322. detail: "formula.functionList.LINEST.functionParameter.stats.detail",
  12323. example: "true",
  12324. require: 0,
  12325. repeat: 0
  12326. }
  12327. ]
  12328. },
  12329. {
  12330. functionName: l.LOGEST,
  12331. functionType: t.Statistical,
  12332. description: "formula.functionList.LOGEST.description",
  12333. abstract: "formula.functionList.LOGEST.abstract",
  12334. functionParameter: [
  12335. {
  12336. name: "formula.functionList.LOGEST.functionParameter.knownYs.name",
  12337. detail: "formula.functionList.LOGEST.functionParameter.knownYs.detail",
  12338. example: "B2:B7",
  12339. require: 1,
  12340. repeat: 0
  12341. },
  12342. {
  12343. name: "formula.functionList.LOGEST.functionParameter.knownXs.name",
  12344. detail: "formula.functionList.LOGEST.functionParameter.knownXs.detail",
  12345. example: "A2:A7",
  12346. require: 0,
  12347. repeat: 0
  12348. },
  12349. {
  12350. name: "formula.functionList.LOGEST.functionParameter.constb.name",
  12351. detail: "formula.functionList.LOGEST.functionParameter.constb.detail",
  12352. example: "true",
  12353. require: 0,
  12354. repeat: 0
  12355. },
  12356. {
  12357. name: "formula.functionList.LOGEST.functionParameter.stats.name",
  12358. detail: "formula.functionList.LOGEST.functionParameter.stats.detail",
  12359. example: "true",
  12360. require: 0,
  12361. repeat: 0
  12362. }
  12363. ]
  12364. },
  12365. {
  12366. functionName: l.LOGNORM_DIST,
  12367. functionType: t.Statistical,
  12368. description: "formula.functionList.LOGNORM_DIST.description",
  12369. abstract: "formula.functionList.LOGNORM_DIST.abstract",
  12370. functionParameter: [
  12371. {
  12372. name: "formula.functionList.LOGNORM_DIST.functionParameter.x.name",
  12373. detail: "formula.functionList.LOGNORM_DIST.functionParameter.x.detail",
  12374. example: "42",
  12375. require: 1,
  12376. repeat: 0
  12377. },
  12378. {
  12379. name: "formula.functionList.LOGNORM_DIST.functionParameter.mean.name",
  12380. detail: "formula.functionList.LOGNORM_DIST.functionParameter.mean.detail",
  12381. example: "40",
  12382. require: 1,
  12383. repeat: 0
  12384. },
  12385. {
  12386. name: "formula.functionList.LOGNORM_DIST.functionParameter.standardDev.name",
  12387. detail: "formula.functionList.LOGNORM_DIST.functionParameter.standardDev.detail",
  12388. example: "1.5",
  12389. require: 1,
  12390. repeat: 0
  12391. },
  12392. {
  12393. name: "formula.functionList.LOGNORM_DIST.functionParameter.cumulative.name",
  12394. detail: "formula.functionList.LOGNORM_DIST.functionParameter.cumulative.detail",
  12395. example: "true",
  12396. require: 1,
  12397. repeat: 0
  12398. }
  12399. ]
  12400. },
  12401. {
  12402. functionName: l.LOGNORM_INV,
  12403. functionType: t.Statistical,
  12404. description: "formula.functionList.LOGNORM_INV.description",
  12405. abstract: "formula.functionList.LOGNORM_INV.abstract",
  12406. functionParameter: [
  12407. {
  12408. name: "formula.functionList.LOGNORM_INV.functionParameter.probability.name",
  12409. detail: "formula.functionList.LOGNORM_INV.functionParameter.probability.detail",
  12410. example: "0.908789",
  12411. require: 1,
  12412. repeat: 0
  12413. },
  12414. {
  12415. name: "formula.functionList.LOGNORM_INV.functionParameter.mean.name",
  12416. detail: "formula.functionList.LOGNORM_INV.functionParameter.mean.detail",
  12417. example: "40",
  12418. require: 1,
  12419. repeat: 0
  12420. },
  12421. {
  12422. name: "formula.functionList.LOGNORM_INV.functionParameter.standardDev.name",
  12423. detail: "formula.functionList.LOGNORM_INV.functionParameter.standardDev.detail",
  12424. example: "1.5",
  12425. require: 1,
  12426. repeat: 0
  12427. }
  12428. ]
  12429. },
  12430. {
  12431. functionName: l.MARGINOFERROR,
  12432. aliasFunctionName: "formula.functionList.MARGINOFERROR.aliasFunctionName",
  12433. functionType: t.Statistical,
  12434. description: "formula.functionList.MARGINOFERROR.description",
  12435. abstract: "formula.functionList.MARGINOFERROR.abstract",
  12436. functionParameter: [
  12437. {
  12438. name: "formula.functionList.MARGINOFERROR.functionParameter.range.name",
  12439. detail: "formula.functionList.MARGINOFERROR.functionParameter.range.detail",
  12440. example: "A1:A4",
  12441. require: 1,
  12442. repeat: 0
  12443. },
  12444. {
  12445. name: "formula.functionList.MARGINOFERROR.functionParameter.confidence.name",
  12446. detail: "formula.functionList.MARGINOFERROR.functionParameter.confidence.detail",
  12447. example: "0.95",
  12448. require: 1,
  12449. repeat: 0
  12450. }
  12451. ]
  12452. },
  12453. {
  12454. functionName: l.MAX,
  12455. aliasFunctionName: "formula.functionList.MAX.aliasFunctionName",
  12456. functionType: t.Statistical,
  12457. description: "formula.functionList.MAX.description",
  12458. abstract: "formula.functionList.MAX.abstract",
  12459. functionParameter: [
  12460. {
  12461. name: "formula.functionList.MAX.functionParameter.number1.name",
  12462. detail: "formula.functionList.MAX.functionParameter.number1.detail",
  12463. example: "A1:A20",
  12464. require: 1,
  12465. repeat: 0
  12466. },
  12467. {
  12468. name: "formula.functionList.MAX.functionParameter.number2.name",
  12469. detail: "formula.functionList.MAX.functionParameter.number2.detail",
  12470. example: "B2:B10",
  12471. require: 0,
  12472. repeat: 1
  12473. }
  12474. ]
  12475. },
  12476. {
  12477. functionName: l.MAXA,
  12478. functionType: t.Statistical,
  12479. description: "formula.functionList.MAXA.description",
  12480. abstract: "formula.functionList.MAXA.abstract",
  12481. functionParameter: [
  12482. {
  12483. name: "formula.functionList.MAXA.functionParameter.value1.name",
  12484. detail: "formula.functionList.MAXA.functionParameter.value1.detail",
  12485. example: "A1:A20",
  12486. require: 1,
  12487. repeat: 0
  12488. },
  12489. {
  12490. name: "formula.functionList.MAXA.functionParameter.value2.name",
  12491. detail: "formula.functionList.MAXA.functionParameter.value2.detail",
  12492. example: "B1:B20",
  12493. require: 0,
  12494. repeat: 1
  12495. }
  12496. ]
  12497. },
  12498. {
  12499. functionName: l.MAXIFS,
  12500. functionType: t.Statistical,
  12501. description: "formula.functionList.MAXIFS.description",
  12502. abstract: "formula.functionList.MAXIFS.abstract",
  12503. functionParameter: [
  12504. {
  12505. name: "formula.functionList.MAXIFS.functionParameter.maxRange.name",
  12506. detail: "formula.functionList.MAXIFS.functionParameter.maxRange.detail",
  12507. example: "A1:A20",
  12508. require: 1,
  12509. repeat: 0
  12510. },
  12511. {
  12512. name: "formula.functionList.MAXIFS.functionParameter.criteriaRange1.name",
  12513. detail: "formula.functionList.MAXIFS.functionParameter.criteriaRange1.detail",
  12514. example: "B1:B20",
  12515. require: 1,
  12516. repeat: 0
  12517. },
  12518. {
  12519. name: "formula.functionList.MAXIFS.functionParameter.criteria1.name",
  12520. detail: "formula.functionList.MAXIFS.functionParameter.criteria1.detail",
  12521. example: '">10"',
  12522. require: 1,
  12523. repeat: 0
  12524. },
  12525. {
  12526. name: "formula.functionList.MAXIFS.functionParameter.criteriaRange2.name",
  12527. detail: "formula.functionList.MAXIFS.functionParameter.criteriaRange2.detail",
  12528. example: "C1:C20",
  12529. require: 0,
  12530. repeat: 1
  12531. },
  12532. {
  12533. name: "formula.functionList.MAXIFS.functionParameter.criteria2.name",
  12534. detail: "formula.functionList.MAXIFS.functionParameter.criteria2.detail",
  12535. example: '"<20"',
  12536. require: 0,
  12537. repeat: 1
  12538. }
  12539. ]
  12540. },
  12541. {
  12542. functionName: l.MEDIAN,
  12543. functionType: t.Statistical,
  12544. description: "formula.functionList.MEDIAN.description",
  12545. abstract: "formula.functionList.MEDIAN.abstract",
  12546. functionParameter: [
  12547. {
  12548. name: "formula.functionList.MEDIAN.functionParameter.number1.name",
  12549. detail: "formula.functionList.MEDIAN.functionParameter.number1.detail",
  12550. example: "1",
  12551. require: 1,
  12552. repeat: 0
  12553. },
  12554. {
  12555. name: "formula.functionList.MEDIAN.functionParameter.number2.name",
  12556. detail: "formula.functionList.MEDIAN.functionParameter.number2.detail",
  12557. example: "2",
  12558. require: 0,
  12559. repeat: 1
  12560. }
  12561. ]
  12562. },
  12563. {
  12564. functionName: l.MIN,
  12565. aliasFunctionName: "formula.functionList.MIN.aliasFunctionName",
  12566. functionType: t.Statistical,
  12567. description: "formula.functionList.MIN.description",
  12568. abstract: "formula.functionList.MIN.abstract",
  12569. functionParameter: [
  12570. {
  12571. name: "formula.functionList.MIN.functionParameter.number1.name",
  12572. detail: "formula.functionList.MIN.functionParameter.number1.detail",
  12573. example: "A1:A20",
  12574. require: 1,
  12575. repeat: 0
  12576. },
  12577. {
  12578. name: "formula.functionList.MIN.functionParameter.number2.name",
  12579. detail: "formula.functionList.MIN.functionParameter.number2.detail",
  12580. example: "B2:B10",
  12581. require: 0,
  12582. repeat: 1
  12583. }
  12584. ]
  12585. },
  12586. {
  12587. functionName: l.MINA,
  12588. functionType: t.Statistical,
  12589. description: "formula.functionList.MINA.description",
  12590. abstract: "formula.functionList.MINA.abstract",
  12591. functionParameter: [
  12592. {
  12593. name: "formula.functionList.MINA.functionParameter.value1.name",
  12594. detail: "formula.functionList.MINA.functionParameter.value1.detail",
  12595. example: "A1:A20",
  12596. require: 1,
  12597. repeat: 0
  12598. },
  12599. {
  12600. name: "formula.functionList.MINA.functionParameter.value2.name",
  12601. detail: "formula.functionList.MINA.functionParameter.value2.detail",
  12602. example: "B1:B20",
  12603. require: 0,
  12604. repeat: 1
  12605. }
  12606. ]
  12607. },
  12608. {
  12609. functionName: l.MINIFS,
  12610. functionType: t.Statistical,
  12611. description: "formula.functionList.MINIFS.description",
  12612. abstract: "formula.functionList.MINIFS.abstract",
  12613. functionParameter: [
  12614. {
  12615. name: "formula.functionList.MINIFS.functionParameter.minRange.name",
  12616. detail: "formula.functionList.MINIFS.functionParameter.minRange.detail",
  12617. example: "A1:A20",
  12618. require: 1,
  12619. repeat: 0
  12620. },
  12621. {
  12622. name: "formula.functionList.MINIFS.functionParameter.criteriaRange1.name",
  12623. detail: "formula.functionList.MINIFS.functionParameter.criteriaRange1.detail",
  12624. example: "B1:B20",
  12625. require: 1,
  12626. repeat: 0
  12627. },
  12628. {
  12629. name: "formula.functionList.MINIFS.functionParameter.criteria1.name",
  12630. detail: "formula.functionList.MINIFS.functionParameter.criteria1.detail",
  12631. example: '">10"',
  12632. require: 1,
  12633. repeat: 0
  12634. },
  12635. {
  12636. name: "formula.functionList.MINIFS.functionParameter.criteriaRange2.name",
  12637. detail: "formula.functionList.MINIFS.functionParameter.criteriaRange2.detail",
  12638. example: "C1:C20",
  12639. require: 0,
  12640. repeat: 1
  12641. },
  12642. {
  12643. name: "formula.functionList.MINIFS.functionParameter.criteria2.name",
  12644. detail: "formula.functionList.MINIFS.functionParameter.criteria2.detail",
  12645. example: '"<20"',
  12646. require: 0,
  12647. repeat: 1
  12648. }
  12649. ]
  12650. },
  12651. {
  12652. functionName: l.MODE_MULT,
  12653. functionType: t.Statistical,
  12654. description: "formula.functionList.MODE_MULT.description",
  12655. abstract: "formula.functionList.MODE_MULT.abstract",
  12656. functionParameter: [
  12657. {
  12658. name: "formula.functionList.MODE_MULT.functionParameter.number1.name",
  12659. detail: "formula.functionList.MODE_MULT.functionParameter.number1.detail",
  12660. example: "A1:A4",
  12661. require: 1,
  12662. repeat: 0
  12663. },
  12664. {
  12665. name: "formula.functionList.MODE_MULT.functionParameter.number2.name",
  12666. detail: "formula.functionList.MODE_MULT.functionParameter.number2.detail",
  12667. example: "2",
  12668. require: 0,
  12669. repeat: 1
  12670. }
  12671. ]
  12672. },
  12673. {
  12674. functionName: l.MODE_SNGL,
  12675. functionType: t.Statistical,
  12676. description: "formula.functionList.MODE_SNGL.description",
  12677. abstract: "formula.functionList.MODE_SNGL.abstract",
  12678. functionParameter: [
  12679. {
  12680. name: "formula.functionList.MODE_SNGL.functionParameter.number1.name",
  12681. detail: "formula.functionList.MODE_SNGL.functionParameter.number1.detail",
  12682. example: "A1:A4",
  12683. require: 1,
  12684. repeat: 0
  12685. },
  12686. {
  12687. name: "formula.functionList.MODE_SNGL.functionParameter.number2.name",
  12688. detail: "formula.functionList.MODE_SNGL.functionParameter.number2.detail",
  12689. example: "2",
  12690. require: 0,
  12691. repeat: 1
  12692. }
  12693. ]
  12694. },
  12695. {
  12696. functionName: l.NEGBINOM_DIST,
  12697. functionType: t.Statistical,
  12698. description: "formula.functionList.NEGBINOM_DIST.description",
  12699. abstract: "formula.functionList.NEGBINOM_DIST.abstract",
  12700. functionParameter: [
  12701. {
  12702. name: "formula.functionList.NEGBINOM_DIST.functionParameter.numberF.name",
  12703. detail: "formula.functionList.NEGBINOM_DIST.functionParameter.numberF.detail",
  12704. example: "10",
  12705. require: 1,
  12706. repeat: 0
  12707. },
  12708. {
  12709. name: "formula.functionList.NEGBINOM_DIST.functionParameter.numberS.name",
  12710. detail: "formula.functionList.NEGBINOM_DIST.functionParameter.numberS.detail",
  12711. example: "5",
  12712. require: 1,
  12713. repeat: 0
  12714. },
  12715. {
  12716. name: "formula.functionList.NEGBINOM_DIST.functionParameter.probabilityS.name",
  12717. detail: "formula.functionList.NEGBINOM_DIST.functionParameter.probabilityS.detail",
  12718. example: "0.25",
  12719. require: 1,
  12720. repeat: 0
  12721. },
  12722. {
  12723. name: "formula.functionList.NEGBINOM_DIST.functionParameter.cumulative.name",
  12724. detail: "formula.functionList.NEGBINOM_DIST.functionParameter.cumulative.detail",
  12725. example: "true",
  12726. require: 1,
  12727. repeat: 0
  12728. }
  12729. ]
  12730. },
  12731. {
  12732. functionName: l.NORM_DIST,
  12733. functionType: t.Statistical,
  12734. description: "formula.functionList.NORM_DIST.description",
  12735. abstract: "formula.functionList.NORM_DIST.abstract",
  12736. functionParameter: [
  12737. {
  12738. name: "formula.functionList.NORM_DIST.functionParameter.x.name",
  12739. detail: "formula.functionList.NORM_DIST.functionParameter.x.detail",
  12740. example: "42",
  12741. require: 1,
  12742. repeat: 0
  12743. },
  12744. {
  12745. name: "formula.functionList.NORM_DIST.functionParameter.mean.name",
  12746. detail: "formula.functionList.NORM_DIST.functionParameter.mean.detail",
  12747. example: "40",
  12748. require: 1,
  12749. repeat: 0
  12750. },
  12751. {
  12752. name: "formula.functionList.NORM_DIST.functionParameter.standardDev.name",
  12753. detail: "formula.functionList.NORM_DIST.functionParameter.standardDev.detail",
  12754. example: "1.5",
  12755. require: 1,
  12756. repeat: 0
  12757. },
  12758. {
  12759. name: "formula.functionList.NORM_DIST.functionParameter.cumulative.name",
  12760. detail: "formula.functionList.NORM_DIST.functionParameter.cumulative.detail",
  12761. example: "true",
  12762. require: 1,
  12763. repeat: 0
  12764. }
  12765. ]
  12766. },
  12767. {
  12768. functionName: l.NORM_INV,
  12769. functionType: t.Statistical,
  12770. description: "formula.functionList.NORM_INV.description",
  12771. abstract: "formula.functionList.NORM_INV.abstract",
  12772. functionParameter: [
  12773. {
  12774. name: "formula.functionList.NORM_INV.functionParameter.probability.name",
  12775. detail: "formula.functionList.NORM_INV.functionParameter.probability.detail",
  12776. example: "0.908789",
  12777. require: 1,
  12778. repeat: 0
  12779. },
  12780. {
  12781. name: "formula.functionList.NORM_INV.functionParameter.mean.name",
  12782. detail: "formula.functionList.NORM_INV.functionParameter.mean.detail",
  12783. example: "40",
  12784. require: 1,
  12785. repeat: 0
  12786. },
  12787. {
  12788. name: "formula.functionList.NORM_INV.functionParameter.standardDev.name",
  12789. detail: "formula.functionList.NORM_INV.functionParameter.standardDev.detail",
  12790. example: "1.5",
  12791. require: 1,
  12792. repeat: 0
  12793. }
  12794. ]
  12795. },
  12796. {
  12797. functionName: l.NORM_S_DIST,
  12798. functionType: t.Statistical,
  12799. description: "formula.functionList.NORM_S_DIST.description",
  12800. abstract: "formula.functionList.NORM_S_DIST.abstract",
  12801. functionParameter: [
  12802. {
  12803. name: "formula.functionList.NORM_S_DIST.functionParameter.z.name",
  12804. detail: "formula.functionList.NORM_S_DIST.functionParameter.z.detail",
  12805. example: "1.333333",
  12806. require: 1,
  12807. repeat: 0
  12808. },
  12809. {
  12810. name: "formula.functionList.NORM_S_DIST.functionParameter.cumulative.name",
  12811. detail: "formula.functionList.NORM_S_DIST.functionParameter.cumulative.detail",
  12812. example: "true",
  12813. require: 1,
  12814. repeat: 0
  12815. }
  12816. ]
  12817. },
  12818. {
  12819. functionName: l.NORM_S_INV,
  12820. functionType: t.Statistical,
  12821. description: "formula.functionList.NORM_S_INV.description",
  12822. abstract: "formula.functionList.NORM_S_INV.abstract",
  12823. functionParameter: [
  12824. {
  12825. name: "formula.functionList.NORM_S_INV.functionParameter.probability.name",
  12826. detail: "formula.functionList.NORM_S_INV.functionParameter.probability.detail",
  12827. example: "0.908789",
  12828. require: 1,
  12829. repeat: 0
  12830. }
  12831. ]
  12832. },
  12833. {
  12834. functionName: l.PEARSON,
  12835. functionType: t.Statistical,
  12836. description: "formula.functionList.PEARSON.description",
  12837. abstract: "formula.functionList.PEARSON.abstract",
  12838. functionParameter: [
  12839. {
  12840. name: "formula.functionList.PEARSON.functionParameter.array1.name",
  12841. detail: "formula.functionList.PEARSON.functionParameter.array1.detail",
  12842. example: "A1:A4",
  12843. require: 1,
  12844. repeat: 0
  12845. },
  12846. {
  12847. name: "formula.functionList.PEARSON.functionParameter.array2.name",
  12848. detail: "formula.functionList.PEARSON.functionParameter.array2.detail",
  12849. example: "B1:B4",
  12850. require: 1,
  12851. repeat: 0
  12852. }
  12853. ]
  12854. },
  12855. {
  12856. functionName: l.PERCENTILE_EXC,
  12857. functionType: t.Statistical,
  12858. description: "formula.functionList.PERCENTILE_EXC.description",
  12859. abstract: "formula.functionList.PERCENTILE_EXC.abstract",
  12860. functionParameter: [
  12861. {
  12862. name: "formula.functionList.PERCENTILE_EXC.functionParameter.array.name",
  12863. detail: "formula.functionList.PERCENTILE_EXC.functionParameter.array.detail",
  12864. example: "A1:A4",
  12865. require: 1,
  12866. repeat: 0
  12867. },
  12868. {
  12869. name: "formula.functionList.PERCENTILE_EXC.functionParameter.k.name",
  12870. detail: "formula.functionList.PERCENTILE_EXC.functionParameter.k.detail",
  12871. example: "0.3",
  12872. require: 1,
  12873. repeat: 0
  12874. }
  12875. ]
  12876. },
  12877. {
  12878. functionName: l.PERCENTILE_INC,
  12879. functionType: t.Statistical,
  12880. description: "formula.functionList.PERCENTILE_INC.description",
  12881. abstract: "formula.functionList.PERCENTILE_INC.abstract",
  12882. functionParameter: [
  12883. {
  12884. name: "formula.functionList.PERCENTILE_INC.functionParameter.array.name",
  12885. detail: "formula.functionList.PERCENTILE_INC.functionParameter.array.detail",
  12886. example: "A1:A4",
  12887. require: 1,
  12888. repeat: 0
  12889. },
  12890. {
  12891. name: "formula.functionList.PERCENTILE_INC.functionParameter.k.name",
  12892. detail: "formula.functionList.PERCENTILE_INC.functionParameter.k.detail",
  12893. example: "0.3",
  12894. require: 1,
  12895. repeat: 0
  12896. }
  12897. ]
  12898. },
  12899. {
  12900. functionName: l.PERCENTRANK_EXC,
  12901. functionType: t.Statistical,
  12902. description: "formula.functionList.PERCENTRANK_EXC.description",
  12903. abstract: "formula.functionList.PERCENTRANK_EXC.abstract",
  12904. functionParameter: [
  12905. {
  12906. name: "formula.functionList.PERCENTRANK_EXC.functionParameter.array.name",
  12907. detail: "formula.functionList.PERCENTRANK_EXC.functionParameter.array.detail",
  12908. example: "A1:A4",
  12909. require: 1,
  12910. repeat: 0
  12911. },
  12912. {
  12913. name: "formula.functionList.PERCENTRANK_EXC.functionParameter.x.name",
  12914. detail: "formula.functionList.PERCENTRANK_EXC.functionParameter.x.detail",
  12915. example: "1.5",
  12916. require: 1,
  12917. repeat: 0
  12918. },
  12919. {
  12920. name: "formula.functionList.PERCENTRANK_EXC.functionParameter.significance.name",
  12921. detail: "formula.functionList.PERCENTRANK_EXC.functionParameter.significance.detail",
  12922. example: "3",
  12923. require: 0,
  12924. repeat: 0
  12925. }
  12926. ]
  12927. },
  12928. {
  12929. functionName: l.PERCENTRANK_INC,
  12930. functionType: t.Statistical,
  12931. description: "formula.functionList.PERCENTRANK_INC.description",
  12932. abstract: "formula.functionList.PERCENTRANK_INC.abstract",
  12933. functionParameter: [
  12934. {
  12935. name: "formula.functionList.PERCENTRANK_INC.functionParameter.array.name",
  12936. detail: "formula.functionList.PERCENTRANK_INC.functionParameter.array.detail",
  12937. example: "A1:A4",
  12938. require: 1,
  12939. repeat: 0
  12940. },
  12941. {
  12942. name: "formula.functionList.PERCENTRANK_INC.functionParameter.x.name",
  12943. detail: "formula.functionList.PERCENTRANK_INC.functionParameter.x.detail",
  12944. example: "1.5",
  12945. require: 1,
  12946. repeat: 0
  12947. },
  12948. {
  12949. name: "formula.functionList.PERCENTRANK_INC.functionParameter.significance.name",
  12950. detail: "formula.functionList.PERCENTRANK_INC.functionParameter.significance.detail",
  12951. example: "3",
  12952. require: 0,
  12953. repeat: 0
  12954. }
  12955. ]
  12956. },
  12957. {
  12958. functionName: l.PERMUT,
  12959. functionType: t.Statistical,
  12960. description: "formula.functionList.PERMUT.description",
  12961. abstract: "formula.functionList.PERMUT.abstract",
  12962. functionParameter: [
  12963. {
  12964. name: "formula.functionList.PERMUT.functionParameter.number.name",
  12965. detail: "formula.functionList.PERMUT.functionParameter.number.detail",
  12966. example: "8",
  12967. require: 1,
  12968. repeat: 0
  12969. },
  12970. {
  12971. name: "formula.functionList.PERMUT.functionParameter.numberChosen.name",
  12972. detail: "formula.functionList.PERMUT.functionParameter.numberChosen.detail",
  12973. example: "2",
  12974. require: 1,
  12975. repeat: 0
  12976. }
  12977. ]
  12978. },
  12979. {
  12980. functionName: l.PERMUTATIONA,
  12981. functionType: t.Statistical,
  12982. description: "formula.functionList.PERMUTATIONA.description",
  12983. abstract: "formula.functionList.PERMUTATIONA.abstract",
  12984. functionParameter: [
  12985. {
  12986. name: "formula.functionList.PERMUT.functionParameter.number.name",
  12987. detail: "formula.functionList.PERMUT.functionParameter.number.detail",
  12988. example: "8",
  12989. require: 1,
  12990. repeat: 0
  12991. },
  12992. {
  12993. name: "formula.functionList.PERMUT.functionParameter.numberChosen.name",
  12994. detail: "formula.functionList.PERMUT.functionParameter.numberChosen.detail",
  12995. example: "2",
  12996. require: 1,
  12997. repeat: 0
  12998. }
  12999. ]
  13000. },
  13001. {
  13002. functionName: l.PHI,
  13003. functionType: t.Statistical,
  13004. description: "formula.functionList.PHI.description",
  13005. abstract: "formula.functionList.PHI.abstract",
  13006. functionParameter: [
  13007. {
  13008. name: "formula.functionList.PHI.functionParameter.x.name",
  13009. detail: "formula.functionList.PHI.functionParameter.x.detail",
  13010. example: "0.75",
  13011. require: 1,
  13012. repeat: 0
  13013. }
  13014. ]
  13015. },
  13016. {
  13017. functionName: l.POISSON_DIST,
  13018. functionType: t.Statistical,
  13019. description: "formula.functionList.POISSON_DIST.description",
  13020. abstract: "formula.functionList.POISSON_DIST.abstract",
  13021. functionParameter: [
  13022. {
  13023. name: "formula.functionList.POISSON_DIST.functionParameter.x.name",
  13024. detail: "formula.functionList.POISSON_DIST.functionParameter.x.detail",
  13025. example: "2",
  13026. require: 1,
  13027. repeat: 0
  13028. },
  13029. {
  13030. name: "formula.functionList.POISSON_DIST.functionParameter.mean.name",
  13031. detail: "formula.functionList.POISSON_DIST.functionParameter.mean.detail",
  13032. example: "5",
  13033. require: 1,
  13034. repeat: 0
  13035. },
  13036. {
  13037. name: "formula.functionList.POISSON_DIST.functionParameter.cumulative.name",
  13038. detail: "formula.functionList.POISSON_DIST.functionParameter.cumulative.detail",
  13039. example: "true",
  13040. require: 1,
  13041. repeat: 0
  13042. }
  13043. ]
  13044. },
  13045. {
  13046. functionName: l.PROB,
  13047. functionType: t.Statistical,
  13048. description: "formula.functionList.PROB.description",
  13049. abstract: "formula.functionList.PROB.abstract",
  13050. functionParameter: [
  13051. {
  13052. name: "formula.functionList.PROB.functionParameter.xRange.name",
  13053. detail: "formula.functionList.PROB.functionParameter.xRange.detail",
  13054. example: "A1:A4",
  13055. require: 1,
  13056. repeat: 0
  13057. },
  13058. {
  13059. name: "formula.functionList.PROB.functionParameter.probRange.name",
  13060. detail: "formula.functionList.PROB.functionParameter.probRange.detail",
  13061. example: "B1:B4",
  13062. require: 1,
  13063. repeat: 0
  13064. },
  13065. {
  13066. name: "formula.functionList.PROB.functionParameter.lowerLimit.name",
  13067. detail: "formula.functionList.PROB.functionParameter.lowerLimit.detail",
  13068. example: "1",
  13069. require: 1,
  13070. repeat: 0
  13071. },
  13072. {
  13073. name: "formula.functionList.PROB.functionParameter.upperLimit.name",
  13074. detail: "formula.functionList.PROB.functionParameter.upperLimit.detail",
  13075. example: "3",
  13076. require: 0,
  13077. repeat: 0
  13078. }
  13079. ]
  13080. },
  13081. {
  13082. functionName: l.QUARTILE_EXC,
  13083. functionType: t.Statistical,
  13084. description: "formula.functionList.QUARTILE_EXC.description",
  13085. abstract: "formula.functionList.QUARTILE_EXC.abstract",
  13086. functionParameter: [
  13087. {
  13088. name: "formula.functionList.QUARTILE_EXC.functionParameter.array.name",
  13089. detail: "formula.functionList.QUARTILE_EXC.functionParameter.array.detail",
  13090. example: "A1:A4",
  13091. require: 1,
  13092. repeat: 0
  13093. },
  13094. {
  13095. name: "formula.functionList.QUARTILE_EXC.functionParameter.quart.name",
  13096. detail: "formula.functionList.QUARTILE_EXC.functionParameter.quart.detail",
  13097. example: "1",
  13098. require: 1,
  13099. repeat: 0
  13100. }
  13101. ]
  13102. },
  13103. {
  13104. functionName: l.QUARTILE_INC,
  13105. functionType: t.Statistical,
  13106. description: "formula.functionList.QUARTILE_INC.description",
  13107. abstract: "formula.functionList.QUARTILE_INC.abstract",
  13108. functionParameter: [
  13109. {
  13110. name: "formula.functionList.QUARTILE_INC.functionParameter.array.name",
  13111. detail: "formula.functionList.QUARTILE_INC.functionParameter.array.detail",
  13112. example: "A1:A4",
  13113. require: 1,
  13114. repeat: 0
  13115. },
  13116. {
  13117. name: "formula.functionList.QUARTILE_INC.functionParameter.quart.name",
  13118. detail: "formula.functionList.QUARTILE_INC.functionParameter.quart.detail",
  13119. example: "1",
  13120. require: 1,
  13121. repeat: 0
  13122. }
  13123. ]
  13124. },
  13125. {
  13126. functionName: l.RANK_AVG,
  13127. functionType: t.Statistical,
  13128. description: "formula.functionList.RANK_AVG.description",
  13129. abstract: "formula.functionList.RANK_AVG.abstract",
  13130. functionParameter: [
  13131. {
  13132. name: "formula.functionList.RANK_AVG.functionParameter.number.name",
  13133. detail: "formula.functionList.RANK_AVG.functionParameter.number.detail",
  13134. example: "A3",
  13135. require: 1,
  13136. repeat: 0
  13137. },
  13138. {
  13139. name: "formula.functionList.RANK_AVG.functionParameter.ref.name",
  13140. detail: "formula.functionList.RANK_AVG.functionParameter.ref.detail",
  13141. example: "A2:A6",
  13142. require: 1,
  13143. repeat: 0
  13144. },
  13145. {
  13146. name: "formula.functionList.RANK_AVG.functionParameter.order.name",
  13147. detail: "formula.functionList.RANK_AVG.functionParameter.order.detail",
  13148. example: "1",
  13149. require: 0,
  13150. repeat: 0
  13151. }
  13152. ]
  13153. },
  13154. {
  13155. functionName: l.RANK_EQ,
  13156. functionType: t.Statistical,
  13157. description: "formula.functionList.RANK_EQ.description",
  13158. abstract: "formula.functionList.RANK_EQ.abstract",
  13159. functionParameter: [
  13160. {
  13161. name: "formula.functionList.RANK_EQ.functionParameter.number.name",
  13162. detail: "formula.functionList.RANK_EQ.functionParameter.number.detail",
  13163. example: "A3",
  13164. require: 1,
  13165. repeat: 0
  13166. },
  13167. {
  13168. name: "formula.functionList.RANK_EQ.functionParameter.ref.name",
  13169. detail: "formula.functionList.RANK_EQ.functionParameter.ref.detail",
  13170. example: "A2:A6",
  13171. require: 1,
  13172. repeat: 0
  13173. },
  13174. {
  13175. name: "formula.functionList.RANK_EQ.functionParameter.order.name",
  13176. detail: "formula.functionList.RANK_EQ.functionParameter.order.detail",
  13177. example: "1",
  13178. require: 0,
  13179. repeat: 0
  13180. }
  13181. ]
  13182. },
  13183. {
  13184. functionName: l.RSQ,
  13185. functionType: t.Statistical,
  13186. description: "formula.functionList.RSQ.description",
  13187. abstract: "formula.functionList.RSQ.abstract",
  13188. functionParameter: [
  13189. {
  13190. name: "formula.functionList.RSQ.functionParameter.array1.name",
  13191. detail: "formula.functionList.RSQ.functionParameter.array1.detail",
  13192. example: "A1:A4",
  13193. require: 1,
  13194. repeat: 0
  13195. },
  13196. {
  13197. name: "formula.functionList.RSQ.functionParameter.array2.name",
  13198. detail: "formula.functionList.RSQ.functionParameter.array2.detail",
  13199. example: "B1:B4",
  13200. require: 1,
  13201. repeat: 0
  13202. }
  13203. ]
  13204. },
  13205. {
  13206. functionName: l.SKEW,
  13207. functionType: t.Statistical,
  13208. description: "formula.functionList.SKEW.description",
  13209. abstract: "formula.functionList.SKEW.abstract",
  13210. functionParameter: [
  13211. {
  13212. name: "formula.functionList.SKEW.functionParameter.number1.name",
  13213. detail: "formula.functionList.SKEW.functionParameter.number1.detail",
  13214. example: "A1:C3",
  13215. require: 1,
  13216. repeat: 0
  13217. },
  13218. {
  13219. name: "formula.functionList.SKEW.functionParameter.number2.name",
  13220. detail: "formula.functionList.SKEW.functionParameter.number2.detail",
  13221. example: "4",
  13222. require: 0,
  13223. repeat: 1
  13224. }
  13225. ]
  13226. },
  13227. {
  13228. functionName: l.SKEW_P,
  13229. functionType: t.Statistical,
  13230. description: "formula.functionList.SKEW_P.description",
  13231. abstract: "formula.functionList.SKEW_P.abstract",
  13232. functionParameter: [
  13233. {
  13234. name: "formula.functionList.SKEW_P.functionParameter.number1.name",
  13235. detail: "formula.functionList.SKEW_P.functionParameter.number1.detail",
  13236. example: "A1:C3",
  13237. require: 1,
  13238. repeat: 0
  13239. },
  13240. {
  13241. name: "formula.functionList.SKEW_P.functionParameter.number2.name",
  13242. detail: "formula.functionList.SKEW_P.functionParameter.number2.detail",
  13243. example: "4",
  13244. require: 0,
  13245. repeat: 1
  13246. }
  13247. ]
  13248. },
  13249. {
  13250. functionName: l.SLOPE,
  13251. functionType: t.Statistical,
  13252. description: "formula.functionList.SLOPE.description",
  13253. abstract: "formula.functionList.SLOPE.abstract",
  13254. functionParameter: [
  13255. {
  13256. name: "formula.functionList.SLOPE.functionParameter.knownYs.name",
  13257. detail: "formula.functionList.SLOPE.functionParameter.knownYs.detail",
  13258. example: "A1:A4",
  13259. require: 1,
  13260. repeat: 0
  13261. },
  13262. {
  13263. name: "formula.functionList.SLOPE.functionParameter.knownXs.name",
  13264. detail: "formula.functionList.SLOPE.functionParameter.knownXs.detail",
  13265. example: "B1:B4",
  13266. require: 1,
  13267. repeat: 0
  13268. }
  13269. ]
  13270. },
  13271. {
  13272. functionName: l.SMALL,
  13273. functionType: t.Statistical,
  13274. description: "formula.functionList.SMALL.description",
  13275. abstract: "formula.functionList.SMALL.abstract",
  13276. functionParameter: [
  13277. {
  13278. name: "formula.functionList.SMALL.functionParameter.array.name",
  13279. detail: "formula.functionList.SMALL.functionParameter.array.detail",
  13280. example: "A2:B6",
  13281. require: 1,
  13282. repeat: 0
  13283. },
  13284. {
  13285. name: "formula.functionList.SMALL.functionParameter.k.name",
  13286. detail: "formula.functionList.SMALL.functionParameter.k.detail",
  13287. example: "3",
  13288. require: 1,
  13289. repeat: 0
  13290. }
  13291. ]
  13292. },
  13293. {
  13294. functionName: l.STANDARDIZE,
  13295. functionType: t.Statistical,
  13296. description: "formula.functionList.STANDARDIZE.description",
  13297. abstract: "formula.functionList.STANDARDIZE.abstract",
  13298. functionParameter: [
  13299. {
  13300. name: "formula.functionList.STANDARDIZE.functionParameter.x.name",
  13301. detail: "formula.functionList.STANDARDIZE.functionParameter.x.detail",
  13302. example: "42",
  13303. require: 1,
  13304. repeat: 0
  13305. },
  13306. {
  13307. name: "formula.functionList.STANDARDIZE.functionParameter.mean.name",
  13308. detail: "formula.functionList.STANDARDIZE.functionParameter.mean.detail",
  13309. example: "40",
  13310. require: 1,
  13311. repeat: 0
  13312. },
  13313. {
  13314. name: "formula.functionList.STANDARDIZE.functionParameter.standardDev.name",
  13315. detail: "formula.functionList.STANDARDIZE.functionParameter.standardDev.detail",
  13316. example: "1.5",
  13317. require: 1,
  13318. repeat: 0
  13319. }
  13320. ]
  13321. },
  13322. {
  13323. functionName: l.STDEV_P,
  13324. functionType: t.Statistical,
  13325. description: "formula.functionList.STDEV_P.description",
  13326. abstract: "formula.functionList.STDEV_P.abstract",
  13327. functionParameter: [
  13328. {
  13329. name: "formula.functionList.STDEV_P.functionParameter.number1.name",
  13330. detail: "formula.functionList.STDEV_P.functionParameter.number1.detail",
  13331. example: "1",
  13332. require: 1,
  13333. repeat: 0
  13334. },
  13335. {
  13336. name: "formula.functionList.STDEV_P.functionParameter.number2.name",
  13337. detail: "formula.functionList.STDEV_P.functionParameter.number2.detail",
  13338. example: "2",
  13339. require: 0,
  13340. repeat: 1
  13341. }
  13342. ]
  13343. },
  13344. {
  13345. functionName: l.STDEV_S,
  13346. functionType: t.Statistical,
  13347. description: "formula.functionList.STDEV_S.description",
  13348. abstract: "formula.functionList.STDEV_S.abstract",
  13349. functionParameter: [
  13350. {
  13351. name: "formula.functionList.STDEV_S.functionParameter.number1.name",
  13352. detail: "formula.functionList.STDEV_S.functionParameter.number1.detail",
  13353. example: "1",
  13354. require: 1,
  13355. repeat: 0
  13356. },
  13357. {
  13358. name: "formula.functionList.STDEV_S.functionParameter.number2.name",
  13359. detail: "formula.functionList.STDEV_S.functionParameter.number2.detail",
  13360. example: "2",
  13361. require: 0,
  13362. repeat: 1
  13363. }
  13364. ]
  13365. },
  13366. {
  13367. functionName: l.STDEVA,
  13368. functionType: t.Statistical,
  13369. description: "formula.functionList.STDEVA.description",
  13370. abstract: "formula.functionList.STDEVA.abstract",
  13371. functionParameter: [
  13372. {
  13373. name: "formula.functionList.STDEVA.functionParameter.value1.name",
  13374. detail: "formula.functionList.STDEVA.functionParameter.value1.detail",
  13375. example: "1",
  13376. require: 1,
  13377. repeat: 0
  13378. },
  13379. {
  13380. name: "formula.functionList.STDEVA.functionParameter.value2.name",
  13381. detail: "formula.functionList.STDEVA.functionParameter.value2.detail",
  13382. example: "2",
  13383. require: 0,
  13384. repeat: 1
  13385. }
  13386. ]
  13387. },
  13388. {
  13389. functionName: l.STDEVPA,
  13390. functionType: t.Statistical,
  13391. description: "formula.functionList.STDEVPA.description",
  13392. abstract: "formula.functionList.STDEVPA.abstract",
  13393. functionParameter: [
  13394. {
  13395. name: "formula.functionList.STDEVPA.functionParameter.value1.name",
  13396. detail: "formula.functionList.STDEVPA.functionParameter.value1.detail",
  13397. example: "1",
  13398. require: 1,
  13399. repeat: 0
  13400. },
  13401. {
  13402. name: "formula.functionList.STDEVPA.functionParameter.value2.name",
  13403. detail: "formula.functionList.STDEVPA.functionParameter.value2.detail",
  13404. example: "2",
  13405. require: 0,
  13406. repeat: 1
  13407. }
  13408. ]
  13409. },
  13410. {
  13411. functionName: l.STEYX,
  13412. functionType: t.Statistical,
  13413. description: "formula.functionList.STEYX.description",
  13414. abstract: "formula.functionList.STEYX.abstract",
  13415. functionParameter: [
  13416. {
  13417. name: "formula.functionList.STEYX.functionParameter.knownYs.name",
  13418. detail: "formula.functionList.STEYX.functionParameter.knownYs.detail",
  13419. example: "A1:A4",
  13420. require: 1,
  13421. repeat: 0
  13422. },
  13423. {
  13424. name: "formula.functionList.STEYX.functionParameter.knownXs.name",
  13425. detail: "formula.functionList.STEYX.functionParameter.knownXs.detail",
  13426. example: "B1:B4",
  13427. require: 1,
  13428. repeat: 0
  13429. }
  13430. ]
  13431. },
  13432. {
  13433. functionName: l.T_DIST,
  13434. functionType: t.Statistical,
  13435. description: "formula.functionList.T_DIST.description",
  13436. abstract: "formula.functionList.T_DIST.abstract",
  13437. functionParameter: [
  13438. {
  13439. name: "formula.functionList.T_DIST.functionParameter.x.name",
  13440. detail: "formula.functionList.T_DIST.functionParameter.x.detail",
  13441. example: "8",
  13442. require: 1,
  13443. repeat: 0
  13444. },
  13445. {
  13446. name: "formula.functionList.T_DIST.functionParameter.degFreedom.name",
  13447. detail: "formula.functionList.T_DIST.functionParameter.degFreedom.detail",
  13448. example: "3",
  13449. require: 1,
  13450. repeat: 0
  13451. },
  13452. {
  13453. name: "formula.functionList.T_DIST.functionParameter.cumulative.name",
  13454. detail: "formula.functionList.T_DIST.functionParameter.cumulative.detail",
  13455. example: "true",
  13456. require: 1,
  13457. repeat: 0
  13458. }
  13459. ]
  13460. },
  13461. {
  13462. functionName: l.T_DIST_2T,
  13463. functionType: t.Statistical,
  13464. description: "formula.functionList.T_DIST_2T.description",
  13465. abstract: "formula.functionList.T_DIST_2T.abstract",
  13466. functionParameter: [
  13467. {
  13468. name: "formula.functionList.T_DIST_2T.functionParameter.x.name",
  13469. detail: "formula.functionList.T_DIST_2T.functionParameter.x.detail",
  13470. example: "8",
  13471. require: 1,
  13472. repeat: 0
  13473. },
  13474. {
  13475. name: "formula.functionList.T_DIST_2T.functionParameter.degFreedom.name",
  13476. detail: "formula.functionList.T_DIST_2T.functionParameter.degFreedom.detail",
  13477. example: "3",
  13478. require: 1,
  13479. repeat: 0
  13480. }
  13481. ]
  13482. },
  13483. {
  13484. functionName: l.T_DIST_RT,
  13485. functionType: t.Statistical,
  13486. description: "formula.functionList.T_DIST_RT.description",
  13487. abstract: "formula.functionList.T_DIST_RT.abstract",
  13488. functionParameter: [
  13489. {
  13490. name: "formula.functionList.T_DIST_RT.functionParameter.x.name",
  13491. detail: "formula.functionList.T_DIST_RT.functionParameter.x.detail",
  13492. example: "8",
  13493. require: 1,
  13494. repeat: 0
  13495. },
  13496. {
  13497. name: "formula.functionList.T_DIST_RT.functionParameter.degFreedom.name",
  13498. detail: "formula.functionList.T_DIST_RT.functionParameter.degFreedom.detail",
  13499. example: "3",
  13500. require: 1,
  13501. repeat: 0
  13502. }
  13503. ]
  13504. },
  13505. {
  13506. functionName: l.T_INV,
  13507. functionType: t.Statistical,
  13508. description: "formula.functionList.T_INV.description",
  13509. abstract: "formula.functionList.T_INV.abstract",
  13510. functionParameter: [
  13511. {
  13512. name: "formula.functionList.T_INV.functionParameter.probability.name",
  13513. detail: "formula.functionList.T_INV.functionParameter.probability.detail",
  13514. example: "0.75",
  13515. require: 1,
  13516. repeat: 0
  13517. },
  13518. {
  13519. name: "formula.functionList.T_INV.functionParameter.degFreedom.name",
  13520. detail: "formula.functionList.T_INV.functionParameter.degFreedom.detail",
  13521. example: "2",
  13522. require: 1,
  13523. repeat: 0
  13524. }
  13525. ]
  13526. },
  13527. {
  13528. functionName: l.T_INV_2T,
  13529. functionType: t.Statistical,
  13530. description: "formula.functionList.T_INV_2T.description",
  13531. abstract: "formula.functionList.T_INV_2T.abstract",
  13532. functionParameter: [
  13533. {
  13534. name: "formula.functionList.T_INV_2T.functionParameter.probability.name",
  13535. detail: "formula.functionList.T_INV_2T.functionParameter.probability.detail",
  13536. example: "0.75",
  13537. require: 1,
  13538. repeat: 0
  13539. },
  13540. {
  13541. name: "formula.functionList.T_INV_2T.functionParameter.degFreedom.name",
  13542. detail: "formula.functionList.T_INV_2T.functionParameter.degFreedom.detail",
  13543. example: "2",
  13544. require: 1,
  13545. repeat: 0
  13546. }
  13547. ]
  13548. },
  13549. {
  13550. functionName: l.T_TEST,
  13551. functionType: t.Statistical,
  13552. description: "formula.functionList.T_TEST.description",
  13553. abstract: "formula.functionList.T_TEST.abstract",
  13554. functionParameter: [
  13555. {
  13556. name: "formula.functionList.T_TEST.functionParameter.array1.name",
  13557. detail: "formula.functionList.T_TEST.functionParameter.array1.detail",
  13558. example: "A1:A4",
  13559. require: 1,
  13560. repeat: 0
  13561. },
  13562. {
  13563. name: "formula.functionList.T_TEST.functionParameter.array2.name",
  13564. detail: "formula.functionList.T_TEST.functionParameter.array2.detail",
  13565. example: "B1:B4",
  13566. require: 1,
  13567. repeat: 0
  13568. },
  13569. {
  13570. name: "formula.functionList.T_TEST.functionParameter.tails.name",
  13571. detail: "formula.functionList.T_TEST.functionParameter.tails.detail",
  13572. example: "2",
  13573. require: 1,
  13574. repeat: 0
  13575. },
  13576. {
  13577. name: "formula.functionList.T_TEST.functionParameter.type.name",
  13578. detail: "formula.functionList.T_TEST.functionParameter.type.detail",
  13579. example: "1",
  13580. require: 1,
  13581. repeat: 0
  13582. }
  13583. ]
  13584. },
  13585. {
  13586. functionName: l.TREND,
  13587. functionType: t.Statistical,
  13588. description: "formula.functionList.TREND.description",
  13589. abstract: "formula.functionList.TREND.abstract",
  13590. functionParameter: [
  13591. {
  13592. name: "formula.functionList.TREND.functionParameter.knownYs.name",
  13593. detail: "formula.functionList.TREND.functionParameter.knownYs.detail",
  13594. example: "B2:B7",
  13595. require: 1,
  13596. repeat: 0
  13597. },
  13598. {
  13599. name: "formula.functionList.TREND.functionParameter.knownXs.name",
  13600. detail: "formula.functionList.TREND.functionParameter.knownXs.detail",
  13601. example: "A2:A7",
  13602. require: 0,
  13603. repeat: 0
  13604. },
  13605. {
  13606. name: "formula.functionList.TREND.functionParameter.newXs.name",
  13607. detail: "formula.functionList.TREND.functionParameter.newXs.detail",
  13608. example: "A9:A10",
  13609. require: 0,
  13610. repeat: 0
  13611. },
  13612. {
  13613. name: "formula.functionList.TREND.functionParameter.constb.name",
  13614. detail: "formula.functionList.TREND.functionParameter.constb.detail",
  13615. example: "true",
  13616. require: 0,
  13617. repeat: 0
  13618. }
  13619. ]
  13620. },
  13621. {
  13622. functionName: l.TRIMMEAN,
  13623. functionType: t.Statistical,
  13624. description: "formula.functionList.TRIMMEAN.description",
  13625. abstract: "formula.functionList.TRIMMEAN.abstract",
  13626. functionParameter: [
  13627. {
  13628. name: "formula.functionList.TRIMMEAN.functionParameter.array.name",
  13629. detail: "formula.functionList.TRIMMEAN.functionParameter.array.detail",
  13630. example: "A2:A12",
  13631. require: 1,
  13632. repeat: 0
  13633. },
  13634. {
  13635. name: "formula.functionList.TRIMMEAN.functionParameter.percent.name",
  13636. detail: "formula.functionList.TRIMMEAN.functionParameter.percent.detail",
  13637. example: "0.2",
  13638. require: 1,
  13639. repeat: 0
  13640. }
  13641. ]
  13642. },
  13643. {
  13644. functionName: l.VAR_P,
  13645. functionType: t.Statistical,
  13646. description: "formula.functionList.VAR_P.description",
  13647. abstract: "formula.functionList.VAR_P.abstract",
  13648. functionParameter: [
  13649. {
  13650. name: "formula.functionList.VAR_P.functionParameter.number1.name",
  13651. detail: "formula.functionList.VAR_P.functionParameter.number1.detail",
  13652. example: "1",
  13653. require: 1,
  13654. repeat: 0
  13655. },
  13656. {
  13657. name: "formula.functionList.VAR_P.functionParameter.number2.name",
  13658. detail: "formula.functionList.VAR_P.functionParameter.number2.detail",
  13659. example: "2",
  13660. require: 0,
  13661. repeat: 1
  13662. }
  13663. ]
  13664. },
  13665. {
  13666. functionName: l.VAR_S,
  13667. functionType: t.Statistical,
  13668. description: "formula.functionList.VAR_S.description",
  13669. abstract: "formula.functionList.VAR_S.abstract",
  13670. functionParameter: [
  13671. {
  13672. name: "formula.functionList.VAR_S.functionParameter.number1.name",
  13673. detail: "formula.functionList.VAR_S.functionParameter.number1.detail",
  13674. example: "1",
  13675. require: 1,
  13676. repeat: 0
  13677. },
  13678. {
  13679. name: "formula.functionList.VAR_S.functionParameter.number2.name",
  13680. detail: "formula.functionList.VAR_S.functionParameter.number2.detail",
  13681. example: "2",
  13682. require: 0,
  13683. repeat: 1
  13684. }
  13685. ]
  13686. },
  13687. {
  13688. functionName: l.VARA,
  13689. functionType: t.Statistical,
  13690. description: "formula.functionList.VARA.description",
  13691. abstract: "formula.functionList.VARA.abstract",
  13692. functionParameter: [
  13693. {
  13694. name: "formula.functionList.VARA.functionParameter.value1.name",
  13695. detail: "formula.functionList.VARA.functionParameter.value1.detail",
  13696. example: "1",
  13697. require: 1,
  13698. repeat: 0
  13699. },
  13700. {
  13701. name: "formula.functionList.VARA.functionParameter.value2.name",
  13702. detail: "formula.functionList.VARA.functionParameter.value2.detail",
  13703. example: "2",
  13704. require: 0,
  13705. repeat: 1
  13706. }
  13707. ]
  13708. },
  13709. {
  13710. functionName: l.VARPA,
  13711. functionType: t.Statistical,
  13712. description: "formula.functionList.VARPA.description",
  13713. abstract: "formula.functionList.VARPA.abstract",
  13714. functionParameter: [
  13715. {
  13716. name: "formula.functionList.VARPA.functionParameter.value1.name",
  13717. detail: "formula.functionList.VARPA.functionParameter.value1.detail",
  13718. example: "1",
  13719. require: 1,
  13720. repeat: 0
  13721. },
  13722. {
  13723. name: "formula.functionList.VARPA.functionParameter.value2.name",
  13724. detail: "formula.functionList.VARPA.functionParameter.value2.detail",
  13725. example: "2",
  13726. require: 0,
  13727. repeat: 1
  13728. }
  13729. ]
  13730. },
  13731. {
  13732. functionName: l.WEIBULL_DIST,
  13733. functionType: t.Statistical,
  13734. description: "formula.functionList.WEIBULL_DIST.description",
  13735. abstract: "formula.functionList.WEIBULL_DIST.abstract",
  13736. functionParameter: [
  13737. {
  13738. name: "formula.functionList.WEIBULL_DIST.functionParameter.x.name",
  13739. detail: "formula.functionList.WEIBULL_DIST.functionParameter.x.detail",
  13740. example: "105",
  13741. require: 1,
  13742. repeat: 0
  13743. },
  13744. {
  13745. name: "formula.functionList.WEIBULL_DIST.functionParameter.alpha.name",
  13746. detail: "formula.functionList.WEIBULL_DIST.functionParameter.alpha.detail",
  13747. example: "20",
  13748. require: 1,
  13749. repeat: 0
  13750. },
  13751. {
  13752. name: "formula.functionList.WEIBULL_DIST.functionParameter.beta.name",
  13753. detail: "formula.functionList.WEIBULL_DIST.functionParameter.beta.detail",
  13754. example: "100",
  13755. require: 1,
  13756. repeat: 0
  13757. },
  13758. {
  13759. name: "formula.functionList.WEIBULL_DIST.functionParameter.cumulative.name",
  13760. detail: "formula.functionList.WEIBULL_DIST.functionParameter.cumulative.detail",
  13761. example: "true",
  13762. require: 1,
  13763. repeat: 0
  13764. }
  13765. ]
  13766. },
  13767. {
  13768. functionName: l.Z_TEST,
  13769. functionType: t.Statistical,
  13770. description: "formula.functionList.Z_TEST.description",
  13771. abstract: "formula.functionList.Z_TEST.abstract",
  13772. functionParameter: [
  13773. {
  13774. name: "formula.functionList.Z_TEST.functionParameter.array.name",
  13775. detail: "formula.functionList.Z_TEST.functionParameter.array.detail",
  13776. example: "A2:A11",
  13777. require: 1,
  13778. repeat: 0
  13779. },
  13780. {
  13781. name: "formula.functionList.Z_TEST.functionParameter.x.name",
  13782. detail: "formula.functionList.Z_TEST.functionParameter.x.detail",
  13783. example: "4",
  13784. require: 1,
  13785. repeat: 0
  13786. },
  13787. {
  13788. name: "formula.functionList.Z_TEST.functionParameter.sigma.name",
  13789. detail: "formula.functionList.Z_TEST.functionParameter.sigma.detail",
  13790. example: "10",
  13791. require: 0,
  13792. repeat: 0
  13793. }
  13794. ]
  13795. }
  13796. ], Zi = [
  13797. {
  13798. functionName: D.ASC,
  13799. functionType: t.Text,
  13800. description: "formula.functionList.ASC.description",
  13801. abstract: "formula.functionList.ASC.abstract",
  13802. functionParameter: [
  13803. {
  13804. name: "formula.functionList.ASC.functionParameter.text.name",
  13805. detail: "formula.functionList.ASC.functionParameter.text.detail",
  13806. example: '"Univer"',
  13807. require: 1,
  13808. repeat: 0
  13809. }
  13810. ]
  13811. },
  13812. {
  13813. functionName: D.ARRAYTOTEXT,
  13814. functionType: t.Text,
  13815. description: "formula.functionList.ARRAYTOTEXT.description",
  13816. abstract: "formula.functionList.ARRAYTOTEXT.abstract",
  13817. functionParameter: [
  13818. {
  13819. name: "formula.functionList.ARRAYTOTEXT.functionParameter.array.name",
  13820. detail: "formula.functionList.ARRAYTOTEXT.functionParameter.array.detail",
  13821. example: "A2:B4",
  13822. require: 1,
  13823. repeat: 0
  13824. },
  13825. {
  13826. name: "formula.functionList.ARRAYTOTEXT.functionParameter.format.name",
  13827. detail: "formula.functionList.ARRAYTOTEXT.functionParameter.format.detail",
  13828. example: "0",
  13829. require: 0,
  13830. repeat: 0
  13831. }
  13832. ]
  13833. },
  13834. {
  13835. functionName: D.BAHTTEXT,
  13836. functionType: t.Text,
  13837. description: "formula.functionList.BAHTTEXT.description",
  13838. abstract: "formula.functionList.BAHTTEXT.abstract",
  13839. functionParameter: [
  13840. {
  13841. name: "formula.functionList.BAHTTEXT.functionParameter.number.name",
  13842. detail: "formula.functionList.BAHTTEXT.functionParameter.number.detail",
  13843. example: "1234",
  13844. require: 1,
  13845. repeat: 0
  13846. }
  13847. ]
  13848. },
  13849. {
  13850. functionName: D.CHAR,
  13851. functionType: t.Text,
  13852. description: "formula.functionList.CHAR.description",
  13853. abstract: "formula.functionList.CHAR.abstract",
  13854. functionParameter: [
  13855. {
  13856. name: "formula.functionList.CHAR.functionParameter.number.name",
  13857. detail: "formula.functionList.CHAR.functionParameter.number.detail",
  13858. example: "65",
  13859. require: 1,
  13860. repeat: 0
  13861. }
  13862. ]
  13863. },
  13864. {
  13865. functionName: D.CLEAN,
  13866. functionType: t.Text,
  13867. description: "formula.functionList.CLEAN.description",
  13868. abstract: "formula.functionList.CLEAN.abstract",
  13869. functionParameter: [
  13870. {
  13871. name: "formula.functionList.CLEAN.functionParameter.text.name",
  13872. detail: "formula.functionList.CLEAN.functionParameter.text.detail",
  13873. example: 'CHAR(1)&"Univer"',
  13874. require: 1,
  13875. repeat: 0
  13876. }
  13877. ]
  13878. },
  13879. {
  13880. functionName: D.CODE,
  13881. functionType: t.Text,
  13882. description: "formula.functionList.CODE.description",
  13883. abstract: "formula.functionList.CODE.abstract",
  13884. functionParameter: [
  13885. {
  13886. name: "formula.functionList.CODE.functionParameter.text.name",
  13887. detail: "formula.functionList.CODE.functionParameter.text.detail",
  13888. example: '"Univer"',
  13889. require: 1,
  13890. repeat: 0
  13891. }
  13892. ]
  13893. },
  13894. {
  13895. functionName: D.CONCAT,
  13896. functionType: t.Text,
  13897. description: "formula.functionList.CONCAT.description",
  13898. abstract: "formula.functionList.CONCAT.abstract",
  13899. functionParameter: [
  13900. {
  13901. name: "formula.functionList.CONCAT.functionParameter.text1.name",
  13902. detail: "formula.functionList.CONCAT.functionParameter.text1.detail",
  13903. example: '"Hello"',
  13904. require: 1,
  13905. repeat: 0
  13906. },
  13907. {
  13908. name: "formula.functionList.CONCAT.functionParameter.text2.name",
  13909. detail: "formula.functionList.CONCAT.functionParameter.text2.detail",
  13910. example: '"Univer"',
  13911. require: 0,
  13912. repeat: 1
  13913. }
  13914. ]
  13915. },
  13916. {
  13917. functionName: D.CONCATENATE,
  13918. functionType: t.Text,
  13919. description: "formula.functionList.CONCATENATE.description",
  13920. abstract: "formula.functionList.CONCATENATE.abstract",
  13921. functionParameter: [
  13922. {
  13923. name: "formula.functionList.CONCATENATE.functionParameter.text1.name",
  13924. detail: "formula.functionList.CONCATENATE.functionParameter.text1.detail",
  13925. example: "A1",
  13926. require: 1,
  13927. repeat: 0
  13928. },
  13929. {
  13930. name: "formula.functionList.CONCATENATE.functionParameter.text2.name",
  13931. detail: "formula.functionList.CONCATENATE.functionParameter.text2.detail",
  13932. example: "A2",
  13933. require: 0,
  13934. repeat: 1
  13935. }
  13936. ]
  13937. },
  13938. {
  13939. functionName: D.DBCS,
  13940. functionType: t.Text,
  13941. description: "formula.functionList.DBCS.description",
  13942. abstract: "formula.functionList.DBCS.abstract",
  13943. functionParameter: [
  13944. {
  13945. name: "formula.functionList.DBCS.functionParameter.text.name",
  13946. detail: "formula.functionList.DBCS.functionParameter.text.detail",
  13947. example: '"Univer"',
  13948. require: 1,
  13949. repeat: 0
  13950. }
  13951. ]
  13952. },
  13953. {
  13954. functionName: D.DOLLAR,
  13955. functionType: t.Text,
  13956. description: "formula.functionList.DOLLAR.description",
  13957. abstract: "formula.functionList.DOLLAR.abstract",
  13958. functionParameter: [
  13959. {
  13960. name: "formula.functionList.DOLLAR.functionParameter.number.name",
  13961. detail: "formula.functionList.DOLLAR.functionParameter.number.detail",
  13962. example: "1234.567",
  13963. require: 1,
  13964. repeat: 0
  13965. },
  13966. {
  13967. name: "formula.functionList.DOLLAR.functionParameter.decimals.name",
  13968. detail: "formula.functionList.DOLLAR.functionParameter.decimals.detail",
  13969. example: "2",
  13970. require: 0,
  13971. repeat: 0
  13972. }
  13973. ]
  13974. },
  13975. {
  13976. functionName: D.EXACT,
  13977. functionType: t.Text,
  13978. description: "formula.functionList.EXACT.description",
  13979. abstract: "formula.functionList.EXACT.abstract",
  13980. functionParameter: [
  13981. {
  13982. name: "formula.functionList.EXACT.functionParameter.text1.name",
  13983. detail: "formula.functionList.EXACT.functionParameter.text1.detail",
  13984. example: '"Univer"',
  13985. require: 1,
  13986. repeat: 0
  13987. },
  13988. {
  13989. name: "formula.functionList.EXACT.functionParameter.text2.name",
  13990. detail: "formula.functionList.EXACT.functionParameter.text2.detail",
  13991. example: '"univer"',
  13992. require: 1,
  13993. repeat: 0
  13994. }
  13995. ]
  13996. },
  13997. {
  13998. functionName: D.FIND,
  13999. functionType: t.Text,
  14000. description: "formula.functionList.FIND.description",
  14001. abstract: "formula.functionList.FIND.abstract",
  14002. functionParameter: [
  14003. {
  14004. name: "formula.functionList.FIND.functionParameter.findText.name",
  14005. detail: "formula.functionList.FIND.functionParameter.findText.detail",
  14006. example: '"Univer"',
  14007. require: 1,
  14008. repeat: 0
  14009. },
  14010. {
  14011. name: "formula.functionList.FIND.functionParameter.withinText.name",
  14012. detail: "formula.functionList.FIND.functionParameter.withinText.detail",
  14013. example: '"Hello Univer"',
  14014. require: 1,
  14015. repeat: 0
  14016. },
  14017. {
  14018. name: "formula.functionList.FIND.functionParameter.startNum.name",
  14019. detail: "formula.functionList.FIND.functionParameter.startNum.detail",
  14020. example: "1",
  14021. require: 0,
  14022. repeat: 0
  14023. }
  14024. ]
  14025. },
  14026. {
  14027. functionName: D.FINDB,
  14028. functionType: t.Text,
  14029. description: "formula.functionList.FINDB.description",
  14030. abstract: "formula.functionList.FINDB.abstract",
  14031. functionParameter: [
  14032. {
  14033. name: "formula.functionList.FINDB.functionParameter.findText.name",
  14034. detail: "formula.functionList.FINDB.functionParameter.findText.detail",
  14035. example: '"Univer"',
  14036. require: 1,
  14037. repeat: 0
  14038. },
  14039. {
  14040. name: "formula.functionList.FINDB.functionParameter.withinText.name",
  14041. detail: "formula.functionList.FINDB.functionParameter.withinText.detail",
  14042. example: '"Hello Univer"',
  14043. require: 1,
  14044. repeat: 0
  14045. },
  14046. {
  14047. name: "formula.functionList.FINDB.functionParameter.startNum.name",
  14048. detail: "formula.functionList.FINDB.functionParameter.startNum.detail",
  14049. example: "1",
  14050. require: 0,
  14051. repeat: 0
  14052. }
  14053. ]
  14054. },
  14055. {
  14056. functionName: D.FIXED,
  14057. functionType: t.Text,
  14058. description: "formula.functionList.FIXED.description",
  14059. abstract: "formula.functionList.FIXED.abstract",
  14060. functionParameter: [
  14061. {
  14062. name: "formula.functionList.FIXED.functionParameter.number.name",
  14063. detail: "formula.functionList.FIXED.functionParameter.number.detail",
  14064. example: "1234.567",
  14065. require: 1,
  14066. repeat: 0
  14067. },
  14068. {
  14069. name: "formula.functionList.FIXED.functionParameter.decimals.name",
  14070. detail: "formula.functionList.FIXED.functionParameter.decimals.detail",
  14071. example: "2",
  14072. require: 0,
  14073. repeat: 0
  14074. },
  14075. {
  14076. name: "formula.functionList.FIXED.functionParameter.noCommas.name",
  14077. detail: "formula.functionList.FIXED.functionParameter.noCommas.detail",
  14078. example: "0",
  14079. require: 0,
  14080. repeat: 0
  14081. }
  14082. ]
  14083. },
  14084. {
  14085. functionName: D.LEFT,
  14086. functionType: t.Text,
  14087. description: "formula.functionList.LEFT.description",
  14088. abstract: "formula.functionList.LEFT.abstract",
  14089. functionParameter: [
  14090. {
  14091. name: "formula.functionList.LEFT.functionParameter.text.name",
  14092. detail: "formula.functionList.LEFT.functionParameter.text.detail",
  14093. example: '"Univer"',
  14094. require: 1,
  14095. repeat: 0
  14096. },
  14097. {
  14098. name: "formula.functionList.LEFT.functionParameter.numChars.name",
  14099. detail: "formula.functionList.LEFT.functionParameter.numChars.detail",
  14100. example: "3",
  14101. require: 0,
  14102. repeat: 0
  14103. }
  14104. ]
  14105. },
  14106. {
  14107. functionName: D.LEFTB,
  14108. functionType: t.Text,
  14109. description: "formula.functionList.LEFTB.description",
  14110. abstract: "formula.functionList.LEFTB.abstract",
  14111. functionParameter: [
  14112. {
  14113. name: "formula.functionList.LEFTB.functionParameter.text.name",
  14114. detail: "formula.functionList.LEFTB.functionParameter.text.detail",
  14115. example: '"Univer"',
  14116. require: 1,
  14117. repeat: 0
  14118. },
  14119. {
  14120. name: "formula.functionList.LEFTB.functionParameter.numBytes.name",
  14121. detail: "formula.functionList.LEFTB.functionParameter.numBytes.detail",
  14122. example: "3",
  14123. require: 0,
  14124. repeat: 0
  14125. }
  14126. ]
  14127. },
  14128. {
  14129. functionName: D.LEN,
  14130. functionType: t.Text,
  14131. description: "formula.functionList.LEN.description",
  14132. abstract: "formula.functionList.LEN.abstract",
  14133. functionParameter: [
  14134. {
  14135. name: "formula.functionList.LEN.functionParameter.text.name",
  14136. detail: "formula.functionList.LEN.functionParameter.text.detail",
  14137. example: '"Univer"',
  14138. require: 1,
  14139. repeat: 0
  14140. }
  14141. ]
  14142. },
  14143. {
  14144. functionName: D.LENB,
  14145. functionType: t.Text,
  14146. description: "formula.functionList.LENB.description",
  14147. abstract: "formula.functionList.LENB.abstract",
  14148. functionParameter: [
  14149. {
  14150. name: "formula.functionList.LENB.functionParameter.text.name",
  14151. detail: "formula.functionList.LENB.functionParameter.text.detail",
  14152. example: '"Univer"',
  14153. require: 1,
  14154. repeat: 0
  14155. }
  14156. ]
  14157. },
  14158. {
  14159. functionName: D.LOWER,
  14160. functionType: t.Text,
  14161. description: "formula.functionList.LOWER.description",
  14162. abstract: "formula.functionList.LOWER.abstract",
  14163. functionParameter: [
  14164. {
  14165. name: "formula.functionList.LOWER.functionParameter.text.name",
  14166. detail: "formula.functionList.LOWER.functionParameter.text.detail",
  14167. example: '"Univer"',
  14168. require: 1,
  14169. repeat: 0
  14170. }
  14171. ]
  14172. },
  14173. {
  14174. functionName: D.MID,
  14175. functionType: t.Text,
  14176. description: "formula.functionList.MID.description",
  14177. abstract: "formula.functionList.MID.abstract",
  14178. functionParameter: [
  14179. {
  14180. name: "formula.functionList.MID.functionParameter.text.name",
  14181. detail: "formula.functionList.MID.functionParameter.text.detail",
  14182. example: '"Univer"',
  14183. require: 1,
  14184. repeat: 0
  14185. },
  14186. {
  14187. name: "formula.functionList.MID.functionParameter.startNum.name",
  14188. detail: "formula.functionList.MID.functionParameter.startNum.detail",
  14189. example: "1",
  14190. require: 1,
  14191. repeat: 0
  14192. },
  14193. {
  14194. name: "formula.functionList.MID.functionParameter.numChars.name",
  14195. detail: "formula.functionList.MID.functionParameter.numChars.detail",
  14196. example: "3",
  14197. require: 1,
  14198. repeat: 0
  14199. }
  14200. ]
  14201. },
  14202. {
  14203. functionName: D.MIDB,
  14204. functionType: t.Text,
  14205. description: "formula.functionList.MIDB.description",
  14206. abstract: "formula.functionList.MIDB.abstract",
  14207. functionParameter: [
  14208. {
  14209. name: "formula.functionList.MIDB.functionParameter.text.name",
  14210. detail: "formula.functionList.MIDB.functionParameter.text.detail",
  14211. example: '"Univer"',
  14212. require: 1,
  14213. repeat: 0
  14214. },
  14215. {
  14216. name: "formula.functionList.MIDB.functionParameter.startNum.name",
  14217. detail: "formula.functionList.MIDB.functionParameter.startNum.detail",
  14218. example: "1",
  14219. require: 1,
  14220. repeat: 0
  14221. },
  14222. {
  14223. name: "formula.functionList.MIDB.functionParameter.numBytes.name",
  14224. detail: "formula.functionList.MIDB.functionParameter.numBytes.detail",
  14225. example: "3",
  14226. require: 1,
  14227. repeat: 0
  14228. }
  14229. ]
  14230. },
  14231. {
  14232. functionName: D.NUMBERVALUE,
  14233. functionType: t.Text,
  14234. description: "formula.functionList.NUMBERVALUE.description",
  14235. abstract: "formula.functionList.NUMBERVALUE.abstract",
  14236. functionParameter: [
  14237. {
  14238. name: "formula.functionList.NUMBERVALUE.functionParameter.text.name",
  14239. detail: "formula.functionList.NUMBERVALUE.functionParameter.text.detail",
  14240. example: '"2.500,27"',
  14241. require: 1,
  14242. repeat: 0
  14243. },
  14244. {
  14245. name: "formula.functionList.NUMBERVALUE.functionParameter.decimalSeparator.name",
  14246. detail: "formula.functionList.NUMBERVALUE.functionParameter.decimalSeparator.detail",
  14247. example: '","',
  14248. require: 0,
  14249. repeat: 0
  14250. },
  14251. {
  14252. name: "formula.functionList.NUMBERVALUE.functionParameter.groupSeparator.name",
  14253. detail: "formula.functionList.NUMBERVALUE.functionParameter.groupSeparator.detail",
  14254. example: '"."',
  14255. require: 0,
  14256. repeat: 0
  14257. }
  14258. ]
  14259. },
  14260. {
  14261. functionName: D.PHONETIC,
  14262. functionType: t.Text,
  14263. description: "formula.functionList.PHONETIC.description",
  14264. abstract: "formula.functionList.PHONETIC.abstract",
  14265. functionParameter: [
  14266. {
  14267. name: "formula.functionList.PHONETIC.functionParameter.number1.name",
  14268. detail: "formula.functionList.PHONETIC.functionParameter.number1.detail",
  14269. example: "A1:A20",
  14270. require: 1,
  14271. repeat: 0
  14272. },
  14273. {
  14274. name: "formula.functionList.PHONETIC.functionParameter.number2.name",
  14275. detail: "formula.functionList.PHONETIC.functionParameter.number2.detail",
  14276. example: "A1:A20",
  14277. require: 1,
  14278. repeat: 0
  14279. }
  14280. ]
  14281. },
  14282. {
  14283. functionName: D.PROPER,
  14284. functionType: t.Text,
  14285. description: "formula.functionList.PROPER.description",
  14286. abstract: "formula.functionList.PROPER.abstract",
  14287. functionParameter: [
  14288. {
  14289. name: "formula.functionList.PROPER.functionParameter.text.name",
  14290. detail: "formula.functionList.PROPER.functionParameter.text.detail",
  14291. example: '"hello univer"',
  14292. require: 1,
  14293. repeat: 0
  14294. }
  14295. ]
  14296. },
  14297. {
  14298. functionName: D.REGEXEXTRACT,
  14299. functionType: t.Text,
  14300. description: "formula.functionList.REGEXEXTRACT.description",
  14301. abstract: "formula.functionList.REGEXEXTRACT.abstract",
  14302. functionParameter: [
  14303. {
  14304. name: "formula.functionList.REGEXEXTRACT.functionParameter.text.name",
  14305. detail: "formula.functionList.REGEXEXTRACT.functionParameter.text.detail",
  14306. example: '"abcdefg"',
  14307. require: 1,
  14308. repeat: 0
  14309. },
  14310. {
  14311. name: "formula.functionList.REGEXEXTRACT.functionParameter.regularExpression.name",
  14312. detail: "formula.functionList.REGEXEXTRACT.functionParameter.regularExpression.detail",
  14313. example: '"c.*f"',
  14314. require: 1,
  14315. repeat: 0
  14316. }
  14317. ]
  14318. },
  14319. {
  14320. functionName: D.REGEXMATCH,
  14321. functionType: t.Text,
  14322. description: "formula.functionList.REGEXMATCH.description",
  14323. abstract: "formula.functionList.REGEXMATCH.abstract",
  14324. functionParameter: [
  14325. {
  14326. name: "formula.functionList.REGEXMATCH.functionParameter.text.name",
  14327. detail: "formula.functionList.REGEXMATCH.functionParameter.text.detail",
  14328. example: '"Spreadsheets"',
  14329. require: 1,
  14330. repeat: 0
  14331. },
  14332. {
  14333. name: "formula.functionList.REGEXMATCH.functionParameter.regularExpression.name",
  14334. detail: "formula.functionList.REGEXMATCH.functionParameter.regularExpression.detail",
  14335. example: '"S.r"',
  14336. require: 1,
  14337. repeat: 0
  14338. }
  14339. ]
  14340. },
  14341. {
  14342. functionName: D.REGEXREPLACE,
  14343. functionType: t.Text,
  14344. description: "formula.functionList.REGEXREPLACE.description",
  14345. abstract: "formula.functionList.REGEXREPLACE.abstract",
  14346. functionParameter: [
  14347. {
  14348. name: "formula.functionList.REGEXREPLACE.functionParameter.text.name",
  14349. detail: "formula.functionList.REGEXREPLACE.functionParameter.text.detail",
  14350. example: '"abcedfg"',
  14351. require: 1,
  14352. repeat: 0
  14353. },
  14354. {
  14355. name: "formula.functionList.REGEXREPLACE.functionParameter.regularExpression.name",
  14356. detail: "formula.functionList.REGEXREPLACE.functionParameter.regularExpression.detail",
  14357. example: '"a.*d"',
  14358. require: 1,
  14359. repeat: 0
  14360. },
  14361. {
  14362. name: "formula.functionList.REGEXREPLACE.functionParameter.replacement.name",
  14363. detail: "formula.functionList.REGEXREPLACE.functionParameter.replacement.detail",
  14364. example: '"xyz"',
  14365. require: 1,
  14366. repeat: 0
  14367. }
  14368. ]
  14369. },
  14370. {
  14371. functionName: D.REPLACE,
  14372. functionType: t.Text,
  14373. description: "formula.functionList.REPLACE.description",
  14374. abstract: "formula.functionList.REPLACE.abstract",
  14375. functionParameter: [
  14376. {
  14377. name: "formula.functionList.REPLACE.functionParameter.oldText.name",
  14378. detail: "formula.functionList.REPLACE.functionParameter.oldText.detail",
  14379. example: '"Univer"',
  14380. require: 1,
  14381. repeat: 0
  14382. },
  14383. {
  14384. name: "formula.functionList.REPLACE.functionParameter.startNum.name",
  14385. detail: "formula.functionList.REPLACE.functionParameter.startNum.detail",
  14386. example: "1",
  14387. require: 1,
  14388. repeat: 0
  14389. },
  14390. {
  14391. name: "formula.functionList.REPLACE.functionParameter.numChars.name",
  14392. detail: "formula.functionList.REPLACE.functionParameter.numChars.detail",
  14393. example: "0",
  14394. require: 1,
  14395. repeat: 0
  14396. },
  14397. {
  14398. name: "formula.functionList.REPLACE.functionParameter.newText.name",
  14399. detail: "formula.functionList.REPLACE.functionParameter.newText.detail",
  14400. example: '"Hello "',
  14401. require: 1,
  14402. repeat: 0
  14403. }
  14404. ]
  14405. },
  14406. {
  14407. functionName: D.REPLACEB,
  14408. functionType: t.Text,
  14409. description: "formula.functionList.REPLACEB.description",
  14410. abstract: "formula.functionList.REPLACEB.abstract",
  14411. functionParameter: [
  14412. {
  14413. name: "formula.functionList.REPLACEB.functionParameter.oldText.name",
  14414. detail: "formula.functionList.REPLACEB.functionParameter.oldText.detail",
  14415. example: '"Univer"',
  14416. require: 1,
  14417. repeat: 0
  14418. },
  14419. {
  14420. name: "formula.functionList.REPLACEB.functionParameter.startNum.name",
  14421. detail: "formula.functionList.REPLACEB.functionParameter.startNum.detail",
  14422. example: "1",
  14423. require: 1,
  14424. repeat: 0
  14425. },
  14426. {
  14427. name: "formula.functionList.REPLACEB.functionParameter.numBytes.name",
  14428. detail: "formula.functionList.REPLACEB.functionParameter.numBytes.detail",
  14429. example: "0",
  14430. require: 1,
  14431. repeat: 0
  14432. },
  14433. {
  14434. name: "formula.functionList.REPLACEB.functionParameter.newText.name",
  14435. detail: "formula.functionList.REPLACEB.functionParameter.newText.detail",
  14436. example: '"Hello "',
  14437. require: 1,
  14438. repeat: 0
  14439. }
  14440. ]
  14441. },
  14442. {
  14443. functionName: D.REPT,
  14444. functionType: t.Text,
  14445. description: "formula.functionList.REPT.description",
  14446. abstract: "formula.functionList.REPT.abstract",
  14447. functionParameter: [
  14448. {
  14449. name: "formula.functionList.REPT.functionParameter.text.name",
  14450. detail: "formula.functionList.REPT.functionParameter.text.detail",
  14451. example: '"*-"',
  14452. require: 1,
  14453. repeat: 0
  14454. },
  14455. {
  14456. name: "formula.functionList.REPT.functionParameter.numberTimes.name",
  14457. detail: "formula.functionList.REPT.functionParameter.numberTimes.detail",
  14458. example: "3",
  14459. require: 1,
  14460. repeat: 0
  14461. }
  14462. ]
  14463. },
  14464. {
  14465. functionName: D.RIGHT,
  14466. functionType: t.Text,
  14467. description: "formula.functionList.RIGHT.description",
  14468. abstract: "formula.functionList.RIGHT.abstract",
  14469. functionParameter: [
  14470. {
  14471. name: "formula.functionList.RIGHT.functionParameter.text.name",
  14472. detail: "formula.functionList.RIGHT.functionParameter.text.detail",
  14473. example: '"Univer"',
  14474. require: 1,
  14475. repeat: 0
  14476. },
  14477. {
  14478. name: "formula.functionList.RIGHT.functionParameter.numChars.name",
  14479. detail: "formula.functionList.RIGHT.functionParameter.numChars.detail",
  14480. example: "3",
  14481. require: 0,
  14482. repeat: 0
  14483. }
  14484. ]
  14485. },
  14486. {
  14487. functionName: D.RIGHTB,
  14488. functionType: t.Text,
  14489. description: "formula.functionList.RIGHTB.description",
  14490. abstract: "formula.functionList.RIGHTB.abstract",
  14491. functionParameter: [
  14492. {
  14493. name: "formula.functionList.RIGHTB.functionParameter.text.name",
  14494. detail: "formula.functionList.RIGHTB.functionParameter.text.detail",
  14495. example: '"Univer"',
  14496. require: 1,
  14497. repeat: 0
  14498. },
  14499. {
  14500. name: "formula.functionList.RIGHTB.functionParameter.numBytes.name",
  14501. detail: "formula.functionList.RIGHTB.functionParameter.numBytes.detail",
  14502. example: "3",
  14503. require: 0,
  14504. repeat: 0
  14505. }
  14506. ]
  14507. },
  14508. {
  14509. functionName: D.SEARCH,
  14510. functionType: t.Text,
  14511. description: "formula.functionList.SEARCH.description",
  14512. abstract: "formula.functionList.SEARCH.abstract",
  14513. functionParameter: [
  14514. {
  14515. name: "formula.functionList.SEARCH.functionParameter.findText.name",
  14516. detail: "formula.functionList.SEARCH.functionParameter.findText.detail",
  14517. example: '"univer"',
  14518. require: 1,
  14519. repeat: 0
  14520. },
  14521. {
  14522. name: "formula.functionList.SEARCH.functionParameter.withinText.name",
  14523. detail: "formula.functionList.SEARCH.functionParameter.withinText.detail",
  14524. example: '"Hello Univer"',
  14525. require: 1,
  14526. repeat: 0
  14527. },
  14528. {
  14529. name: "formula.functionList.SEARCH.functionParameter.startNum.name",
  14530. detail: "formula.functionList.SEARCH.functionParameter.startNum.detail",
  14531. example: "1",
  14532. require: 0,
  14533. repeat: 0
  14534. }
  14535. ]
  14536. },
  14537. {
  14538. functionName: D.SEARCHB,
  14539. functionType: t.Text,
  14540. description: "formula.functionList.SEARCHB.description",
  14541. abstract: "formula.functionList.SEARCHB.abstract",
  14542. functionParameter: [
  14543. {
  14544. name: "formula.functionList.SEARCHB.functionParameter.findText.name",
  14545. detail: "formula.functionList.SEARCHB.functionParameter.findText.detail",
  14546. example: '"univer"',
  14547. require: 1,
  14548. repeat: 0
  14549. },
  14550. {
  14551. name: "formula.functionList.SEARCHB.functionParameter.withinText.name",
  14552. detail: "formula.functionList.SEARCHB.functionParameter.withinText.detail",
  14553. example: '"Hello Univer"',
  14554. require: 1,
  14555. repeat: 0
  14556. },
  14557. {
  14558. name: "formula.functionList.SEARCHB.functionParameter.startNum.name",
  14559. detail: "formula.functionList.SEARCHB.functionParameter.startNum.detail",
  14560. example: "1",
  14561. require: 0,
  14562. repeat: 0
  14563. }
  14564. ]
  14565. },
  14566. {
  14567. functionName: D.SUBSTITUTE,
  14568. functionType: t.Text,
  14569. description: "formula.functionList.SUBSTITUTE.description",
  14570. abstract: "formula.functionList.SUBSTITUTE.abstract",
  14571. functionParameter: [
  14572. {
  14573. name: "formula.functionList.SUBSTITUTE.functionParameter.text.name",
  14574. detail: "formula.functionList.SUBSTITUTE.functionParameter.text.detail",
  14575. example: '"Hello Univer"',
  14576. require: 1,
  14577. repeat: 0
  14578. },
  14579. {
  14580. name: "formula.functionList.SUBSTITUTE.functionParameter.oldText.name",
  14581. detail: "formula.functionList.SUBSTITUTE.functionParameter.oldText.detail",
  14582. example: '"Hello"',
  14583. require: 1,
  14584. repeat: 0
  14585. },
  14586. {
  14587. name: "formula.functionList.SUBSTITUTE.functionParameter.newText.name",
  14588. detail: "formula.functionList.SUBSTITUTE.functionParameter.newText.detail",
  14589. example: '"Hi"',
  14590. require: 1,
  14591. repeat: 0
  14592. },
  14593. {
  14594. name: "formula.functionList.SUBSTITUTE.functionParameter.instanceNum.name",
  14595. detail: "formula.functionList.SUBSTITUTE.functionParameter.instanceNum.detail",
  14596. example: "1",
  14597. require: 0,
  14598. repeat: 0
  14599. }
  14600. ]
  14601. },
  14602. {
  14603. functionName: D.T,
  14604. functionType: t.Text,
  14605. description: "formula.functionList.T.description",
  14606. abstract: "formula.functionList.T.abstract",
  14607. functionParameter: [
  14608. {
  14609. name: "formula.functionList.T.functionParameter.value.name",
  14610. detail: "formula.functionList.T.functionParameter.value.detail",
  14611. example: '"Univer"',
  14612. require: 1,
  14613. repeat: 0
  14614. }
  14615. ]
  14616. },
  14617. {
  14618. functionName: D.TEXT,
  14619. functionType: t.Text,
  14620. description: "formula.functionList.TEXT.description",
  14621. abstract: "formula.functionList.TEXT.abstract",
  14622. functionParameter: [
  14623. {
  14624. name: "formula.functionList.TEXT.functionParameter.value.name",
  14625. detail: "formula.functionList.TEXT.functionParameter.value.detail",
  14626. example: "1.23",
  14627. require: 1,
  14628. repeat: 0
  14629. },
  14630. {
  14631. name: "formula.functionList.TEXT.functionParameter.formatText.name",
  14632. detail: "formula.functionList.TEXT.functionParameter.formatText.detail",
  14633. example: '"$0.00"',
  14634. require: 1,
  14635. repeat: 0
  14636. }
  14637. ]
  14638. },
  14639. {
  14640. functionName: D.TEXTAFTER,
  14641. functionType: t.Text,
  14642. description: "formula.functionList.TEXTAFTER.description",
  14643. abstract: "formula.functionList.TEXTAFTER.abstract",
  14644. functionParameter: [
  14645. {
  14646. name: "formula.functionList.TEXTAFTER.functionParameter.text.name",
  14647. detail: "formula.functionList.TEXTAFTER.functionParameter.text.detail",
  14648. example: '"Red riding hood’s, red hood"',
  14649. require: 1,
  14650. repeat: 0
  14651. },
  14652. {
  14653. name: "formula.functionList.TEXTAFTER.functionParameter.delimiter.name",
  14654. detail: "formula.functionList.TEXTAFTER.functionParameter.delimiter.detail",
  14655. example: '"hood"',
  14656. require: 1,
  14657. repeat: 0
  14658. },
  14659. {
  14660. name: "formula.functionList.TEXTAFTER.functionParameter.instanceNum.name",
  14661. detail: "formula.functionList.TEXTAFTER.functionParameter.instanceNum.detail",
  14662. example: "1",
  14663. require: 0,
  14664. repeat: 0
  14665. },
  14666. {
  14667. name: "formula.functionList.TEXTAFTER.functionParameter.matchMode.name",
  14668. detail: "formula.functionList.TEXTAFTER.functionParameter.matchMode.detail",
  14669. example: "1",
  14670. require: 0,
  14671. repeat: 0
  14672. },
  14673. {
  14674. name: "formula.functionList.TEXTAFTER.functionParameter.matchEnd.name",
  14675. detail: "formula.functionList.TEXTAFTER.functionParameter.matchEnd.detail",
  14676. example: "0",
  14677. require: 0,
  14678. repeat: 0
  14679. },
  14680. {
  14681. name: "formula.functionList.TEXTAFTER.functionParameter.ifNotFound.name",
  14682. detail: "formula.functionList.TEXTAFTER.functionParameter.ifNotFound.detail",
  14683. example: '"not found"',
  14684. require: 0,
  14685. repeat: 0
  14686. }
  14687. ]
  14688. },
  14689. {
  14690. functionName: D.TEXTBEFORE,
  14691. functionType: t.Text,
  14692. description: "formula.functionList.TEXTBEFORE.description",
  14693. abstract: "formula.functionList.TEXTBEFORE.abstract",
  14694. functionParameter: [
  14695. {
  14696. name: "formula.functionList.TEXTBEFORE.functionParameter.text.name",
  14697. detail: "formula.functionList.TEXTBEFORE.functionParameter.text.detail",
  14698. example: '"Red riding hood’s, red hood"',
  14699. require: 1,
  14700. repeat: 0
  14701. },
  14702. {
  14703. name: "formula.functionList.TEXTBEFORE.functionParameter.delimiter.name",
  14704. detail: "formula.functionList.TEXTBEFORE.functionParameter.delimiter.detail",
  14705. example: '"hood"',
  14706. require: 1,
  14707. repeat: 0
  14708. },
  14709. {
  14710. name: "formula.functionList.TEXTBEFORE.functionParameter.instanceNum.name",
  14711. detail: "formula.functionList.TEXTBEFORE.functionParameter.instanceNum.detail",
  14712. example: "1",
  14713. require: 0,
  14714. repeat: 0
  14715. },
  14716. {
  14717. name: "formula.functionList.TEXTBEFORE.functionParameter.matchMode.name",
  14718. detail: "formula.functionList.TEXTBEFORE.functionParameter.matchMode.detail",
  14719. example: "1",
  14720. require: 0,
  14721. repeat: 0
  14722. },
  14723. {
  14724. name: "formula.functionList.TEXTBEFORE.functionParameter.matchEnd.name",
  14725. detail: "formula.functionList.TEXTBEFORE.functionParameter.matchEnd.detail",
  14726. example: "0",
  14727. require: 0,
  14728. repeat: 0
  14729. },
  14730. {
  14731. name: "formula.functionList.TEXTBEFORE.functionParameter.ifNotFound.name",
  14732. detail: "formula.functionList.TEXTBEFORE.functionParameter.ifNotFound.detail",
  14733. example: '"not found"',
  14734. require: 0,
  14735. repeat: 0
  14736. }
  14737. ]
  14738. },
  14739. {
  14740. functionName: D.TEXTJOIN,
  14741. functionType: t.Text,
  14742. description: "formula.functionList.TEXTJOIN.description",
  14743. abstract: "formula.functionList.TEXTJOIN.abstract",
  14744. functionParameter: [
  14745. {
  14746. name: "formula.functionList.TEXTJOIN.functionParameter.delimiter.name",
  14747. detail: "formula.functionList.TEXTJOIN.functionParameter.delimiter.detail",
  14748. example: '", "',
  14749. require: 1,
  14750. repeat: 0
  14751. },
  14752. {
  14753. name: "formula.functionList.TEXTJOIN.functionParameter.ignoreEmpty.name",
  14754. detail: "formula.functionList.TEXTJOIN.functionParameter.ignoreEmpty.detail",
  14755. example: "true",
  14756. require: 1,
  14757. repeat: 0
  14758. },
  14759. {
  14760. name: "formula.functionList.TEXTJOIN.functionParameter.text1.name",
  14761. detail: "formula.functionList.TEXTJOIN.functionParameter.text1.detail",
  14762. example: '"Hi"',
  14763. require: 1,
  14764. repeat: 0
  14765. },
  14766. {
  14767. name: "formula.functionList.TEXTJOIN.functionParameter.text2.name",
  14768. detail: "formula.functionList.TEXTJOIN.functionParameter.text2.detail",
  14769. example: '"Univer"',
  14770. require: 0,
  14771. repeat: 1
  14772. }
  14773. ]
  14774. },
  14775. {
  14776. functionName: D.TEXTSPLIT,
  14777. functionType: t.Text,
  14778. description: "formula.functionList.TEXTSPLIT.description",
  14779. abstract: "formula.functionList.TEXTSPLIT.abstract",
  14780. functionParameter: [
  14781. {
  14782. name: "formula.functionList.TEXTSPLIT.functionParameter.text.name",
  14783. detail: "formula.functionList.TEXTSPLIT.functionParameter.text.detail",
  14784. example: "A1:C2",
  14785. require: 1,
  14786. repeat: 0
  14787. },
  14788. {
  14789. name: "formula.functionList.TEXTSPLIT.functionParameter.colDelimiter.name",
  14790. detail: "formula.functionList.TEXTSPLIT.functionParameter.colDelimiter.detail",
  14791. example: '","',
  14792. require: 1,
  14793. repeat: 0
  14794. },
  14795. {
  14796. name: "formula.functionList.TEXTSPLIT.functionParameter.rowDelimiter.name",
  14797. detail: "formula.functionList.TEXTSPLIT.functionParameter.rowDelimiter.detail",
  14798. example: '";"',
  14799. require: 0,
  14800. repeat: 0
  14801. },
  14802. {
  14803. name: "formula.functionList.TEXTSPLIT.functionParameter.ignoreEmpty.name",
  14804. detail: "formula.functionList.TEXTSPLIT.functionParameter.ignoreEmpty.detail",
  14805. example: "",
  14806. require: 0,
  14807. repeat: 0
  14808. },
  14809. {
  14810. name: "formula.functionList.TEXTSPLIT.functionParameter.matchMode.name",
  14811. detail: "formula.functionList.TEXTSPLIT.functionParameter.matchMode.detail",
  14812. example: "",
  14813. require: 0,
  14814. repeat: 0
  14815. },
  14816. {
  14817. name: "formula.functionList.TEXTSPLIT.functionParameter.padWith.name",
  14818. detail: "formula.functionList.TEXTSPLIT.functionParameter.padWith.detail",
  14819. example: "",
  14820. require: 0,
  14821. repeat: 0
  14822. }
  14823. ]
  14824. },
  14825. {
  14826. functionName: D.TRIM,
  14827. functionType: t.Text,
  14828. description: "formula.functionList.TRIM.description",
  14829. abstract: "formula.functionList.TRIM.abstract",
  14830. functionParameter: [
  14831. {
  14832. name: "formula.functionList.TRIM.functionParameter.text.name",
  14833. detail: "formula.functionList.TRIM.functionParameter.text.detail",
  14834. example: '" Hello Univer "',
  14835. require: 1,
  14836. repeat: 0
  14837. }
  14838. ]
  14839. },
  14840. {
  14841. functionName: D.UNICHAR,
  14842. functionType: t.Text,
  14843. description: "formula.functionList.UNICHAR.description",
  14844. abstract: "formula.functionList.UNICHAR.abstract",
  14845. functionParameter: [
  14846. {
  14847. name: "formula.functionList.UNICHAR.functionParameter.number.name",
  14848. detail: "formula.functionList.UNICHAR.functionParameter.number.detail",
  14849. example: "65",
  14850. require: 1,
  14851. repeat: 0
  14852. }
  14853. ]
  14854. },
  14855. {
  14856. functionName: D.UNICODE,
  14857. functionType: t.Text,
  14858. description: "formula.functionList.UNICODE.description",
  14859. abstract: "formula.functionList.UNICODE.abstract",
  14860. functionParameter: [
  14861. {
  14862. name: "formula.functionList.UNICODE.functionParameter.text.name",
  14863. detail: "formula.functionList.UNICODE.functionParameter.text.detail",
  14864. example: '"Univer"',
  14865. require: 1,
  14866. repeat: 0
  14867. }
  14868. ]
  14869. },
  14870. {
  14871. functionName: D.UPPER,
  14872. functionType: t.Text,
  14873. description: "formula.functionList.UPPER.description",
  14874. abstract: "formula.functionList.UPPER.abstract",
  14875. functionParameter: [
  14876. {
  14877. name: "formula.functionList.UPPER.functionParameter.text.name",
  14878. detail: "formula.functionList.UPPER.functionParameter.text.detail",
  14879. example: '"Univer"',
  14880. require: 1,
  14881. repeat: 0
  14882. }
  14883. ]
  14884. },
  14885. {
  14886. functionName: D.VALUE,
  14887. functionType: t.Text,
  14888. description: "formula.functionList.VALUE.description",
  14889. abstract: "formula.functionList.VALUE.abstract",
  14890. functionParameter: [
  14891. {
  14892. name: "formula.functionList.VALUE.functionParameter.text.name",
  14893. detail: "formula.functionList.VALUE.functionParameter.text.detail",
  14894. example: '"123"',
  14895. require: 1,
  14896. repeat: 0
  14897. }
  14898. ]
  14899. },
  14900. {
  14901. functionName: D.VALUETOTEXT,
  14902. functionType: t.Text,
  14903. description: "formula.functionList.VALUETOTEXT.description",
  14904. abstract: "formula.functionList.VALUETOTEXT.abstract",
  14905. functionParameter: [
  14906. {
  14907. name: "formula.functionList.VALUETOTEXT.functionParameter.value.name",
  14908. detail: "formula.functionList.VALUETOTEXT.functionParameter.value.detail",
  14909. example: '"Univer"',
  14910. require: 1,
  14911. repeat: 0
  14912. },
  14913. {
  14914. name: "formula.functionList.VALUETOTEXT.functionParameter.format.name",
  14915. detail: "formula.functionList.VALUETOTEXT.functionParameter.format.detail",
  14916. example: "1",
  14917. require: 0,
  14918. repeat: 0
  14919. }
  14920. ]
  14921. },
  14922. {
  14923. functionName: D.CALL,
  14924. functionType: t.Text,
  14925. description: "formula.functionList.CALL.description",
  14926. abstract: "formula.functionList.CALL.abstract",
  14927. functionParameter: [
  14928. {
  14929. name: "formula.functionList.CALL.functionParameter.number1.name",
  14930. detail: "formula.functionList.CALL.functionParameter.number1.detail",
  14931. example: "A1:A20",
  14932. require: 1,
  14933. repeat: 0
  14934. },
  14935. {
  14936. name: "formula.functionList.CALL.functionParameter.number2.name",
  14937. detail: "formula.functionList.CALL.functionParameter.number2.detail",
  14938. example: "A1:A20",
  14939. require: 1,
  14940. repeat: 0
  14941. }
  14942. ]
  14943. },
  14944. {
  14945. functionName: D.EUROCONVERT,
  14946. functionType: t.Text,
  14947. description: "formula.functionList.EUROCONVERT.description",
  14948. abstract: "formula.functionList.EUROCONVERT.abstract",
  14949. functionParameter: [
  14950. {
  14951. name: "formula.functionList.EUROCONVERT.functionParameter.number1.name",
  14952. detail: "formula.functionList.EUROCONVERT.functionParameter.number1.detail",
  14953. example: "A1:A20",
  14954. require: 1,
  14955. repeat: 0
  14956. },
  14957. {
  14958. name: "formula.functionList.EUROCONVERT.functionParameter.number2.name",
  14959. detail: "formula.functionList.EUROCONVERT.functionParameter.number2.detail",
  14960. example: "A1:A20",
  14961. require: 1,
  14962. repeat: 0
  14963. }
  14964. ]
  14965. },
  14966. {
  14967. functionName: D.REGISTER_ID,
  14968. functionType: t.Text,
  14969. description: "formula.functionList.REGISTER_ID.description",
  14970. abstract: "formula.functionList.REGISTER_ID.abstract",
  14971. functionParameter: [
  14972. {
  14973. name: "formula.functionList.REGISTER_ID.functionParameter.number1.name",
  14974. detail: "formula.functionList.REGISTER_ID.functionParameter.number1.detail",
  14975. example: "A1:A20",
  14976. require: 1,
  14977. repeat: 0
  14978. },
  14979. {
  14980. name: "formula.functionList.REGISTER_ID.functionParameter.number2.name",
  14981. detail: "formula.functionList.REGISTER_ID.functionParameter.number2.detail",
  14982. example: "A1:A20",
  14983. require: 1,
  14984. repeat: 0
  14985. }
  14986. ]
  14987. }
  14988. ], Ji = [], er = [
  14989. {
  14990. functionName: ft.ENCODEURL,
  14991. functionType: t.Web,
  14992. description: "formula.functionList.ENCODEURL.description",
  14993. abstract: "formula.functionList.ENCODEURL.abstract",
  14994. functionParameter: [
  14995. {
  14996. name: "formula.functionList.ENCODEURL.functionParameter.text.name",
  14997. detail: "formula.functionList.ENCODEURL.functionParameter.text.detail",
  14998. example: '"https://univer.ai/"',
  14999. require: 1,
  15000. repeat: 0
  15001. }
  15002. ]
  15003. },
  15004. {
  15005. functionName: ft.FILTERXML,
  15006. functionType: t.Web,
  15007. description: "formula.functionList.FILTERXML.description",
  15008. abstract: "formula.functionList.FILTERXML.abstract",
  15009. functionParameter: [
  15010. {
  15011. name: "formula.functionList.FILTERXML.functionParameter.number1.name",
  15012. detail: "formula.functionList.FILTERXML.functionParameter.number1.detail",
  15013. example: "A1:A20",
  15014. require: 1,
  15015. repeat: 0
  15016. },
  15017. {
  15018. name: "formula.functionList.FILTERXML.functionParameter.number2.name",
  15019. detail: "formula.functionList.FILTERXML.functionParameter.number2.detail",
  15020. example: "A1:A20",
  15021. require: 1,
  15022. repeat: 0
  15023. }
  15024. ]
  15025. },
  15026. {
  15027. functionName: ft.WEBSERVICE,
  15028. functionType: t.Web,
  15029. description: "formula.functionList.WEBSERVICE.description",
  15030. abstract: "formula.functionList.WEBSERVICE.abstract",
  15031. functionParameter: [
  15032. {
  15033. name: "formula.functionList.WEBSERVICE.functionParameter.number1.name",
  15034. detail: "formula.functionList.WEBSERVICE.functionParameter.number1.detail",
  15035. example: "A1:A20",
  15036. require: 1,
  15037. repeat: 0
  15038. },
  15039. {
  15040. name: "formula.functionList.WEBSERVICE.functionParameter.number2.name",
  15041. detail: "formula.functionList.WEBSERVICE.functionParameter.number2.detail",
  15042. example: "A1:A20",
  15043. require: 1,
  15044. repeat: 0
  15045. }
  15046. ]
  15047. }
  15048. ], tr = [
  15049. ...Ki,
  15050. ...Xi,
  15051. ...ji,
  15052. ...zi,
  15053. ...$i,
  15054. ...wi,
  15055. ...Zi,
  15056. ...ki,
  15057. ...Qi,
  15058. ...Wi,
  15059. ...Yi,
  15060. ...Hi,
  15061. ...er,
  15062. ...Gi,
  15063. ...Ji
  15064. ];
  15065. function ar(n, e) {
  15066. let a = "";
  15067. return n.aliasFunctionName ? (a = e.t(n.aliasFunctionName), a === n.aliasFunctionName && (a = n.functionName)) : a = n.functionName, a;
  15068. }
  15069. var nr = Object.defineProperty, ir = Object.getOwnPropertyDescriptor, rr = (n, e, a, i) => {
  15070. for (var r = i > 1 ? void 0 : i ? ir(e, a) : e, o = n.length - 1, u; o >= 0; o--)
  15071. (u = n[o]) && (r = (i ? u(e, a, r) : u(r)) || r);
  15072. return i && r && nr(e, a, r), r;
  15073. }, Lt = (n, e) => (a, i) => e(a, i, n);
  15074. const Ut = Mt("formula.description-service");
  15075. let Ct = class {
  15076. constructor(n, e, a) {
  15077. X(this, "_descriptions", []);
  15078. this._functionService = n, this._localeService = e, this._configService = a, this._initialize();
  15079. }
  15080. dispose() {
  15081. this._localeService.localeChanged$.complete();
  15082. }
  15083. getDescriptions() {
  15084. return this._functionService.getDescriptions();
  15085. }
  15086. hasFunction(n) {
  15087. return this._functionService.getDescriptions().get(n.toLocaleUpperCase()) !== void 0;
  15088. }
  15089. getFunctionInfo(n) {
  15090. return this._functionService.getDescriptions().get(n.toLocaleUpperCase());
  15091. }
  15092. getSearchListByName(n) {
  15093. const e = [], a = this._functionService.getDescriptions(), i = n.toLocaleUpperCase().trim();
  15094. return a.forEach((r) => {
  15095. const { functionName: o, abstract: u, functionType: m } = r;
  15096. o.toLocaleUpperCase().indexOf(i) > -1 && m !== t.DefinedName && e.push({ name: o, desc: u });
  15097. }), e;
  15098. }
  15099. getSearchListByNameFirstLetter(n) {
  15100. const e = [], a = this._functionService.getDescriptions(), i = n.toLocaleUpperCase().trim();
  15101. return a.forEach((r) => {
  15102. const { functionName: o, abstract: u } = r;
  15103. o.toLocaleUpperCase().indexOf(i) === 0 && e.push({ name: o, desc: u });
  15104. }), e;
  15105. }
  15106. getSearchListByType(n) {
  15107. const e = [];
  15108. return this._functionService.getDescriptions().forEach((i) => {
  15109. const { functionName: r, functionType: o, abstract: u } = i;
  15110. (o === n || n === -1) && o !== t.DefinedName && e.push({ name: r, desc: u });
  15111. }), e;
  15112. }
  15113. registerDescriptions(n) {
  15114. return this._descriptions = this._descriptions.concat(n), this._registerDescriptions(), se(() => {
  15115. const e = n.map((a) => a.functionName);
  15116. this.unregisterDescriptions(e);
  15117. });
  15118. }
  15119. unregisterDescriptions(n) {
  15120. this._descriptions = this._descriptions.filter((e) => !n.includes(e.functionName)), this._functionService.unregisterDescriptions(...n);
  15121. }
  15122. hasDescription(n) {
  15123. return this._descriptions.some((e) => e.functionName === n);
  15124. }
  15125. hasDefinedNameDescription(n) {
  15126. return this._descriptions.some((e) => e.functionName === n && e.functionType === t.DefinedName);
  15127. }
  15128. isFormulaDefinedName(n) {
  15129. const e = this._descriptions.filter((i) => i.functionName === n && i.functionType === t.DefinedName);
  15130. if (e.length === 0)
  15131. return !1;
  15132. const a = e[0].description;
  15133. return !In(a);
  15134. }
  15135. _initialize() {
  15136. this._localeService.localeChanged$.subscribe(() => {
  15137. this._registerDescriptions();
  15138. }), this._initDescription(), this._registerDescriptions();
  15139. }
  15140. _initDescription() {
  15141. var i;
  15142. const n = [
  15143. ...Nn,
  15144. ...Rn,
  15145. ...An,
  15146. ...Sn,
  15147. ...Cn,
  15148. ...Dn,
  15149. ...bn,
  15150. ...On,
  15151. ...Mn,
  15152. ...xn,
  15153. ..._n,
  15154. ...yn,
  15155. ...qn,
  15156. ...gn,
  15157. ...hn,
  15158. ...Un
  15159. ].map((r) => r[1]), e = tr.filter((r) => n.includes(r.functionName)), a = this._configService.getConfig(ot);
  15160. this._descriptions = e.concat((i = a == null ? void 0 : a.description) != null ? i : []);
  15161. }
  15162. _registerDescriptions() {
  15163. const n = this._localeService, e = this._descriptions.map((a) => ({
  15164. functionName: ar(a, n),
  15165. functionType: a.functionType,
  15166. description: n.t(a.description),
  15167. abstract: n.t(a.abstract),
  15168. functionParameter: a.functionParameter.map((i) => ({
  15169. name: n.t(i.name),
  15170. detail: n.t(i.detail),
  15171. example: i.example,
  15172. require: i.require,
  15173. repeat: i.repeat
  15174. }))
  15175. }));
  15176. this._functionService.registerDescriptions(...e);
  15177. }
  15178. };
  15179. Ct = rr([
  15180. Lt(0, ht),
  15181. Lt(1, W(Ot)),
  15182. Lt(2, _e)
  15183. ], Ct);
  15184. var or = Object.defineProperty, ur = Object.getOwnPropertyDescriptor, mr = (n, e, a, i) => {
  15185. for (var r = i > 1 ? void 0 : i ? ur(e, a) : e, o = n.length - 1, u; o >= 0; o--)
  15186. (u = n[o]) && (r = (i ? u(e, a, r) : u(r)) || r);
  15187. return i && r && or(e, a, r), r;
  15188. }, Fe = (n, e) => (a, i) => e(a, i, n);
  15189. function ua(n, e, a, i) {
  15190. const r = n.sequenceNodesBuilder(e);
  15191. if (r == null)
  15192. return e;
  15193. const o = [];
  15194. for (let u = 0, m = r.length; u < m; u++) {
  15195. const f = r[u];
  15196. if (typeof f == "string" || f.nodeType !== J.REFERENCE)
  15197. continue;
  15198. const { token: s } = f, p = pe(s), { sheetName: d, unitId: L } = p;
  15199. let E = p.range;
  15200. E.startAbsoluteRefType === we.ALL && E.endAbsoluteRefType === we.ALL || (E = Et(E, a, i), o.push({
  15201. unitId: L,
  15202. sheetName: d,
  15203. range: E
  15204. }));
  15205. }
  15206. return o.map((u) => `${u.unitId}!${u.sheetName}!${u.range.startRow}!${u.range.endRow}!${u.range.startColumn}!${u.range.endColumn}`).join("|");
  15207. }
  15208. let Dt = class extends te {
  15209. constructor(n, e, a, i) {
  15210. super(), this._refRangeService = n, this._lexerTreeBuilder = e, this._univerInstanceService = a, this._injector = i;
  15211. }
  15212. transformFormulaByEffectCommand(n, e, a, i) {
  15213. const r = this._lexerTreeBuilder.sequenceNodesBuilder(a), o = this._univerInstanceService.getCurrentUnitForType(ee.UNIVER_SHEET), u = o.getActiveSheet(), m = o.getUnitId(), f = u.getSheetId(), s = r == null ? void 0 : r.map((p) => {
  15214. if (typeof p == "object" && p.nodeType === J.REFERENCE) {
  15215. const d = pe(p.token), { range: L, unitId: E, sheetName: I } = d, S = this._univerInstanceService.getUnit(E || n), c = I ? S == null ? void 0 : S.getSheetBySheetName(I) : S == null ? void 0 : S.getSheetBySheetId(e);
  15216. if (!c)
  15217. throw new Error("Sheet not found");
  15218. const N = S.getUnitId(), R = c.getSheetId();
  15219. if (N !== m || R !== f)
  15220. return p;
  15221. const P = Gt(L, i);
  15222. let O = "";
  15223. if (P) {
  15224. const M = P.startColumn - L.startColumn, F = P.startRow - L.startRow, U = Et(L, M, F);
  15225. E && I ? O = Jt(E, I, U) : I ? O = ea(I, U) : O = ta(U);
  15226. } else
  15227. O = j.REF;
  15228. return {
  15229. ...p,
  15230. token: O
  15231. };
  15232. } else
  15233. return p;
  15234. });
  15235. return s ? `=${Xe(s)}` : "";
  15236. }
  15237. registerFormula(n, e, a, i) {
  15238. const r = /* @__PURE__ */ new Map(), o = this._lexerTreeBuilder.sequenceNodesBuilder(a), u = new Ye(), m = (f) => {
  15239. const s = this._univerInstanceService.getCurrentUnitForType(ee.UNIVER_SHEET), p = s.getActiveSheet(), d = s.getUnitId(), L = p.getSheetId(), E = o == null ? void 0 : o.map((S) => {
  15240. if (typeof S == "object" && S.nodeType === J.REFERENCE) {
  15241. const c = r.get(S.token);
  15242. if (c.unitId !== d || c.subUnitId !== L)
  15243. return S;
  15244. const N = Gt(c.range, f);
  15245. let R = "";
  15246. if (N) {
  15247. const P = N.startColumn - c.range.startColumn, O = N.startRow - c.range.startRow, M = Et(c.range, P, O);
  15248. c.unitId && c.sheetName ? R = Jt(c.unitId, c.sheetName, M) : c.sheetName ? R = ea(c.sheetName, M) : R = ta(M);
  15249. } else
  15250. R = j.REF;
  15251. return {
  15252. ...S,
  15253. token: R
  15254. };
  15255. } else
  15256. return S;
  15257. }), I = E && Xe(E);
  15258. return i(`=${I}`);
  15259. };
  15260. return o == null || o.forEach((f) => {
  15261. if (typeof f == "object" && f.nodeType === J.REFERENCE) {
  15262. const s = pe(f.token), { range: p, unitId: d, sheetName: L } = s, E = this._univerInstanceService.getUnit(d || n), I = L ? E == null ? void 0 : E.getSheetBySheetName(L) : E == null ? void 0 : E.getSheetBySheetId(e);
  15263. if (!I)
  15264. return;
  15265. const S = E.getUnitId(), c = I.getSheetId(), N = {
  15266. unitId: S,
  15267. subUnitId: c,
  15268. range: p,
  15269. sheetName: L
  15270. };
  15271. r.set(f.token, N), u.add(this._refRangeService.registerRefRange(p, m, S, c));
  15272. }
  15273. }), u;
  15274. }
  15275. _getFormulaDependcy(n, e, a, i) {
  15276. const r = be(a) ? this._lexerTreeBuilder.sequenceNodesBuilder(a) : null, o = [];
  15277. return r == null || r.forEach((u) => {
  15278. if (typeof u == "object" && u.nodeType === J.REFERENCE) {
  15279. const m = pe(u.token), { range: f, unitId: s, sheetName: p } = m;
  15280. if (f.startAbsoluteRefType === we.ALL && f.endAbsoluteRefType === we.ALL)
  15281. return;
  15282. const d = this._univerInstanceService.getUnit(s || n), L = p ? d == null ? void 0 : d.getSheetBySheetName(p) : d == null ? void 0 : d.getSheetBySheetId(e);
  15283. if (!L)
  15284. return;
  15285. const E = d.getUnitId(), I = L.getSheetId(), S = i[0].startRow, c = i[0].startColumn, N = f.startRow, R = f.startColumn, P = i.map((O) => ({
  15286. startRow: O.startRow - S + N,
  15287. endRow: O.endRow - S + N,
  15288. startColumn: O.startColumn - c + R,
  15289. endColumn: O.endColumn - c + R
  15290. }));
  15291. o.push({
  15292. unitId: E,
  15293. subUnitId: I,
  15294. ranges: P
  15295. });
  15296. }
  15297. }), o;
  15298. }
  15299. // eslint-disable-next-line max-lines-per-function
  15300. registerRangeFormula(n, e, a, i, r) {
  15301. const o = new Ye(), u = i.map((f) => this._getFormulaDependcy(n, e, f, a)), m = (f) => {
  15302. const s = a[0].startRow, p = a[0].startColumn, d = [{ unitId: n, subUnitId: e, ranges: a }, ...u.flat()], L = [], E = cn(this._injector, f);
  15303. for (const { unitId: I, subUnitId: S, ranges: c } of d)
  15304. if (I === E.unitId && S === E.subUnitId) {
  15305. const N = [], R = c[0].startRow, P = c[0].startColumn, O = R - s, M = P - p;
  15306. for (const F of E.ranges) {
  15307. const U = c.map((g) => Ve(F, g)).filter(Boolean);
  15308. U.length > 0 && N.push(...U);
  15309. }
  15310. N.length > 0 && L.push(
  15311. N.map((F) => ({
  15312. startRow: F.startRow - O,
  15313. endRow: F.endRow - O,
  15314. startColumn: F.startColumn - M,
  15315. endColumn: F.endColumn - M
  15316. }))
  15317. );
  15318. }
  15319. if (L.length > 0) {
  15320. const I = De.splitIntoGrid([...L.flat()]), S = De.subtractMulti(a, I);
  15321. S.sort((O, M) => O.startRow - M.startRow || O.startColumn - M.startColumn);
  15322. const c = /* @__PURE__ */ new Map();
  15323. for (let O = 0; O < I.length; O++) {
  15324. const M = I[O], F = M.startRow, U = M.startColumn, g = F - s, x = U - p, h = ln(M, f).sort((Q, oe) => Q.startRow - oe.startRow || Q.startColumn - oe.startColumn);
  15325. if (!h.length)
  15326. continue;
  15327. const V = h[0].startRow, k = h[0].startColumn, b = V - s, Le = k - p, ae = [];
  15328. for (let Q = 0; Q < i.length; Q++) {
  15329. const oe = i[Q], z = be(oe), ye = z ? this._lexerTreeBuilder.moveFormulaRefOffset(oe, x, g) : oe, ue = z ? this.transformFormulaByEffectCommand(n, e, ye, f) : ye, Pe = ua(this._lexerTreeBuilder, ue, -Le, -b);
  15330. ae.push({
  15331. newFormula: ue,
  15332. orginFormula: Pe
  15333. });
  15334. }
  15335. const re = {
  15336. formulas: ae,
  15337. ranges: h,
  15338. key: ae.map((Q) => Q.orginFormula).join("_")
  15339. };
  15340. c.has(re.key) ? c.get(re.key).push(re) : c.set(re.key, [re]);
  15341. }
  15342. const N = i.map((O) => ua(this._lexerTreeBuilder, O, 0, 0)).join("_");
  15343. if (S.length > 0) {
  15344. const O = S[0].startRow, M = S[0].startColumn, F = [];
  15345. for (let g = 0; g < i.length; g++) {
  15346. const x = i[g];
  15347. F.push({
  15348. newFormula: be(x) ? this._lexerTreeBuilder.moveFormulaRefOffset(x, M - p, O - s) : x,
  15349. orginFormula: x
  15350. });
  15351. }
  15352. const U = {
  15353. formulas: F,
  15354. ranges: S,
  15355. key: N
  15356. };
  15357. c.has(U.key) ? c.get(U.key).push(U) : c.set(U.key, [U]);
  15358. }
  15359. const R = [], P = Array.from(c.keys());
  15360. for (let O = P.length - 1; O >= 0; O--) {
  15361. const M = P[O], F = c.get(M).sort((x, h) => x.ranges[0].startRow - h.ranges[0].startRow || x.ranges[0].startColumn - h.ranges[0].startColumn), U = [];
  15362. for (let x = 0; x < F[0].formulas.length; x++)
  15363. U.push(F[0].formulas[x].newFormula);
  15364. const g = De.mergeRanges(F.map((x) => x.ranges).flat());
  15365. g.sort((x, h) => x.startRow - h.startRow || x.startColumn - h.startColumn), R.push({
  15366. formulas: U,
  15367. ranges: g
  15368. });
  15369. }
  15370. return r(R);
  15371. }
  15372. return {
  15373. undos: [],
  15374. redos: []
  15375. };
  15376. };
  15377. return a.forEach((f) => {
  15378. const s = this._refRangeService.registerRefRange(f, m, n, e);
  15379. o.add(s);
  15380. }), [...u.flat()].forEach(({ unitId: f, subUnitId: s, ranges: p }) => {
  15381. p.forEach((d) => {
  15382. const L = this._refRangeService.registerRefRange(d, m, f, s);
  15383. o.add(L);
  15384. });
  15385. }), o;
  15386. }
  15387. };
  15388. Dt = mr([
  15389. Fe(0, W(fn)),
  15390. Fe(1, W(yt)),
  15391. Fe(2, xe),
  15392. Fe(3, W(at))
  15393. ], Dt);
  15394. var fr = Object.defineProperty, cr = Object.getOwnPropertyDescriptor, lr = (n, e, a, i) => {
  15395. for (var r = i > 1 ? void 0 : i ? cr(e, a) : e, o = n.length - 1, u; o >= 0; o--)
  15396. (u = n[o]) && (r = (i ? u(e, a, r) : u(r)) || r);
  15397. return i && r && fr(e, a, r), r;
  15398. }, sr = (n, e) => (a, i) => e(a, i, n);
  15399. const Ft = "sheets-formula.remote-register-function.service", va = Mt(Ft);
  15400. let ke = class {
  15401. constructor(n) {
  15402. this._functionService = n;
  15403. }
  15404. async registerFunctions(n) {
  15405. const e = n.map(([a, i]) => pr(a, i));
  15406. this._functionService.registerExecutors(...e);
  15407. }
  15408. async registerAsyncFunctions(n) {
  15409. const e = n.map(([a, i]) => dr(a, i));
  15410. this._functionService.registerExecutors(...e);
  15411. }
  15412. async unregisterFunctions(n) {
  15413. this._functionService.unregisterDescriptions(...n);
  15414. }
  15415. };
  15416. ke = lr([
  15417. sr(0, ht)
  15418. ], ke);
  15419. function pr(n, e) {
  15420. const a = new At(e), i = new Function(`return ${n}`)();
  15421. return a.calculateCustom = i, a;
  15422. }
  15423. function dr(n, e) {
  15424. const a = new xa(e), i = new Function(`return ${n}`)();
  15425. return a.calculateCustom = i, a;
  15426. }
  15427. var Lr = Object.defineProperty, Pr = Object.getOwnPropertyDescriptor, Tr = (n, e, a, i) => {
  15428. for (var r = i > 1 ? void 0 : i ? Pr(e, a) : e, o = n.length - 1, u; o >= 0; o--)
  15429. (u = n[o]) && (r = (i ? u(e, a, r) : u(r)) || r);
  15430. return i && r && Lr(e, a, r), r;
  15431. }, Be = (n, e) => (a, i) => e(a, i, n);
  15432. const Er = Mt(
  15433. "sheets-formula.register-function-service"
  15434. );
  15435. let bt = class extends te {
  15436. constructor(n, e, a, i) {
  15437. super(), this._localeService = n, this._descriptionService = e, this._functionService = a, this._remoteRegisterFunctionService = i;
  15438. }
  15439. registerFunction(n) {
  15440. return this._registerSingleFunction(n);
  15441. }
  15442. registerAsyncFunction(n) {
  15443. return this._registerSingleFunction({ ...n, async: !0 });
  15444. }
  15445. registerFunctions(n) {
  15446. const { locales: e, description: a, calculate: i } = n;
  15447. e && this._localeService.load(e);
  15448. const r = new Ye();
  15449. if (a)
  15450. r.add(this._descriptionService.registerDescriptions(a));
  15451. else {
  15452. const o = i.map(([u, m, f]) => ({
  15453. functionName: m,
  15454. functionType: t.User,
  15455. description: "",
  15456. abstract: f || "",
  15457. functionParameter: []
  15458. }));
  15459. r.add(this._functionService.registerDescriptions(...o));
  15460. }
  15461. return r.add(this._registerLocalExecutors(i)), this._remoteRegisterFunctionService && r.add(this._registerRemoteExecutors(i)), r;
  15462. }
  15463. _registerSingleFunction(n) {
  15464. const { name: e, func: a, description: i, locales: r, async: o = !1 } = n, u = new Ye();
  15465. if (r && this._localeService.load(r), typeof i == "string") {
  15466. const f = {
  15467. functionName: e,
  15468. functionType: t.User,
  15469. description: i,
  15470. abstract: i || "",
  15471. functionParameter: []
  15472. };
  15473. u.add(this._descriptionService.registerDescriptions([f]));
  15474. } else
  15475. u.add(this._descriptionService.registerDescriptions([i]));
  15476. const m = o ? new xa(e) : new At(e);
  15477. return m.calculateCustom = a, this._functionService.registerExecutors(m), u.add(se(() => this._functionService.unregisterExecutors(e))), this._remoteRegisterFunctionService && (this._remoteRegisterFunctionService.registerAsyncFunctions([[a.toString(), e]]), u.add(
  15478. se(() => this._remoteRegisterFunctionService.unregisterFunctions([e]))
  15479. )), u;
  15480. }
  15481. _registerLocalExecutors(n) {
  15482. const e = n.map(([i, r]) => r), a = n.map(([i, r]) => {
  15483. const o = new At(r);
  15484. return o.calculateCustom = i, o;
  15485. });
  15486. return this._functionService.registerExecutors(...a), se(() => this._functionService.unregisterExecutors(...e));
  15487. }
  15488. _registerRemoteExecutors(n) {
  15489. const e = [], a = n.map(([i, r]) => (e.push(r), [i.toString(), r]));
  15490. return this._remoteRegisterFunctionService.registerFunctions(a), se(() => this._remoteRegisterFunctionService.unregisterFunctions(e));
  15491. }
  15492. };
  15493. bt = Tr([
  15494. Be(0, W(Ot)),
  15495. Be(1, W(Ut)),
  15496. Be(2, ht),
  15497. Be(3, Wa(va))
  15498. ], bt);
  15499. const Ir = "SHEETS_FORMULA_PLUGIN";
  15500. var Nr = Object.defineProperty, Rr = Object.getOwnPropertyDescriptor, Ar = (n, e, a, i) => {
  15501. for (var r = i > 1 ? void 0 : i ? Rr(e, a) : e, o = n.length - 1, u; o >= 0; o--)
  15502. (u = n[o]) && (r = (i ? u(e, a, r) : u(r)) || r);
  15503. return i && r && Nr(e, a, r), r;
  15504. }, Pt = (n, e) => (a, i) => e(a, i, n);
  15505. let $e = class extends te {
  15506. constructor(n, e, a) {
  15507. super(), this._activeDirtyManagerService = n, this._univerInstanceService = e, this._formulaDataModel = a, this._initialize();
  15508. }
  15509. _initialize() {
  15510. this._initialConversion();
  15511. }
  15512. _initialConversion() {
  15513. this._activeDirtyManagerService.register(ie.id, {
  15514. commandId: ie.id,
  15515. getDirtyData: (n) => {
  15516. const e = n.params;
  15517. return e.trigger === _t.id ? {} : {
  15518. dirtyRanges: this._getSetRangeValuesMutationDirtyRange(e)
  15519. };
  15520. }
  15521. }), this._initialMove(), this._initialRowAndColumn(), this._initialSheet(), this._initialDefinedName();
  15522. }
  15523. _initialMove() {
  15524. this._activeDirtyManagerService.register(Ht.id, {
  15525. commandId: Ht.id,
  15526. getDirtyData: (n) => {
  15527. const e = n.params;
  15528. return {
  15529. dirtyRanges: this._getMoveRangeMutationDirtyRange(e),
  15530. clearDependencyTreeCache: {
  15531. [e.unitId]: {
  15532. [e.to.subUnitId]: "1",
  15533. [e.from.subUnitId]: "1"
  15534. }
  15535. }
  15536. };
  15537. }
  15538. }), this._activeDirtyManagerService.register(Yt.id, {
  15539. commandId: Yt.id,
  15540. getDirtyData: (n) => {
  15541. const e = n.params;
  15542. return {
  15543. dirtyRanges: this._getMoveRowsMutationDirtyRange(e),
  15544. clearDependencyTreeCache: {
  15545. [e.unitId]: {
  15546. [e.subUnitId]: "1"
  15547. }
  15548. }
  15549. };
  15550. }
  15551. }), this._activeDirtyManagerService.register(wt.id, {
  15552. commandId: wt.id,
  15553. getDirtyData: (n) => {
  15554. const e = n.params;
  15555. return {
  15556. dirtyRanges: this._getMoveRowsMutationDirtyRange(e),
  15557. clearDependencyTreeCache: {
  15558. [e.unitId]: {
  15559. [e.subUnitId]: "1"
  15560. }
  15561. }
  15562. };
  15563. }
  15564. }), this._activeDirtyManagerService.register(Xt.id, {
  15565. commandId: Xt.id,
  15566. getDirtyData: (n) => {
  15567. const e = n.params;
  15568. return {
  15569. dirtyRanges: this._getReorderRangeMutationDirtyRange(e),
  15570. clearDependencyTreeCache: {
  15571. [e.unitId]: {
  15572. [e.subUnitId]: "1"
  15573. }
  15574. }
  15575. };
  15576. }
  15577. });
  15578. }
  15579. _initialRowAndColumn() {
  15580. this._activeDirtyManagerService.register(Wt.id, {
  15581. commandId: Wt.id,
  15582. getDirtyData: (n) => {
  15583. const e = n.params;
  15584. return {
  15585. dirtyRanges: this._getRemoveRowOrColumnMutation(e, !0),
  15586. clearDependencyTreeCache: {
  15587. [e.unitId]: {
  15588. [e.subUnitId]: "1"
  15589. }
  15590. }
  15591. };
  15592. }
  15593. }), this._activeDirtyManagerService.register(Kt.id, {
  15594. commandId: Kt.id,
  15595. getDirtyData: (n) => {
  15596. const e = n.params;
  15597. return {
  15598. dirtyRanges: this._getRemoveRowOrColumnMutation(e, !1),
  15599. clearDependencyTreeCache: {
  15600. [e.unitId]: {
  15601. [e.subUnitId]: "1"
  15602. }
  15603. }
  15604. };
  15605. }
  15606. }), this._activeDirtyManagerService.register(Qt.id, {
  15607. commandId: Qt.id,
  15608. getDirtyData: (n) => {
  15609. const e = n.params;
  15610. return {
  15611. clearDependencyTreeCache: {
  15612. [e.unitId]: {
  15613. [e.subUnitId]: "1"
  15614. }
  15615. }
  15616. };
  15617. }
  15618. }), this._activeDirtyManagerService.register(kt.id, {
  15619. commandId: kt.id,
  15620. getDirtyData: (n) => {
  15621. const e = n.params;
  15622. return {
  15623. clearDependencyTreeCache: {
  15624. [e.unitId]: {
  15625. [e.subUnitId]: "1"
  15626. }
  15627. }
  15628. };
  15629. }
  15630. });
  15631. }
  15632. _initialSheet() {
  15633. this._activeDirtyManagerService.register(It.id, {
  15634. commandId: It.id,
  15635. getDirtyData: (n) => {
  15636. const e = n.params;
  15637. return {
  15638. dirtyNameMap: this._getRemoveSheetMutation(e),
  15639. clearDependencyTreeCache: {
  15640. [e.unitId]: {
  15641. [e.subUnitId]: "1"
  15642. }
  15643. }
  15644. };
  15645. }
  15646. }), this._activeDirtyManagerService.register(Nt.id, {
  15647. commandId: Nt.id,
  15648. getDirtyData: (n) => {
  15649. const e = n.params;
  15650. return {
  15651. dirtyNameMap: this._getInsertSheetMutation(e)
  15652. };
  15653. }
  15654. });
  15655. }
  15656. _initialDefinedName() {
  15657. this._activeDirtyManagerService.register(Me.id, {
  15658. commandId: Me.id,
  15659. getDirtyData: (n) => {
  15660. const e = n.params;
  15661. return { dirtyDefinedNameMap: this._getDefinedNameMutation(e) };
  15662. }
  15663. }), this._activeDirtyManagerService.register(St.id, {
  15664. commandId: St.id,
  15665. getDirtyData: (n) => {
  15666. const e = n.params;
  15667. return { dirtyDefinedNameMap: this._getDefinedNameMutation(e) };
  15668. }
  15669. });
  15670. }
  15671. _getDefinedNameMutation(n) {
  15672. const { unitId: e, name: a, formulaOrRefString: i } = n, r = {};
  15673. return n == null ? {} : (r[e] = {}, r[e][a] = i, r);
  15674. }
  15675. _getSetRangeValuesMutationDirtyRange(n) {
  15676. const { subUnitId: e, unitId: a, cellValue: i } = n, r = [];
  15677. return i == null || (r.push(...this._getDirtyRangesByCellValue(a, e, i)), r.push(...this._getDirtyRangesForArrayFormula(a, e, i))), r;
  15678. }
  15679. _getMoveRangeMutationDirtyRange(n) {
  15680. const { unitId: e, from: a, to: i } = n, r = [];
  15681. return r.push(...this._getDirtyRangesByCellValue(e, a.subUnitId, a.value)), r.push(...this._getDirtyRangesByCellValue(e, i.subUnitId, i.value)), r.push(...this._getDirtyRangesForArrayFormula(e, i.subUnitId, i.value)), r;
  15682. }
  15683. _getMoveRowsMutationDirtyRange(n) {
  15684. const { subUnitId: e, unitId: a, sourceRange: i, targetRange: r } = n, o = [], u = this._rangeToMatrix(i).getData(), m = this._rangeToMatrix(r).getData();
  15685. return o.push(...this._getDirtyRangesByCellValue(a, e, u)), o.push(...this._getDirtyRangesByCellValue(a, e, m)), o.push(...this._getDirtyRangesForArrayFormula(a, e, m)), o;
  15686. }
  15687. _getReorderRangeMutationDirtyRange(n) {
  15688. const { unitId: e, subUnitId: a, range: i } = n, r = this._rangeToMatrix(i).getData(), o = [];
  15689. return o.push(...this._getDirtyRangesByCellValue(e, a, r)), o.push(...this._getDirtyRangesForArrayFormula(e, a, r)), o;
  15690. }
  15691. _getDeleteRangeMutationDirtyRange(n) {
  15692. const { subUnitId: e, unitId: a, range: i, shiftDimension: r } = n, o = [], u = this._univerInstanceService.getUniverSheetInstance(a), m = u == null ? void 0 : u.getSheetBySheetId(e), f = (m == null ? void 0 : m.getLastRowWithContent()) || 0, s = (m == null ? void 0 : m.getLastColumnWithContent()) || 0, p = new w();
  15693. let d = null;
  15694. const { startRow: L, startColumn: E, endRow: I, endColumn: S } = i;
  15695. r === Bt.ROWS ? d = this._rangeToMatrix({
  15696. startRow: L,
  15697. startColumn: E,
  15698. endRow: f,
  15699. endColumn: S
  15700. }) : r === Bt.COLUMNS && (d = this._rangeToMatrix({
  15701. startRow: L,
  15702. startColumn: E,
  15703. endRow: I,
  15704. endColumn: s
  15705. })), d != null && p.merge(d);
  15706. const c = p.getData();
  15707. return o.push(...this._getDirtyRangesByCellValue(a, e, c)), o.push(...this._getDirtyRangesForArrayFormula(a, e, c)), o;
  15708. }
  15709. _getRemoveRowOrColumnMutation(n, e = !0) {
  15710. const { subUnitId: a, unitId: i, range: r } = n, o = [], u = this._univerInstanceService.getUniverSheetInstance(i), m = u == null ? void 0 : u.getSheetBySheetId(a), f = (m == null ? void 0 : m.getRowCount()) || 0, s = (m == null ? void 0 : m.getColumnCount()) || 0, p = new w();
  15711. let d = null;
  15712. const { startRow: L, endRow: E, startColumn: I, endColumn: S } = r;
  15713. e === !0 ? d = this._rangeToMatrix({
  15714. startRow: L,
  15715. startColumn: 0,
  15716. endRow: E,
  15717. endColumn: s - 1
  15718. }) : d = this._rangeToMatrix({
  15719. startRow: 0,
  15720. startColumn: I,
  15721. endRow: f,
  15722. endColumn: S
  15723. }), d != null && p.merge(d);
  15724. const c = p.getData();
  15725. return o.push(...this._getDirtyRangesByCellValue(i, a, c)), o.push(...this._getDirtyRangesForArrayFormula(i, a, c)), o;
  15726. }
  15727. _getRemoveSheetMutation(n) {
  15728. const e = {}, { subUnitId: a, unitId: i, subUnitName: r } = n;
  15729. return e[i] == null && (e[i] = {}), e[i][a] = r, e;
  15730. }
  15731. _getInsertSheetMutation(n) {
  15732. const e = {}, { sheet: a, unitId: i } = n;
  15733. return e[i] == null && (e[i] = {}), e[i][a.id] = a.name, e;
  15734. }
  15735. _rangeToMatrix(n) {
  15736. const e = new w(), { startRow: a, startColumn: i, endRow: r, endColumn: o } = n;
  15737. for (let u = a; u <= r; u++)
  15738. for (let m = i; m <= o; m++)
  15739. e.setValue(u, m, {});
  15740. return e;
  15741. }
  15742. _getDirtyRangesByCellValue(n, e, a) {
  15743. const i = [];
  15744. return a == null || new w(a).getDiscreteRanges().forEach((u) => {
  15745. i.push({ unitId: n, sheetId: e, range: u });
  15746. }), i;
  15747. }
  15748. /**
  15749. * The array formula is a range where only the top-left corner contains the formula value.
  15750. * All other positions, apart from the top-left corner, need to be marked as dirty.
  15751. */
  15752. _getDirtyRangesForArrayFormula(n, e, a) {
  15753. var u, m;
  15754. const i = [];
  15755. if (a == null)
  15756. return i;
  15757. const r = new w(a), o = this._formulaDataModel.getArrayFormulaRange();
  15758. if ((u = o == null ? void 0 : o[n]) != null && u[e]) {
  15759. const f = new w((m = o == null ? void 0 : o[n]) == null ? void 0 : m[e]);
  15760. r.forValue((s, p) => {
  15761. f.forValue((d, L, E) => {
  15762. if (E == null)
  15763. return !0;
  15764. const { startRow: I, startColumn: S, endRow: c, endColumn: N } = E;
  15765. s >= I && s <= c && p >= S && p <= N && i.push({
  15766. unitId: n,
  15767. sheetId: e,
  15768. range: {
  15769. startRow: I,
  15770. startColumn: S,
  15771. endRow: I,
  15772. endColumn: S
  15773. }
  15774. });
  15775. });
  15776. });
  15777. }
  15778. return i;
  15779. }
  15780. };
  15781. $e = Ar([
  15782. Pt(0, gt),
  15783. Pt(1, xe),
  15784. Pt(2, W(it))
  15785. ], $e);
  15786. var Sr = Object.defineProperty, Cr = Object.getOwnPropertyDescriptor, Dr = (n, e, a, i) => {
  15787. for (var r = i > 1 ? void 0 : i ? Cr(e, a) : e, o = n.length - 1, u; o >= 0; o--)
  15788. (u = n[o]) && (r = (i ? u(e, a, r) : u(r)) || r);
  15789. return i && r && Sr(e, a, r), r;
  15790. }, Tt = (n, e) => (a, i) => e(a, i, n);
  15791. let je = class extends te {
  15792. constructor(n, e, a) {
  15793. super(), this._commandService = n, this._sheetInterceptorService = e, this._formulaDataModel = a, this._initialize();
  15794. }
  15795. _initialize() {
  15796. this._commandExecutedListener(), this._initInterceptorCellContent();
  15797. }
  15798. _commandExecutedListener() {
  15799. this.disposeWithMe(
  15800. this._commandService.onCommandExecuted((n) => {
  15801. if (n.id !== Rt.id)
  15802. return;
  15803. const e = n.params;
  15804. if (e == null)
  15805. return;
  15806. const { arrayFormulaRange: a, arrayFormulaCellData: i } = e;
  15807. this._formulaDataModel.setArrayFormulaRange(a), this._formulaDataModel.setArrayFormulaCellData(i);
  15808. })
  15809. );
  15810. }
  15811. _initInterceptorCellContent() {
  15812. this.disposeWithMe(
  15813. this._sheetInterceptorService.intercept(sn.CELL_CONTENT, {
  15814. priority: 100,
  15815. effect: Ka.Value,
  15816. handler: (n, e, a) => {
  15817. var s, p, d;
  15818. const { unitId: i, subUnitId: r, row: o, col: u } = e, m = this._formulaDataModel.getArrayFormulaCellData(), f = (d = (p = (s = m == null ? void 0 : m[i]) == null ? void 0 : s[r]) == null ? void 0 : p[o]) == null ? void 0 : d[u];
  15819. return f == null ? a(n) : f.v == null && f.t == null ? a({
  15820. ...n,
  15821. v: 0,
  15822. // Default value for empty cell
  15823. t: vt.NUMBER
  15824. }) : (n == null ? void 0 : n.t) === vt.NUMBER && n.v !== void 0 && n.v !== null && Qa(n.v) ? a({
  15825. ...n,
  15826. v: Fn(Number(n.v))
  15827. }) : a({
  15828. ...n,
  15829. v: f.v,
  15830. t: f.t
  15831. });
  15832. }
  15833. })
  15834. );
  15835. }
  15836. };
  15837. je = Dr([
  15838. Tt(0, de),
  15839. Tt(1, W(xt)),
  15840. Tt(2, W(it))
  15841. ], je);
  15842. var br = Object.defineProperty, Or = Object.getOwnPropertyDescriptor, Mr = (n, e, a, i) => {
  15843. for (var r = i > 1 ? void 0 : i ? Or(e, a) : e, o = n.length - 1, u; o >= 0; o--)
  15844. (u = n[o]) && (r = (i ? u(e, a, r) : u(r)) || r);
  15845. return i && r && br(e, a, r), r;
  15846. }, ve = (n, e) => (a, i) => e(a, i, n);
  15847. let ze = class extends te {
  15848. constructor(e, a, i, r) {
  15849. super();
  15850. X(this, "_preUnitId", null);
  15851. this._descriptionService = e, this._definedNamesService = a, this._univerInstanceService = i, this._commandService = r, this._initialize();
  15852. }
  15853. _initialize() {
  15854. this._descriptionListener(), this._changeUnitListener(), this._changeSheetListener();
  15855. }
  15856. _descriptionListener() {
  15857. se(
  15858. this._definedNamesService.update$.subscribe(() => {
  15859. this._registerDescriptions();
  15860. })
  15861. );
  15862. }
  15863. _changeUnitListener() {
  15864. se(
  15865. this._univerInstanceService.getCurrentTypeOfUnit$(ee.UNIVER_SHEET).subscribe(() => {
  15866. this._unRegisterDescriptions(), this._registerDescriptions();
  15867. })
  15868. );
  15869. }
  15870. _changeSheetListener() {
  15871. this.disposeWithMe(
  15872. this._commandService.onCommandExecuted((e, a) => {
  15873. if (!(a != null && a.fromCollab)) {
  15874. if (e.id === pn.id)
  15875. this._unregisterDescriptionsForNotInSheetId(), this._registerDescriptions();
  15876. else if (e.id === Me.id) {
  15877. const i = e.params;
  15878. this._registerDescription(i);
  15879. } else if (e.id === St.id) {
  15880. const i = e.params;
  15881. this._unregisterDescription(i);
  15882. }
  15883. }
  15884. })
  15885. );
  15886. }
  15887. _registerDescription(e) {
  15888. const { unitId: a, sheetId: i } = this._getUnitIdAndSheetId();
  15889. if (a == null || i == null)
  15890. return;
  15891. const { name: r, comment: o, formulaOrRefString: u, localSheetId: m } = e;
  15892. !this._descriptionService.hasDescription(r) && (m == null || m === mt || m === i) && this._descriptionService.registerDescriptions([{
  15893. functionName: r,
  15894. description: u + (o || ""),
  15895. abstract: u,
  15896. functionType: t.DefinedName,
  15897. functionParameter: []
  15898. }]);
  15899. }
  15900. _unregisterDescription(e) {
  15901. const { name: a } = e;
  15902. this._descriptionService.unregisterDescriptions([a]);
  15903. }
  15904. _unRegisterDescriptions() {
  15905. if (this._preUnitId == null)
  15906. return;
  15907. const e = this._definedNamesService.getDefinedNameMap(this._preUnitId);
  15908. if (e == null)
  15909. return;
  15910. const a = [];
  15911. Array.from(Object.values(e)).forEach((i) => {
  15912. const { name: r } = i;
  15913. a.push(r);
  15914. }), this._descriptionService.unregisterDescriptions(a), this._preUnitId = null;
  15915. }
  15916. _getUnitIdAndSheetId() {
  15917. const e = this._univerInstanceService.getCurrentUnitForType(ee.UNIVER_SHEET);
  15918. if (e == null)
  15919. return {};
  15920. const a = e.getActiveSheet();
  15921. return a == null ? {} : {
  15922. unitId: e.getUnitId(),
  15923. sheetId: a.getSheetId()
  15924. };
  15925. }
  15926. _registerDescriptions() {
  15927. const { unitId: e, sheetId: a } = this._getUnitIdAndSheetId();
  15928. if (e == null || a == null)
  15929. return;
  15930. const i = this._definedNamesService.getDefinedNameMap(e);
  15931. if (!i)
  15932. return;
  15933. const r = [];
  15934. this._preUnitId = e, Array.from(Object.values(i)).forEach((o) => {
  15935. const { name: u, comment: m, formulaOrRefString: f, localSheetId: s } = o;
  15936. !this._descriptionService.hasDescription(u) && (s == null || s === mt || s === a) && r.push({
  15937. functionName: u,
  15938. description: f + (m || ""),
  15939. abstract: f,
  15940. functionType: t.DefinedName,
  15941. functionParameter: []
  15942. });
  15943. }), this._descriptionService.registerDescriptions(r);
  15944. }
  15945. _unregisterDescriptionsForNotInSheetId() {
  15946. const { unitId: e, sheetId: a } = this._getUnitIdAndSheetId();
  15947. if (e == null || a == null)
  15948. return;
  15949. const i = this._definedNamesService.getDefinedNameMap(e);
  15950. if (!i)
  15951. return;
  15952. const r = [];
  15953. Array.from(Object.values(i)).forEach((o) => {
  15954. const { name: u, localSheetId: m } = o;
  15955. m !== mt && m !== a && r.push(u);
  15956. }), this._descriptionService.unregisterDescriptions(r);
  15957. }
  15958. };
  15959. ze = Mr([
  15960. ve(0, Ut),
  15961. ve(1, qt),
  15962. ve(2, xe),
  15963. ve(3, de)
  15964. ], ze);
  15965. var xr = Object.defineProperty, _r = Object.getOwnPropertyDescriptor, yr = (n, e, a, i) => {
  15966. for (var r = i > 1 ? void 0 : i ? _r(e, a) : e, o = n.length - 1, u; o >= 0; o--)
  15967. (u = n[o]) && (r = (i ? u(e, a, r) : u(r)) || r);
  15968. return i && r && xr(e, a, r), r;
  15969. }, qr = (n, e) => (a, i) => e(a, i, n);
  15970. let Ze = class extends te {
  15971. constructor(n) {
  15972. super(), this._commandService = n, [
  15973. Hn,
  15974. Ge
  15975. ].forEach((e) => this._commandService.registerCommand(e));
  15976. }
  15977. };
  15978. Ze = yr([
  15979. qr(0, de)
  15980. ], Ze);
  15981. var Va = Object.defineProperty, gr = Object.getOwnPropertyDescriptor, hr = (n, e, a) => e in n ? Va(n, e, { enumerable: !0, configurable: !0, writable: !0, value: a }) : n[e] = a, Ga = (n, e, a, i) => {
  15982. for (var r = i > 1 ? void 0 : i ? gr(e, a) : e, o = n.length - 1, u; o >= 0; o--)
  15983. (u = n[o]) && (r = (i ? u(e, a, r) : u(r)) || r);
  15984. return i && r && Va(e, a, r), r;
  15985. }, Je = (n, e) => (a, i) => e(a, i, n), ut = (n, e, a) => hr(n, typeof e != "symbol" ? e + "" : e, a);
  15986. let et = class extends sa {
  15987. constructor(n = ra, e, a) {
  15988. super(), this._config = n, this._injector = e, this._configService = a;
  15989. const { ...i } = pa(
  15990. {},
  15991. ra,
  15992. this._config
  15993. );
  15994. this._configService.setConfig(gi, i);
  15995. }
  15996. onStarting() {
  15997. this._injector.add([ke]), this._injector.get(qa).registerChannel(
  15998. Ft,
  15999. Vn(this._injector.get(ke))
  16000. );
  16001. }
  16002. };
  16003. ut(et, "pluginName", "SHEET_FORMULA_REMOTE_PLUGIN");
  16004. ut(et, "type", ee.UNIVER_SHEET);
  16005. et = Ga([
  16006. la(_a),
  16007. Je(1, W(at)),
  16008. Je(2, _e)
  16009. ], et);
  16010. let tt = class extends sa {
  16011. constructor(n = ia, e, a) {
  16012. super(), this._config = n, this._injector = e, this._configService = a;
  16013. const { ...i } = pa(
  16014. {},
  16015. ia,
  16016. this._config
  16017. );
  16018. this._configService.setConfig(ot, i);
  16019. }
  16020. onStarting() {
  16021. const n = this._injector, e = [
  16022. [Er, { useClass: bt }],
  16023. [Ut, { useClass: Ct }],
  16024. [Ze],
  16025. [Dt],
  16026. [Ke],
  16027. [je],
  16028. [Oe],
  16029. [Qe],
  16030. [$e],
  16031. [ze],
  16032. [We]
  16033. ];
  16034. if (this._config.notExecuteFormula) {
  16035. const a = n.get(qa);
  16036. e.push([va, {
  16037. useFactory: () => Gn(a.requestChannel(Ft))
  16038. }]);
  16039. }
  16040. e.forEach((a) => n.add(a));
  16041. }
  16042. onReady() {
  16043. qe(this._injector, [
  16044. [Ze],
  16045. [$e],
  16046. [je],
  16047. [Qe],
  16048. [We]
  16049. ]), Vt() && qe(this._injector, [
  16050. [Oe]
  16051. ]);
  16052. }
  16053. onRendered() {
  16054. qe(this._injector, [
  16055. [ze]
  16056. ]), Vt() || qe(this._injector, [
  16057. [Oe]
  16058. ]);
  16059. }
  16060. };
  16061. ut(tt, "pluginName", Ir);
  16062. ut(tt, "type", ee.UNIVER_SHEET);
  16063. tt = Ga([
  16064. la(_a, dn),
  16065. Je(1, W(at)),
  16066. Je(2, _e)
  16067. ], tt);
  16068. export {
  16069. ne as CalculationMode,
  16070. Ct as DescriptionService,
  16071. Dt as FormulaRefRangeService,
  16072. Ut as IDescriptionService,
  16073. Er as IRegisterFunctionService,
  16074. va as IRemoteRegisterFunctionService,
  16075. Hn as InsertFunctionCommand,
  16076. Ge as OtherFormulaMarkDirty,
  16077. ot as PLUGIN_CONFIG_KEY_BASE,
  16078. bt as RegisterFunctionService,
  16079. Ke as RegisterOtherFormulaService,
  16080. ke as RemoteRegisterFunctionService,
  16081. Oe as TriggerCalculationController,
  16082. et as UniverRemoteSheetsFormulaPlugin,
  16083. tt as UniverSheetsFormulaPlugin,
  16084. We as UpdateDefinedNameController,
  16085. Qe as UpdateFormulaController
  16086. };