cdn.js 254 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209421042114212421342144215421642174218421942204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245424642474248424942504251425242534254425542564257425842594260426142624263426442654266426742684269427042714272427342744275427642774278427942804281428242834284428542864287428842894290429142924293429442954296429742984299430043014302430343044305430643074308430943104311431243134314431543164317431843194320432143224323432443254326432743284329433043314332433343344335433643374338433943404341434243434344434543464347434843494350435143524353435443554356435743584359436043614362436343644365436643674368436943704371437243734374437543764377437843794380438143824383438443854386438743884389439043914392439343944395439643974398439944004401440244034404440544064407440844094410441144124413441444154416441744184419442044214422442344244425442644274428442944304431443244334434443544364437443844394440444144424443444444454446444744484449445044514452445344544455445644574458445944604461446244634464446544664467446844694470447144724473447444754476447744784479448044814482448344844485448644874488448944904491449244934494449544964497449844994500450145024503450445054506450745084509451045114512451345144515451645174518451945204521452245234524452545264527452845294530453145324533453445354536453745384539454045414542454345444545454645474548454945504551455245534554455545564557455845594560456145624563456445654566456745684569457045714572457345744575457645774578457945804581458245834584458545864587458845894590459145924593459445954596459745984599460046014602460346044605460646074608460946104611461246134614461546164617461846194620462146224623462446254626462746284629463046314632463346344635463646374638463946404641464246434644464546464647464846494650465146524653465446554656465746584659466046614662466346644665466646674668466946704671467246734674467546764677467846794680468146824683468446854686468746884689469046914692469346944695469646974698469947004701470247034704470547064707470847094710471147124713471447154716471747184719472047214722472347244725472647274728472947304731473247334734473547364737473847394740474147424743474447454746474747484749475047514752475347544755475647574758475947604761476247634764476547664767476847694770477147724773477447754776477747784779478047814782478347844785478647874788478947904791479247934794479547964797479847994800480148024803480448054806480748084809481048114812481348144815481648174818481948204821482248234824482548264827482848294830483148324833483448354836483748384839484048414842484348444845484648474848484948504851485248534854485548564857485848594860486148624863486448654866486748684869487048714872487348744875487648774878487948804881488248834884488548864887488848894890489148924893489448954896489748984899490049014902490349044905490649074908490949104911491249134914491549164917491849194920492149224923492449254926492749284929493049314932493349344935493649374938493949404941494249434944494549464947494849494950495149524953495449554956495749584959496049614962496349644965496649674968496949704971497249734974497549764977497849794980498149824983498449854986498749884989499049914992499349944995499649974998499950005001500250035004500550065007500850095010501150125013501450155016501750185019502050215022502350245025502650275028502950305031503250335034503550365037503850395040504150425043504450455046504750485049505050515052505350545055505650575058505950605061506250635064506550665067506850695070507150725073507450755076507750785079508050815082508350845085508650875088508950905091509250935094509550965097509850995100510151025103510451055106510751085109511051115112511351145115511651175118511951205121512251235124512551265127512851295130513151325133513451355136513751385139514051415142514351445145514651475148514951505151515251535154515551565157515851595160516151625163516451655166516751685169517051715172517351745175517651775178517951805181518251835184518551865187518851895190519151925193519451955196519751985199520052015202520352045205520652075208520952105211521252135214521552165217521852195220522152225223522452255226522752285229523052315232523352345235523652375238523952405241524252435244524552465247524852495250525152525253525452555256525752585259526052615262526352645265526652675268526952705271527252735274527552765277527852795280528152825283528452855286528752885289529052915292529352945295529652975298529953005301530253035304530553065307530853095310531153125313531453155316531753185319532053215322532353245325532653275328532953305331533253335334533553365337533853395340534153425343534453455346534753485349535053515352535353545355535653575358535953605361536253635364536553665367536853695370537153725373537453755376537753785379538053815382538353845385538653875388538953905391539253935394539553965397539853995400540154025403540454055406540754085409541054115412541354145415541654175418541954205421542254235424542554265427542854295430543154325433543454355436543754385439544054415442544354445445544654475448544954505451545254535454545554565457545854595460546154625463546454655466546754685469547054715472547354745475547654775478547954805481548254835484548554865487548854895490549154925493549454955496549754985499550055015502550355045505550655075508550955105511551255135514551555165517551855195520552155225523552455255526552755285529553055315532553355345535553655375538553955405541554255435544554555465547554855495550555155525553555455555556555755585559556055615562556355645565556655675568556955705571557255735574557555765577557855795580558155825583558455855586558755885589559055915592559355945595559655975598559956005601560256035604560556065607560856095610561156125613561456155616561756185619562056215622562356245625562656275628562956305631563256335634563556365637563856395640564156425643564456455646564756485649565056515652565356545655565656575658565956605661566256635664566556665667566856695670567156725673567456755676567756785679568056815682568356845685568656875688568956905691569256935694569556965697569856995700570157025703570457055706570757085709571057115712571357145715571657175718571957205721572257235724572557265727572857295730573157325733573457355736573757385739574057415742574357445745574657475748574957505751575257535754575557565757575857595760576157625763576457655766576757685769577057715772577357745775577657775778577957805781578257835784578557865787578857895790579157925793579457955796579757985799580058015802580358045805580658075808580958105811581258135814581558165817581858195820582158225823582458255826582758285829583058315832583358345835583658375838583958405841584258435844584558465847584858495850585158525853585458555856585758585859586058615862586358645865586658675868586958705871587258735874587558765877587858795880588158825883588458855886588758885889589058915892589358945895589658975898589959005901590259035904590559065907590859095910591159125913591459155916591759185919592059215922592359245925592659275928592959305931593259335934593559365937593859395940594159425943594459455946594759485949595059515952595359545955595659575958595959605961596259635964596559665967596859695970597159725973597459755976597759785979598059815982598359845985598659875988598959905991599259935994599559965997599859996000600160026003600460056006600760086009601060116012601360146015601660176018601960206021602260236024602560266027602860296030603160326033603460356036603760386039604060416042604360446045604660476048604960506051605260536054605560566057605860596060606160626063606460656066606760686069607060716072607360746075607660776078607960806081608260836084608560866087608860896090609160926093609460956096609760986099610061016102610361046105610661076108610961106111611261136114611561166117611861196120612161226123612461256126612761286129613061316132613361346135613661376138613961406141614261436144614561466147614861496150615161526153615461556156615761586159616061616162616361646165616661676168616961706171617261736174617561766177617861796180618161826183618461856186618761886189619061916192619361946195619661976198619962006201620262036204620562066207620862096210621162126213621462156216621762186219622062216222622362246225622662276228622962306231623262336234623562366237623862396240624162426243624462456246624762486249625062516252625362546255625662576258625962606261626262636264626562666267626862696270627162726273627462756276627762786279628062816282628362846285628662876288628962906291629262936294629562966297629862996300630163026303630463056306630763086309631063116312631363146315631663176318631963206321632263236324632563266327632863296330633163326333633463356336633763386339634063416342634363446345634663476348634963506351635263536354635563566357635863596360636163626363636463656366636763686369637063716372637363746375637663776378637963806381638263836384638563866387638863896390639163926393639463956396639763986399640064016402640364046405640664076408640964106411641264136414641564166417641864196420642164226423642464256426642764286429643064316432643364346435643664376438643964406441644264436444644564466447644864496450645164526453645464556456645764586459646064616462646364646465646664676468646964706471647264736474647564766477647864796480648164826483648464856486648764886489649064916492649364946495649664976498649965006501650265036504650565066507650865096510651165126513651465156516651765186519652065216522652365246525652665276528652965306531653265336534653565366537653865396540654165426543654465456546654765486549655065516552655365546555655665576558655965606561656265636564656565666567656865696570657165726573657465756576657765786579658065816582658365846585658665876588658965906591659265936594659565966597659865996600660166026603660466056606660766086609661066116612661366146615661666176618661966206621662266236624662566266627662866296630663166326633663466356636663766386639664066416642664366446645664666476648664966506651665266536654665566566657665866596660666166626663666466656666666766686669667066716672667366746675667666776678667966806681668266836684668566866687668866896690669166926693669466956696669766986699670067016702670367046705670667076708670967106711671267136714671567166717671867196720672167226723672467256726672767286729673067316732673367346735673667376738673967406741674267436744674567466747674867496750675167526753675467556756675767586759676067616762676367646765676667676768676967706771677267736774677567766777677867796780678167826783678467856786678767886789679067916792679367946795679667976798679968006801680268036804680568066807680868096810681168126813681468156816681768186819682068216822682368246825682668276828682968306831683268336834683568366837683868396840684168426843684468456846684768486849685068516852685368546855685668576858685968606861686268636864686568666867686868696870687168726873687468756876687768786879688068816882688368846885688668876888688968906891689268936894689568966897689868996900690169026903690469056906690769086909691069116912691369146915691669176918691969206921692269236924692569266927692869296930693169326933693469356936693769386939694069416942694369446945694669476948694969506951695269536954695569566957695869596960696169626963696469656966696769686969697069716972697369746975697669776978697969806981698269836984698569866987698869896990699169926993699469956996699769986999700070017002700370047005700670077008700970107011701270137014701570167017701870197020702170227023702470257026702770287029703070317032703370347035703670377038703970407041704270437044704570467047704870497050705170527053705470557056705770587059706070617062706370647065706670677068706970707071707270737074707570767077707870797080708170827083708470857086708770887089709070917092709370947095709670977098709971007101710271037104710571067107710871097110711171127113711471157116711771187119712071217122712371247125712671277128712971307131713271337134713571367137713871397140714171427143714471457146714771487149715071517152715371547155715671577158715971607161716271637164716571667167716871697170717171727173717471757176717771787179718071817182718371847185718671877188718971907191719271937194719571967197719871997200720172027203720472057206720772087209721072117212721372147215721672177218721972207221
  1. function ownKeys(e, r) {var t = Object.keys(e);if (Object.getOwnPropertySymbols) {var o = Object.getOwnPropertySymbols(e);r && (o = o.filter(function (r) {return Object.getOwnPropertyDescriptor(e, r).enumerable;})), t.push.apply(t, o);}return t;}function _objectSpread(e) {for (var r = 1; r < arguments.length; r++) {var t = null != arguments[r] ? arguments[r] : {};r % 2 ? ownKeys(Object(t), !0).forEach(function (r) {_defineProperty(e, r, t[r]);}) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) {Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));});}return e;}function _createForOfIteratorHelper(o, allowArrayLike) {var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"];if (!it) {if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") {if (it) o = it;var i = 0;var F = function F() {};return { s: F, n: function n() {if (i >= o.length) return { done: true };return { done: false, value: o[i++] };}, e: function e(_e) {throw _e;}, f: F };}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");}var normalCompletion = true,didErr = false,err;return { s: function s() {it = it.call(o);}, n: function n() {var step = it.next();normalCompletion = step.done;return step;}, e: function e(_e2) {didErr = true;err = _e2;}, f: function f() {try {if (!normalCompletion && it.return != null) it.return();} finally {if (didErr) throw err;}} };}function _callSuper(t, o, e) {return o = _getPrototypeOf(o), _possibleConstructorReturn(t, _isNativeReflectConstruct() ? Reflect.construct(o, e || [], _getPrototypeOf(t).constructor) : o.apply(t, e));}function _possibleConstructorReturn(self, call) {if (call && (_typeof(call) === "object" || typeof call === "function")) {return call;} else if (call !== void 0) {throw new TypeError("Derived constructors may only return object or undefined");}return _assertThisInitialized(self);}function _assertThisInitialized(self) {if (self === void 0) {throw new ReferenceError("this hasn't been initialised - super() hasn't been called");}return self;}function _isNativeReflectConstruct() {try {var t = !Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {}));} catch (t) {}return (_isNativeReflectConstruct = function _isNativeReflectConstruct() {return !!t;})();}function _getPrototypeOf(o) {_getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) {return o.__proto__ || Object.getPrototypeOf(o);};return _getPrototypeOf(o);}function _inherits(subClass, superClass) {if (typeof superClass !== "function" && superClass !== null) {throw new TypeError("Super expression must either be null or a function");}subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } });Object.defineProperty(subClass, "prototype", { writable: false });if (superClass) _setPrototypeOf(subClass, superClass);}function _setPrototypeOf(o, p) {_setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {o.__proto__ = p;return o;};return _setPrototypeOf(o, p);}function _classCallCheck(instance, Constructor) {if (!(instance instanceof Constructor)) {throw new TypeError("Cannot call a class as a function");}}function _defineProperties(target, props) {for (var i = 0; i < props.length; i++) {var descriptor = props[i];descriptor.enumerable = descriptor.enumerable || false;descriptor.configurable = true;if ("value" in descriptor) descriptor.writable = true;Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor);}}function _createClass(Constructor, protoProps, staticProps) {if (protoProps) _defineProperties(Constructor.prototype, protoProps);if (staticProps) _defineProperties(Constructor, staticProps);Object.defineProperty(Constructor, "prototype", { writable: false });return Constructor;}function _defineProperty(obj, key, value) {key = _toPropertyKey(key);if (key in obj) {Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true });} else {obj[key] = value;}return obj;}function _toPropertyKey(t) {var i = _toPrimitive(t, "string");return "symbol" == _typeof(i) ? i : String(i);}function _toPrimitive(t, r) {if ("object" != _typeof(t) || !t) return t;var e = t[Symbol.toPrimitive];if (void 0 !== e) {var i = e.call(t, r || "default");if ("object" != _typeof(i)) return i;throw new TypeError("@@toPrimitive must return a primitive value.");}return ("string" === r ? String : Number)(t);}function _slicedToArray(arr, i) {return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();}function _nonIterableRest() {throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");}function _iterableToArrayLimit(r, l) {var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"];if (null != t) {var e,n,i,u,a = [],f = !0,o = !1;try {if (i = (t = t.call(r)).next, 0 === l) {if (Object(t) !== t) return;f = !1;} else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0);} catch (r) {o = !0, n = r;} finally {try {if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return;} finally {if (o) throw n;}}return a;}}function _arrayWithHoles(arr) {if (Array.isArray(arr)) return arr;}function _toConsumableArray(arr) {return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread();}function _nonIterableSpread() {throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");}function _unsupportedIterableToArray(o, minLen) {if (!o) return;if (typeof o === "string") return _arrayLikeToArray(o, minLen);var n = Object.prototype.toString.call(o).slice(8, -1);if (n === "Object" && o.constructor) n = o.constructor.name;if (n === "Map" || n === "Set") return Array.from(o);if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);}function _iterableToArray(iter) {if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter);}function _arrayWithoutHoles(arr) {if (Array.isArray(arr)) return _arrayLikeToArray(arr);}function _arrayLikeToArray(arr, len) {if (len == null || len > arr.length) len = arr.length;for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];return arr2;}function _typeof(o) {"@babel/helpers - typeof";return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) {return typeof o;} : function (o) {return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o;}, _typeof(o);}(function () {var __defProp = Object.defineProperty;
  2. var __export = function __export(target, all) {
  3. for (var name in all)
  4. __defProp(target, name, {
  5. get: all[name],
  6. enumerable: true,
  7. configurable: true,
  8. set: function set(newValue) {return all[name] = function () {return newValue;};}
  9. });
  10. };
  11. // lib/fp.mjs
  12. var exports_fp = {};
  13. __export(exports_fp, {
  14. yearsToQuarters: function yearsToQuarters() {
  15. {
  16. return yearsToQuarters3;
  17. }
  18. },
  19. yearsToMonths: function yearsToMonths() {
  20. {
  21. return yearsToMonths3;
  22. }
  23. },
  24. yearsToDays: function yearsToDays() {
  25. {
  26. return yearsToDays3;
  27. }
  28. },
  29. weeksToDays: function weeksToDays() {
  30. {
  31. return weeksToDays3;
  32. }
  33. },
  34. transpose: function transpose() {
  35. {
  36. return transpose4;
  37. }
  38. },
  39. toDate: function toDate() {
  40. {
  41. return toDate127;
  42. }
  43. },
  44. subYears: function subYears() {
  45. {
  46. return subYears3;
  47. }
  48. },
  49. subWeeks: function subWeeks() {
  50. {
  51. return subWeeks3;
  52. }
  53. },
  54. subSeconds: function subSeconds() {
  55. {
  56. return subSeconds3;
  57. }
  58. },
  59. subQuarters: function subQuarters() {
  60. {
  61. return subQuarters3;
  62. }
  63. },
  64. subMonths: function subMonths() {
  65. {
  66. return subMonths4;
  67. }
  68. },
  69. subMinutes: function subMinutes() {
  70. {
  71. return subMinutes3;
  72. }
  73. },
  74. subMilliseconds: function subMilliseconds() {
  75. {
  76. return subMilliseconds3;
  77. }
  78. },
  79. subISOWeekYears: function subISOWeekYears() {
  80. {
  81. return subISOWeekYears4;
  82. }
  83. },
  84. subHours: function subHours() {
  85. {
  86. return subHours3;
  87. }
  88. },
  89. subDays: function subDays() {
  90. {
  91. return subDays5;
  92. }
  93. },
  94. subBusinessDays: function subBusinessDays() {
  95. {
  96. return subBusinessDays3;
  97. }
  98. },
  99. sub: function sub() {
  100. {
  101. return sub3;
  102. }
  103. },
  104. startOfYear: function startOfYear() {
  105. {
  106. return startOfYear5;
  107. }
  108. },
  109. startOfWeekYearWithOptions: function startOfWeekYearWithOptions() {
  110. {
  111. return _startOfWeekYearWithOptions;
  112. }
  113. },
  114. startOfWeekYear: function startOfWeekYear() {
  115. {
  116. return startOfWeekYear5;
  117. }
  118. },
  119. startOfWeekWithOptions: function startOfWeekWithOptions() {
  120. {
  121. return _startOfWeekWithOptions;
  122. }
  123. },
  124. startOfWeek: function startOfWeek() {
  125. {
  126. return startOfWeek12;
  127. }
  128. },
  129. startOfSecond: function startOfSecond() {
  130. {
  131. return startOfSecond4;
  132. }
  133. },
  134. startOfQuarter: function startOfQuarter() {
  135. {
  136. return startOfQuarter5;
  137. }
  138. },
  139. startOfMonth: function startOfMonth() {
  140. {
  141. return startOfMonth6;
  142. }
  143. },
  144. startOfMinute: function startOfMinute() {
  145. {
  146. return startOfMinute5;
  147. }
  148. },
  149. startOfISOWeekYear: function startOfISOWeekYear() {
  150. {
  151. return startOfISOWeekYear7;
  152. }
  153. },
  154. startOfISOWeek: function startOfISOWeek() {
  155. {
  156. return startOfISOWeek11;
  157. }
  158. },
  159. startOfHour: function startOfHour() {
  160. {
  161. return startOfHour4;
  162. }
  163. },
  164. startOfDecade: function startOfDecade() {
  165. {
  166. return startOfDecade3;
  167. }
  168. },
  169. startOfDay: function startOfDay() {
  170. {
  171. return startOfDay5;
  172. }
  173. },
  174. setYear: function setYear() {
  175. {
  176. return setYear3;
  177. }
  178. },
  179. setWeekYearWithOptions: function setWeekYearWithOptions() {
  180. {
  181. return _setWeekYearWithOptions;
  182. }
  183. },
  184. setWeekYear: function setWeekYear() {
  185. {
  186. return setWeekYear3;
  187. }
  188. },
  189. setWeekWithOptions: function setWeekWithOptions() {
  190. {
  191. return _setWeekWithOptions;
  192. }
  193. },
  194. setWeek: function setWeek() {
  195. {
  196. return setWeek4;
  197. }
  198. },
  199. setSeconds: function setSeconds() {
  200. {
  201. return setSeconds3;
  202. }
  203. },
  204. setQuarter: function setQuarter() {
  205. {
  206. return setQuarter3;
  207. }
  208. },
  209. setMonth: function setMonth() {
  210. {
  211. return setMonth4;
  212. }
  213. },
  214. setMinutes: function setMinutes() {
  215. {
  216. return setMinutes3;
  217. }
  218. },
  219. setMilliseconds: function setMilliseconds() {
  220. {
  221. return setMilliseconds3;
  222. }
  223. },
  224. setISOWeekYear: function setISOWeekYear() {
  225. {
  226. return setISOWeekYear4;
  227. }
  228. },
  229. setISOWeek: function setISOWeek() {
  230. {
  231. return setISOWeek4;
  232. }
  233. },
  234. setISODay: function setISODay() {
  235. {
  236. return setISODay4;
  237. }
  238. },
  239. setHours: function setHours() {
  240. {
  241. return setHours3;
  242. }
  243. },
  244. setDayWithOptions: function setDayWithOptions() {
  245. {
  246. return _setDayWithOptions;
  247. }
  248. },
  249. setDayOfYear: function setDayOfYear() {
  250. {
  251. return setDayOfYear3;
  252. }
  253. },
  254. setDay: function setDay() {
  255. {
  256. return setDay6;
  257. }
  258. },
  259. setDate: function setDate() {
  260. {
  261. return setDate3;
  262. }
  263. },
  264. set: function set() {
  265. {
  266. return set3;
  267. }
  268. },
  269. secondsToMinutes: function secondsToMinutes() {
  270. {
  271. return secondsToMinutes3;
  272. }
  273. },
  274. secondsToMilliseconds: function secondsToMilliseconds() {
  275. {
  276. return secondsToMilliseconds3;
  277. }
  278. },
  279. secondsToHours: function secondsToHours() {
  280. {
  281. return secondsToHours3;
  282. }
  283. },
  284. roundToNearestMinutesWithOptions: function roundToNearestMinutesWithOptions() {
  285. {
  286. return _roundToNearestMinutesWithOptions;
  287. }
  288. },
  289. roundToNearestMinutes: function roundToNearestMinutes() {
  290. {
  291. return roundToNearestMinutes3;
  292. }
  293. },
  294. roundToNearestHoursWithOptions: function roundToNearestHoursWithOptions() {
  295. {
  296. return _roundToNearestHoursWithOptions;
  297. }
  298. },
  299. roundToNearestHours: function roundToNearestHours() {
  300. {
  301. return roundToNearestHours3;
  302. }
  303. },
  304. quartersToYears: function quartersToYears() {
  305. {
  306. return quartersToYears3;
  307. }
  308. },
  309. quartersToMonths: function quartersToMonths() {
  310. {
  311. return quartersToMonths3;
  312. }
  313. },
  314. previousWednesday: function previousWednesday() {
  315. {
  316. return previousWednesday3;
  317. }
  318. },
  319. previousTuesday: function previousTuesday() {
  320. {
  321. return previousTuesday3;
  322. }
  323. },
  324. previousThursday: function previousThursday() {
  325. {
  326. return previousThursday3;
  327. }
  328. },
  329. previousSunday: function previousSunday() {
  330. {
  331. return previousSunday3;
  332. }
  333. },
  334. previousSaturday: function previousSaturday() {
  335. {
  336. return previousSaturday3;
  337. }
  338. },
  339. previousMonday: function previousMonday() {
  340. {
  341. return previousMonday3;
  342. }
  343. },
  344. previousFriday: function previousFriday() {
  345. {
  346. return previousFriday3;
  347. }
  348. },
  349. previousDay: function previousDay() {
  350. {
  351. return previousDay3;
  352. }
  353. },
  354. parseWithOptions: function parseWithOptions() {
  355. {
  356. return _parseWithOptions;
  357. }
  358. },
  359. parseJSON: function parseJSON() {
  360. {
  361. return parseJSON3;
  362. }
  363. },
  364. parseISOWithOptions: function parseISOWithOptions() {
  365. {
  366. return _parseISOWithOptions;
  367. }
  368. },
  369. parseISO: function parseISO() {
  370. {
  371. return parseISO3;
  372. }
  373. },
  374. parse: function parse() {
  375. {
  376. return parse4;
  377. }
  378. },
  379. nextWednesday: function nextWednesday() {
  380. {
  381. return nextWednesday3;
  382. }
  383. },
  384. nextTuesday: function nextTuesday() {
  385. {
  386. return nextTuesday3;
  387. }
  388. },
  389. nextThursday: function nextThursday() {
  390. {
  391. return nextThursday3;
  392. }
  393. },
  394. nextSunday: function nextSunday() {
  395. {
  396. return nextSunday3;
  397. }
  398. },
  399. nextSaturday: function nextSaturday() {
  400. {
  401. return nextSaturday3;
  402. }
  403. },
  404. nextMonday: function nextMonday() {
  405. {
  406. return nextMonday3;
  407. }
  408. },
  409. nextFriday: function nextFriday() {
  410. {
  411. return nextFriday3;
  412. }
  413. },
  414. nextDay: function nextDay() {
  415. {
  416. return nextDay3;
  417. }
  418. },
  419. monthsToYears: function monthsToYears() {
  420. {
  421. return monthsToYears3;
  422. }
  423. },
  424. monthsToQuarters: function monthsToQuarters() {
  425. {
  426. return monthsToQuarters3;
  427. }
  428. },
  429. minutesToSeconds: function minutesToSeconds() {
  430. {
  431. return minutesToSeconds3;
  432. }
  433. },
  434. minutesToMilliseconds: function minutesToMilliseconds() {
  435. {
  436. return minutesToMilliseconds3;
  437. }
  438. },
  439. minutesToHours: function minutesToHours() {
  440. {
  441. return minutesToHours3;
  442. }
  443. },
  444. min: function min() {
  445. {
  446. return min4;
  447. }
  448. },
  449. millisecondsToSeconds: function millisecondsToSeconds() {
  450. {
  451. return millisecondsToSeconds3;
  452. }
  453. },
  454. millisecondsToMinutes: function millisecondsToMinutes() {
  455. {
  456. return millisecondsToMinutes3;
  457. }
  458. },
  459. millisecondsToHours: function millisecondsToHours() {
  460. {
  461. return millisecondsToHours3;
  462. }
  463. },
  464. milliseconds: function milliseconds() {
  465. {
  466. return milliseconds3;
  467. }
  468. },
  469. max: function max() {
  470. {
  471. return max4;
  472. }
  473. },
  474. lightFormat: function lightFormat() {
  475. {
  476. return lightFormat3;
  477. }
  478. },
  479. lastDayOfYear: function lastDayOfYear() {
  480. {
  481. return lastDayOfYear3;
  482. }
  483. },
  484. lastDayOfWeekWithOptions: function lastDayOfWeekWithOptions() {
  485. {
  486. return _lastDayOfWeekWithOptions;
  487. }
  488. },
  489. lastDayOfWeek: function lastDayOfWeek() {
  490. {
  491. return lastDayOfWeek4;
  492. }
  493. },
  494. lastDayOfQuarter: function lastDayOfQuarter() {
  495. {
  496. return lastDayOfQuarter3;
  497. }
  498. },
  499. lastDayOfMonth: function lastDayOfMonth() {
  500. {
  501. return lastDayOfMonth4;
  502. }
  503. },
  504. lastDayOfISOWeekYear: function lastDayOfISOWeekYear() {
  505. {
  506. return lastDayOfISOWeekYear3;
  507. }
  508. },
  509. lastDayOfISOWeek: function lastDayOfISOWeek() {
  510. {
  511. return lastDayOfISOWeek3;
  512. }
  513. },
  514. lastDayOfDecade: function lastDayOfDecade() {
  515. {
  516. return lastDayOfDecade3;
  517. }
  518. },
  519. isWithinInterval: function isWithinInterval() {
  520. {
  521. return isWithinInterval3;
  522. }
  523. },
  524. isWeekend: function isWeekend() {
  525. {
  526. return isWeekend6;
  527. }
  528. },
  529. isWednesday: function isWednesday() {
  530. {
  531. return isWednesday3;
  532. }
  533. },
  534. isValid: function isValid() {
  535. {
  536. return isValid9;
  537. }
  538. },
  539. isTuesday: function isTuesday() {
  540. {
  541. return isTuesday3;
  542. }
  543. },
  544. isThursday: function isThursday() {
  545. {
  546. return isThursday3;
  547. }
  548. },
  549. isSunday: function isSunday() {
  550. {
  551. return isSunday4;
  552. }
  553. },
  554. isSaturday: function isSaturday() {
  555. {
  556. return isSaturday4;
  557. }
  558. },
  559. isSameYear: function isSameYear() {
  560. {
  561. return isSameYear3;
  562. }
  563. },
  564. isSameWeekWithOptions: function isSameWeekWithOptions() {
  565. {
  566. return _isSameWeekWithOptions;
  567. }
  568. },
  569. isSameWeek: function isSameWeek() {
  570. {
  571. return isSameWeek4;
  572. }
  573. },
  574. isSameSecond: function isSameSecond() {
  575. {
  576. return isSameSecond3;
  577. }
  578. },
  579. isSameQuarter: function isSameQuarter() {
  580. {
  581. return isSameQuarter3;
  582. }
  583. },
  584. isSameMonth: function isSameMonth() {
  585. {
  586. return isSameMonth3;
  587. }
  588. },
  589. isSameMinute: function isSameMinute() {
  590. {
  591. return isSameMinute3;
  592. }
  593. },
  594. isSameISOWeekYear: function isSameISOWeekYear() {
  595. {
  596. return isSameISOWeekYear3;
  597. }
  598. },
  599. isSameISOWeek: function isSameISOWeek() {
  600. {
  601. return isSameISOWeek3;
  602. }
  603. },
  604. isSameHour: function isSameHour() {
  605. {
  606. return isSameHour3;
  607. }
  608. },
  609. isSameDay: function isSameDay() {
  610. {
  611. return isSameDay4;
  612. }
  613. },
  614. isMonday: function isMonday() {
  615. {
  616. return isMonday3;
  617. }
  618. },
  619. isMatchWithOptions: function isMatchWithOptions() {
  620. {
  621. return _isMatchWithOptions;
  622. }
  623. },
  624. isMatch: function isMatch() {
  625. {
  626. return isMatch3;
  627. }
  628. },
  629. isLeapYear: function isLeapYear() {
  630. {
  631. return isLeapYear4;
  632. }
  633. },
  634. isLastDayOfMonth: function isLastDayOfMonth() {
  635. {
  636. return isLastDayOfMonth4;
  637. }
  638. },
  639. isFriday: function isFriday() {
  640. {
  641. return isFriday3;
  642. }
  643. },
  644. isFirstDayOfMonth: function isFirstDayOfMonth() {
  645. {
  646. return isFirstDayOfMonth3;
  647. }
  648. },
  649. isExists: function isExists() {
  650. {
  651. return isExists3;
  652. }
  653. },
  654. isEqual: function isEqual() {
  655. {
  656. return isEqual3;
  657. }
  658. },
  659. isDate: function isDate() {
  660. {
  661. return isDate4;
  662. }
  663. },
  664. isBefore: function isBefore() {
  665. {
  666. return isBefore3;
  667. }
  668. },
  669. isAfter: function isAfter() {
  670. {
  671. return isAfter3;
  672. }
  673. },
  674. intlFormatDistanceWithOptions: function intlFormatDistanceWithOptions() {
  675. {
  676. return _intlFormatDistanceWithOptions;
  677. }
  678. },
  679. intlFormatDistance: function intlFormatDistance() {
  680. {
  681. return intlFormatDistance3;
  682. }
  683. },
  684. intlFormat: function intlFormat() {
  685. {
  686. return intlFormat3;
  687. }
  688. },
  689. intervalWithOptions: function intervalWithOptions() {
  690. {
  691. return _intervalWithOptions;
  692. }
  693. },
  694. intervalToDuration: function intervalToDuration() {
  695. {
  696. return intervalToDuration3;
  697. }
  698. },
  699. interval: function interval() {
  700. {
  701. return interval3;
  702. }
  703. },
  704. hoursToSeconds: function hoursToSeconds() {
  705. {
  706. return hoursToSeconds3;
  707. }
  708. },
  709. hoursToMinutes: function hoursToMinutes() {
  710. {
  711. return hoursToMinutes3;
  712. }
  713. },
  714. hoursToMilliseconds: function hoursToMilliseconds() {
  715. {
  716. return hoursToMilliseconds3;
  717. }
  718. },
  719. getYear: function getYear() {
  720. {
  721. return getYear3;
  722. }
  723. },
  724. getWeeksInMonthWithOptions: function getWeeksInMonthWithOptions() {
  725. {
  726. return _getWeeksInMonthWithOptions;
  727. }
  728. },
  729. getWeeksInMonth: function getWeeksInMonth() {
  730. {
  731. return getWeeksInMonth3;
  732. }
  733. },
  734. getWeekYearWithOptions: function getWeekYearWithOptions() {
  735. {
  736. return _getWeekYearWithOptions;
  737. }
  738. },
  739. getWeekYear: function getWeekYear() {
  740. {
  741. return getWeekYear5;
  742. }
  743. },
  744. getWeekWithOptions: function getWeekWithOptions() {
  745. {
  746. return _getWeekWithOptions;
  747. }
  748. },
  749. getWeekOfMonthWithOptions: function getWeekOfMonthWithOptions() {
  750. {
  751. return _getWeekOfMonthWithOptions;
  752. }
  753. },
  754. getWeekOfMonth: function getWeekOfMonth() {
  755. {
  756. return getWeekOfMonth3;
  757. }
  758. },
  759. getWeek: function getWeek() {
  760. {
  761. return getWeek4;
  762. }
  763. },
  764. getUnixTime: function getUnixTime() {
  765. {
  766. return getUnixTime3;
  767. }
  768. },
  769. getTime: function getTime() {
  770. {
  771. return getTime3;
  772. }
  773. },
  774. getSeconds: function getSeconds() {
  775. {
  776. return getSeconds3;
  777. }
  778. },
  779. getQuarter: function getQuarter() {
  780. {
  781. return getQuarter4;
  782. }
  783. },
  784. getOverlappingDaysInIntervals: function getOverlappingDaysInIntervals() {
  785. {
  786. return getOverlappingDaysInIntervals3;
  787. }
  788. },
  789. getMonth: function getMonth() {
  790. {
  791. return getMonth3;
  792. }
  793. },
  794. getMinutes: function getMinutes() {
  795. {
  796. return getMinutes3;
  797. }
  798. },
  799. getMilliseconds: function getMilliseconds() {
  800. {
  801. return getMilliseconds3;
  802. }
  803. },
  804. getISOWeeksInYear: function getISOWeeksInYear() {
  805. {
  806. return getISOWeeksInYear3;
  807. }
  808. },
  809. getISOWeekYear: function getISOWeekYear() {
  810. {
  811. return getISOWeekYear8;
  812. }
  813. },
  814. getISOWeek: function getISOWeek() {
  815. {
  816. return getISOWeek4;
  817. }
  818. },
  819. getISODay: function getISODay() {
  820. {
  821. return getISODay3;
  822. }
  823. },
  824. getHours: function getHours() {
  825. {
  826. return getHours3;
  827. }
  828. },
  829. getDecade: function getDecade() {
  830. {
  831. return getDecade3;
  832. }
  833. },
  834. getDaysInYear: function getDaysInYear() {
  835. {
  836. return getDaysInYear3;
  837. }
  838. },
  839. getDaysInMonth: function getDaysInMonth() {
  840. {
  841. return getDaysInMonth3;
  842. }
  843. },
  844. getDayOfYear: function getDayOfYear() {
  845. {
  846. return getDayOfYear4;
  847. }
  848. },
  849. getDay: function getDay() {
  850. {
  851. return getDay3;
  852. }
  853. },
  854. getDate: function getDate() {
  855. {
  856. return getDate3;
  857. }
  858. },
  859. fromUnixTime: function fromUnixTime() {
  860. {
  861. return fromUnixTime3;
  862. }
  863. },
  864. formatWithOptions: function formatWithOptions() {
  865. {
  866. return _formatWithOptions;
  867. }
  868. },
  869. formatRelativeWithOptions: function formatRelativeWithOptions() {
  870. {
  871. return _formatRelativeWithOptions;
  872. }
  873. },
  874. formatRelative: function formatRelative() {
  875. {
  876. return formatRelative5;
  877. }
  878. },
  879. formatRFC7231: function formatRFC7231() {
  880. {
  881. return formatRFC72313;
  882. }
  883. },
  884. formatRFC3339WithOptions: function formatRFC3339WithOptions() {
  885. {
  886. return _formatRFC3339WithOptions;
  887. }
  888. },
  889. formatRFC3339: function formatRFC3339() {
  890. {
  891. return formatRFC33393;
  892. }
  893. },
  894. formatISOWithOptions: function formatISOWithOptions() {
  895. {
  896. return _formatISOWithOptions;
  897. }
  898. },
  899. formatISODuration: function formatISODuration() {
  900. {
  901. return formatISODuration3;
  902. }
  903. },
  904. formatISO9075WithOptions: function formatISO9075WithOptions() {
  905. {
  906. return _formatISO9075WithOptions;
  907. }
  908. },
  909. formatISO9075: function formatISO9075() {
  910. {
  911. return formatISO90753;
  912. }
  913. },
  914. formatISO: function formatISO() {
  915. {
  916. return formatISO3;
  917. }
  918. },
  919. formatDurationWithOptions: function formatDurationWithOptions() {
  920. {
  921. return _formatDurationWithOptions;
  922. }
  923. },
  924. formatDuration: function formatDuration() {
  925. {
  926. return formatDuration3;
  927. }
  928. },
  929. formatDistanceWithOptions: function formatDistanceWithOptions() {
  930. {
  931. return _formatDistanceWithOptions;
  932. }
  933. },
  934. formatDistanceStrictWithOptions: function formatDistanceStrictWithOptions() {
  935. {
  936. return _formatDistanceStrictWithOptions;
  937. }
  938. },
  939. formatDistanceStrict: function formatDistanceStrict() {
  940. {
  941. return formatDistanceStrict3;
  942. }
  943. },
  944. formatDistance: function formatDistance() {
  945. {
  946. return formatDistance5;
  947. }
  948. },
  949. format: function format() {
  950. {
  951. return format3;
  952. }
  953. },
  954. endOfYear: function endOfYear() {
  955. {
  956. return endOfYear4;
  957. }
  958. },
  959. endOfWeekWithOptions: function endOfWeekWithOptions() {
  960. {
  961. return _endOfWeekWithOptions;
  962. }
  963. },
  964. endOfWeek: function endOfWeek() {
  965. {
  966. return endOfWeek4;
  967. }
  968. },
  969. endOfSecond: function endOfSecond() {
  970. {
  971. return endOfSecond3;
  972. }
  973. },
  974. endOfQuarter: function endOfQuarter() {
  975. {
  976. return endOfQuarter3;
  977. }
  978. },
  979. endOfMonth: function endOfMonth() {
  980. {
  981. return endOfMonth5;
  982. }
  983. },
  984. endOfMinute: function endOfMinute() {
  985. {
  986. return endOfMinute3;
  987. }
  988. },
  989. endOfISOWeekYear: function endOfISOWeekYear() {
  990. {
  991. return endOfISOWeekYear3;
  992. }
  993. },
  994. endOfISOWeek: function endOfISOWeek() {
  995. {
  996. return endOfISOWeek3;
  997. }
  998. },
  999. endOfHour: function endOfHour() {
  1000. {
  1001. return endOfHour3;
  1002. }
  1003. },
  1004. endOfDecade: function endOfDecade() {
  1005. {
  1006. return endOfDecade3;
  1007. }
  1008. },
  1009. endOfDay: function endOfDay() {
  1010. {
  1011. return endOfDay4;
  1012. }
  1013. },
  1014. eachYearOfIntervalWithOptions: function eachYearOfIntervalWithOptions() {
  1015. {
  1016. return _eachYearOfIntervalWithOptions;
  1017. }
  1018. },
  1019. eachYearOfInterval: function eachYearOfInterval() {
  1020. {
  1021. return eachYearOfInterval3;
  1022. }
  1023. },
  1024. eachWeekendOfYear: function eachWeekendOfYear() {
  1025. {
  1026. return eachWeekendOfYear3;
  1027. }
  1028. },
  1029. eachWeekendOfMonth: function eachWeekendOfMonth() {
  1030. {
  1031. return eachWeekendOfMonth3;
  1032. }
  1033. },
  1034. eachWeekendOfInterval: function eachWeekendOfInterval() {
  1035. {
  1036. return eachWeekendOfInterval3;
  1037. }
  1038. },
  1039. eachWeekOfIntervalWithOptions: function eachWeekOfIntervalWithOptions() {
  1040. {
  1041. return _eachWeekOfIntervalWithOptions;
  1042. }
  1043. },
  1044. eachWeekOfInterval: function eachWeekOfInterval() {
  1045. {
  1046. return eachWeekOfInterval3;
  1047. }
  1048. },
  1049. eachQuarterOfIntervalWithOptions: function eachQuarterOfIntervalWithOptions() {
  1050. {
  1051. return _eachQuarterOfIntervalWithOptions;
  1052. }
  1053. },
  1054. eachQuarterOfInterval: function eachQuarterOfInterval() {
  1055. {
  1056. return eachQuarterOfInterval3;
  1057. }
  1058. },
  1059. eachMonthOfIntervalWithOptions: function eachMonthOfIntervalWithOptions() {
  1060. {
  1061. return _eachMonthOfIntervalWithOptions;
  1062. }
  1063. },
  1064. eachMonthOfInterval: function eachMonthOfInterval() {
  1065. {
  1066. return eachMonthOfInterval3;
  1067. }
  1068. },
  1069. eachMinuteOfIntervalWithOptions: function eachMinuteOfIntervalWithOptions() {
  1070. {
  1071. return _eachMinuteOfIntervalWithOptions;
  1072. }
  1073. },
  1074. eachMinuteOfInterval: function eachMinuteOfInterval() {
  1075. {
  1076. return eachMinuteOfInterval3;
  1077. }
  1078. },
  1079. eachHourOfIntervalWithOptions: function eachHourOfIntervalWithOptions() {
  1080. {
  1081. return _eachHourOfIntervalWithOptions;
  1082. }
  1083. },
  1084. eachHourOfInterval: function eachHourOfInterval() {
  1085. {
  1086. return eachHourOfInterval3;
  1087. }
  1088. },
  1089. eachDayOfIntervalWithOptions: function eachDayOfIntervalWithOptions() {
  1090. {
  1091. return _eachDayOfIntervalWithOptions;
  1092. }
  1093. },
  1094. eachDayOfInterval: function eachDayOfInterval() {
  1095. {
  1096. return eachDayOfInterval3;
  1097. }
  1098. },
  1099. differenceInYears: function differenceInYears() {
  1100. {
  1101. return differenceInYears3;
  1102. }
  1103. },
  1104. differenceInWeeksWithOptions: function differenceInWeeksWithOptions() {
  1105. {
  1106. return _differenceInWeeksWithOptions;
  1107. }
  1108. },
  1109. differenceInWeeks: function differenceInWeeks() {
  1110. {
  1111. return differenceInWeeks3;
  1112. }
  1113. },
  1114. differenceInSecondsWithOptions: function differenceInSecondsWithOptions() {
  1115. {
  1116. return _differenceInSecondsWithOptions;
  1117. }
  1118. },
  1119. differenceInSeconds: function differenceInSeconds() {
  1120. {
  1121. return differenceInSeconds3;
  1122. }
  1123. },
  1124. differenceInQuartersWithOptions: function differenceInQuartersWithOptions() {
  1125. {
  1126. return _differenceInQuartersWithOptions;
  1127. }
  1128. },
  1129. differenceInQuarters: function differenceInQuarters() {
  1130. {
  1131. return differenceInQuarters3;
  1132. }
  1133. },
  1134. differenceInMonths: function differenceInMonths() {
  1135. {
  1136. return differenceInMonths3;
  1137. }
  1138. },
  1139. differenceInMinutesWithOptions: function differenceInMinutesWithOptions() {
  1140. {
  1141. return _differenceInMinutesWithOptions;
  1142. }
  1143. },
  1144. differenceInMinutes: function differenceInMinutes() {
  1145. {
  1146. return differenceInMinutes3;
  1147. }
  1148. },
  1149. differenceInMilliseconds: function differenceInMilliseconds() {
  1150. {
  1151. return differenceInMilliseconds4;
  1152. }
  1153. },
  1154. differenceInISOWeekYears: function differenceInISOWeekYears() {
  1155. {
  1156. return differenceInISOWeekYears3;
  1157. }
  1158. },
  1159. differenceInHoursWithOptions: function differenceInHoursWithOptions() {
  1160. {
  1161. return _differenceInHoursWithOptions;
  1162. }
  1163. },
  1164. differenceInHours: function differenceInHours() {
  1165. {
  1166. return differenceInHours3;
  1167. }
  1168. },
  1169. differenceInDays: function differenceInDays() {
  1170. {
  1171. return differenceInDays3;
  1172. }
  1173. },
  1174. differenceInCalendarYears: function differenceInCalendarYears() {
  1175. {
  1176. return differenceInCalendarYears3;
  1177. }
  1178. },
  1179. differenceInCalendarWeeksWithOptions: function differenceInCalendarWeeksWithOptions() {
  1180. {
  1181. return _differenceInCalendarWeeksWithOptions;
  1182. }
  1183. },
  1184. differenceInCalendarWeeks: function differenceInCalendarWeeks() {
  1185. {
  1186. return differenceInCalendarWeeks3;
  1187. }
  1188. },
  1189. differenceInCalendarQuarters: function differenceInCalendarQuarters() {
  1190. {
  1191. return differenceInCalendarQuarters3;
  1192. }
  1193. },
  1194. differenceInCalendarMonths: function differenceInCalendarMonths() {
  1195. {
  1196. return differenceInCalendarMonths3;
  1197. }
  1198. },
  1199. differenceInCalendarISOWeeks: function differenceInCalendarISOWeeks() {
  1200. {
  1201. return differenceInCalendarISOWeeks3;
  1202. }
  1203. },
  1204. differenceInCalendarISOWeekYears: function differenceInCalendarISOWeekYears() {
  1205. {
  1206. return differenceInCalendarISOWeekYears3;
  1207. }
  1208. },
  1209. differenceInCalendarDays: function differenceInCalendarDays() {
  1210. {
  1211. return differenceInCalendarDays5;
  1212. }
  1213. },
  1214. differenceInBusinessDays: function differenceInBusinessDays() {
  1215. {
  1216. return differenceInBusinessDays3;
  1217. }
  1218. },
  1219. daysToWeeks: function daysToWeeks() {
  1220. {
  1221. return daysToWeeks3;
  1222. }
  1223. },
  1224. constructFrom: function constructFrom() {
  1225. {
  1226. return constructFrom12;
  1227. }
  1228. },
  1229. compareDesc: function compareDesc() {
  1230. {
  1231. return compareDesc3;
  1232. }
  1233. },
  1234. compareAsc: function compareAsc() {
  1235. {
  1236. return compareAsc3;
  1237. }
  1238. },
  1239. closestTo: function closestTo() {
  1240. {
  1241. return closestTo3;
  1242. }
  1243. },
  1244. closestIndexTo: function closestIndexTo() {
  1245. {
  1246. return closestIndexTo3;
  1247. }
  1248. },
  1249. clamp: function clamp() {
  1250. {
  1251. return clamp3;
  1252. }
  1253. },
  1254. areIntervalsOverlappingWithOptions: function areIntervalsOverlappingWithOptions() {
  1255. {
  1256. return _areIntervalsOverlappingWithOptions;
  1257. }
  1258. },
  1259. areIntervalsOverlapping: function areIntervalsOverlapping() {
  1260. {
  1261. return areIntervalsOverlapping3;
  1262. }
  1263. },
  1264. addYears: function addYears() {
  1265. {
  1266. return addYears3;
  1267. }
  1268. },
  1269. addWeeks: function addWeeks() {
  1270. {
  1271. return addWeeks3;
  1272. }
  1273. },
  1274. addSeconds: function addSeconds() {
  1275. {
  1276. return addSeconds3;
  1277. }
  1278. },
  1279. addQuarters: function addQuarters() {
  1280. {
  1281. return addQuarters3;
  1282. }
  1283. },
  1284. addMonths: function addMonths() {
  1285. {
  1286. return addMonths4;
  1287. }
  1288. },
  1289. addMinutes: function addMinutes() {
  1290. {
  1291. return addMinutes3;
  1292. }
  1293. },
  1294. addMilliseconds: function addMilliseconds() {
  1295. {
  1296. return addMilliseconds4;
  1297. }
  1298. },
  1299. addISOWeekYears: function addISOWeekYears() {
  1300. {
  1301. return addISOWeekYears3;
  1302. }
  1303. },
  1304. addHours: function addHours() {
  1305. {
  1306. return addHours3;
  1307. }
  1308. },
  1309. addDays: function addDays() {
  1310. {
  1311. return addDays4;
  1312. }
  1313. },
  1314. addBusinessDays: function addBusinessDays() {
  1315. {
  1316. return addBusinessDays3;
  1317. }
  1318. },
  1319. add: function add() {
  1320. {
  1321. return add3;
  1322. }
  1323. }
  1324. });
  1325. // lib/toDate.mjs
  1326. function toDate(argument) {
  1327. var argStr = Object.prototype.toString.call(argument);
  1328. if (argument instanceof Date || _typeof(argument) === "object" && argStr === "[object Date]") {
  1329. return new argument.constructor(+argument);
  1330. } else if (typeof argument === "number" || argStr === "[object Number]" || typeof argument === "string" || argStr === "[object String]") {
  1331. return new Date(argument);
  1332. } else {
  1333. return new Date(NaN);
  1334. }
  1335. }
  1336. // lib/constructFrom.mjs
  1337. function constructFrom(date, value) {
  1338. if (date instanceof Date) {
  1339. return new date.constructor(value);
  1340. } else {
  1341. return new Date(value);
  1342. }
  1343. }
  1344. // lib/addDays.mjs
  1345. function addDays(date, amount) {
  1346. var _date = toDate(date);
  1347. if (isNaN(amount))
  1348. return constructFrom(date, NaN);
  1349. if (!amount) {
  1350. return _date;
  1351. }
  1352. _date.setDate(_date.getDate() + amount);
  1353. return _date;
  1354. }
  1355. // lib/addMonths.mjs
  1356. function addMonths(date, amount) {
  1357. var _date = toDate(date);
  1358. if (isNaN(amount))
  1359. return constructFrom(date, NaN);
  1360. if (!amount) {
  1361. return _date;
  1362. }
  1363. var dayOfMonth = _date.getDate();
  1364. var endOfDesiredMonth = constructFrom(date, _date.getTime());
  1365. endOfDesiredMonth.setMonth(_date.getMonth() + amount + 1, 0);
  1366. var daysInMonth = endOfDesiredMonth.getDate();
  1367. if (dayOfMonth >= daysInMonth) {
  1368. return endOfDesiredMonth;
  1369. } else {
  1370. _date.setFullYear(endOfDesiredMonth.getFullYear(), endOfDesiredMonth.getMonth(), dayOfMonth);
  1371. return _date;
  1372. }
  1373. }
  1374. // lib/add.mjs
  1375. function add(date, duration) {
  1376. var _duration$years =
  1377. duration.years,years = _duration$years === void 0 ? 0 : _duration$years,_duration$months = duration.months,months = _duration$months === void 0 ? 0 : _duration$months,_duration$weeks = duration.weeks,weeks = _duration$weeks === void 0 ? 0 : _duration$weeks,_duration$days = duration.days,days = _duration$days === void 0 ? 0 : _duration$days,_duration$hours = duration.hours,hours = _duration$hours === void 0 ? 0 : _duration$hours,_duration$minutes = duration.minutes,minutes = _duration$minutes === void 0 ? 0 : _duration$minutes,_duration$seconds = duration.seconds,seconds = _duration$seconds === void 0 ? 0 : _duration$seconds;
  1378. var _date = toDate(date);
  1379. var dateWithMonths = months || years ? addMonths(_date, months + years * 12) : _date;
  1380. var dateWithDays = days || weeks ? addDays(dateWithMonths, days + weeks * 7) : dateWithMonths;
  1381. var minutesToAdd = minutes + hours * 60;
  1382. var secondsToAdd = seconds + minutesToAdd * 60;
  1383. var msToAdd = secondsToAdd * 1000;
  1384. var finalDate = constructFrom(date, dateWithDays.getTime() + msToAdd);
  1385. return finalDate;
  1386. }
  1387. // lib/fp/_lib/convertToFP.mjs
  1388. function convertToFP(fn, arity) {var curriedArgs = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];
  1389. return curriedArgs.length >= arity ? fn.apply(void 0, _toConsumableArray(curriedArgs.slice(0, arity).reverse())) : function () {for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {args[_key] = arguments[_key];}return convertToFP(fn, arity, curriedArgs.concat(args));};
  1390. }
  1391. // lib/fp/add.mjs
  1392. var add3 = convertToFP(add, 2);
  1393. // lib/isSaturday.mjs
  1394. function isSaturday(date) {
  1395. return toDate(date).getDay() === 6;
  1396. }
  1397. // lib/isSunday.mjs
  1398. function isSunday(date) {
  1399. return toDate(date).getDay() === 0;
  1400. }
  1401. // lib/isWeekend.mjs
  1402. function isWeekend(date) {
  1403. var day = toDate(date).getDay();
  1404. return day === 0 || day === 6;
  1405. }
  1406. // lib/addBusinessDays.mjs
  1407. function addBusinessDays(date, amount) {
  1408. var _date = toDate(date);
  1409. var startedOnWeekend = isWeekend(_date);
  1410. if (isNaN(amount))
  1411. return constructFrom(date, NaN);
  1412. var hours = _date.getHours();
  1413. var sign = amount < 0 ? -1 : 1;
  1414. var fullWeeks = Math.trunc(amount / 5);
  1415. _date.setDate(_date.getDate() + fullWeeks * 7);
  1416. var restDays = Math.abs(amount % 5);
  1417. while (restDays > 0) {
  1418. _date.setDate(_date.getDate() + sign);
  1419. if (!isWeekend(_date))
  1420. restDays -= 1;
  1421. }
  1422. if (startedOnWeekend && isWeekend(_date) && amount !== 0) {
  1423. if (isSaturday(_date))
  1424. _date.setDate(_date.getDate() + (sign < 0 ? 2 : -1));
  1425. if (isSunday(_date))
  1426. _date.setDate(_date.getDate() + (sign < 0 ? 1 : -2));
  1427. }
  1428. _date.setHours(hours);
  1429. return _date;
  1430. }
  1431. // lib/fp/addBusinessDays.mjs
  1432. var addBusinessDays3 = convertToFP(addBusinessDays, 2);
  1433. // lib/fp/addDays.mjs
  1434. var addDays4 = convertToFP(addDays, 2);
  1435. // lib/addMilliseconds.mjs
  1436. function addMilliseconds(date, amount) {
  1437. var timestamp = +toDate(date);
  1438. return constructFrom(date, timestamp + amount);
  1439. }
  1440. // lib/constants.mjs
  1441. var daysInWeek = 7;
  1442. var daysInYear = 365.2425;
  1443. var maxTime = Math.pow(10, 8) * 24 * 60 * 60 * 1000;
  1444. var minTime = -maxTime;
  1445. var millisecondsInWeek = 604800000;
  1446. var millisecondsInDay = 86400000;
  1447. var millisecondsInMinute = 60000;
  1448. var millisecondsInHour = 3600000;
  1449. var millisecondsInSecond = 1000;
  1450. var minutesInYear = 525600;
  1451. var minutesInMonth = 43200;
  1452. var minutesInDay = 1440;
  1453. var minutesInHour = 60;
  1454. var monthsInQuarter = 3;
  1455. var monthsInYear = 12;
  1456. var quartersInYear = 4;
  1457. var secondsInHour = 3600;
  1458. var secondsInMinute = 60;
  1459. var secondsInDay = secondsInHour * 24;
  1460. var secondsInWeek = secondsInDay * 7;
  1461. var secondsInYear = secondsInDay * daysInYear;
  1462. var secondsInMonth = secondsInYear / 12;
  1463. var secondsInQuarter = secondsInMonth * 3;
  1464. // lib/addHours.mjs
  1465. function addHours(date, amount) {
  1466. return addMilliseconds(date, amount * millisecondsInHour);
  1467. }
  1468. // lib/fp/addHours.mjs
  1469. var addHours3 = convertToFP(addHours, 2);
  1470. // lib/_lib/defaultOptions.mjs
  1471. function getDefaultOptions() {
  1472. return defaultOptions;
  1473. }
  1474. function setDefaultOptions(newOptions) {
  1475. defaultOptions = newOptions;
  1476. }
  1477. var defaultOptions = {};
  1478. // lib/startOfWeek.mjs
  1479. function startOfWeek(date, options) {var _ref, _ref2, _ref3, _options$weekStartsOn, _options$locale, _defaultOptions3$loca;
  1480. var defaultOptions3 = getDefaultOptions();
  1481. var weekStartsOn = (_ref = (_ref2 = (_ref3 = (_options$weekStartsOn = options === null || options === void 0 ? void 0 : options.weekStartsOn) !== null && _options$weekStartsOn !== void 0 ? _options$weekStartsOn : options === null || options === void 0 || (_options$locale = options.locale) === null || _options$locale === void 0 || (_options$locale = _options$locale.options) === null || _options$locale === void 0 ? void 0 : _options$locale.weekStartsOn) !== null && _ref3 !== void 0 ? _ref3 : defaultOptions3.weekStartsOn) !== null && _ref2 !== void 0 ? _ref2 : (_defaultOptions3$loca = defaultOptions3.locale) === null || _defaultOptions3$loca === void 0 || (_defaultOptions3$loca = _defaultOptions3$loca.options) === null || _defaultOptions3$loca === void 0 ? void 0 : _defaultOptions3$loca.weekStartsOn) !== null && _ref !== void 0 ? _ref : 0;
  1482. var _date = toDate(date);
  1483. var day = _date.getDay();
  1484. var diff = (day < weekStartsOn ? 7 : 0) + day - weekStartsOn;
  1485. _date.setDate(_date.getDate() - diff);
  1486. _date.setHours(0, 0, 0, 0);
  1487. return _date;
  1488. }
  1489. // lib/startOfISOWeek.mjs
  1490. function startOfISOWeek(date) {
  1491. return startOfWeek(date, { weekStartsOn: 1 });
  1492. }
  1493. // lib/getISOWeekYear.mjs
  1494. function getISOWeekYear(date) {
  1495. var _date = toDate(date);
  1496. var year = _date.getFullYear();
  1497. var fourthOfJanuaryOfNextYear = constructFrom(date, 0);
  1498. fourthOfJanuaryOfNextYear.setFullYear(year + 1, 0, 4);
  1499. fourthOfJanuaryOfNextYear.setHours(0, 0, 0, 0);
  1500. var startOfNextYear = startOfISOWeek(fourthOfJanuaryOfNextYear);
  1501. var fourthOfJanuaryOfThisYear = constructFrom(date, 0);
  1502. fourthOfJanuaryOfThisYear.setFullYear(year, 0, 4);
  1503. fourthOfJanuaryOfThisYear.setHours(0, 0, 0, 0);
  1504. var startOfThisYear = startOfISOWeek(fourthOfJanuaryOfThisYear);
  1505. if (_date.getTime() >= startOfNextYear.getTime()) {
  1506. return year + 1;
  1507. } else if (_date.getTime() >= startOfThisYear.getTime()) {
  1508. return year;
  1509. } else {
  1510. return year - 1;
  1511. }
  1512. }
  1513. // lib/startOfDay.mjs
  1514. function startOfDay(date) {
  1515. var _date = toDate(date);
  1516. _date.setHours(0, 0, 0, 0);
  1517. return _date;
  1518. }
  1519. // lib/_lib/getTimezoneOffsetInMilliseconds.mjs
  1520. function getTimezoneOffsetInMilliseconds(date) {
  1521. var _date = toDate(date);
  1522. var utcDate = new Date(Date.UTC(_date.getFullYear(), _date.getMonth(), _date.getDate(), _date.getHours(), _date.getMinutes(), _date.getSeconds(), _date.getMilliseconds()));
  1523. utcDate.setUTCFullYear(_date.getFullYear());
  1524. return +date - +utcDate;
  1525. }
  1526. // lib/differenceInCalendarDays.mjs
  1527. function differenceInCalendarDays(dateLeft, dateRight) {
  1528. var startOfDayLeft = startOfDay(dateLeft);
  1529. var startOfDayRight = startOfDay(dateRight);
  1530. var timestampLeft = +startOfDayLeft - getTimezoneOffsetInMilliseconds(startOfDayLeft);
  1531. var timestampRight = +startOfDayRight - getTimezoneOffsetInMilliseconds(startOfDayRight);
  1532. return Math.round((timestampLeft - timestampRight) / millisecondsInDay);
  1533. }
  1534. // lib/startOfISOWeekYear.mjs
  1535. function startOfISOWeekYear(date) {
  1536. var year = getISOWeekYear(date);
  1537. var fourthOfJanuary = constructFrom(date, 0);
  1538. fourthOfJanuary.setFullYear(year, 0, 4);
  1539. fourthOfJanuary.setHours(0, 0, 0, 0);
  1540. return startOfISOWeek(fourthOfJanuary);
  1541. }
  1542. // lib/setISOWeekYear.mjs
  1543. function setISOWeekYear(date, weekYear) {
  1544. var _date = toDate(date);
  1545. var diff = differenceInCalendarDays(_date, startOfISOWeekYear(_date));
  1546. var fourthOfJanuary = constructFrom(date, 0);
  1547. fourthOfJanuary.setFullYear(weekYear, 0, 4);
  1548. fourthOfJanuary.setHours(0, 0, 0, 0);
  1549. _date = startOfISOWeekYear(fourthOfJanuary);
  1550. _date.setDate(_date.getDate() + diff);
  1551. return _date;
  1552. }
  1553. // lib/addISOWeekYears.mjs
  1554. function addISOWeekYears(date, amount) {
  1555. return setISOWeekYear(date, getISOWeekYear(date) + amount);
  1556. }
  1557. // lib/fp/addISOWeekYears.mjs
  1558. var addISOWeekYears3 = convertToFP(addISOWeekYears, 2);
  1559. // lib/fp/addMilliseconds.mjs
  1560. var addMilliseconds4 = convertToFP(addMilliseconds, 2);
  1561. // lib/addMinutes.mjs
  1562. function addMinutes(date, amount) {
  1563. return addMilliseconds(date, amount * millisecondsInMinute);
  1564. }
  1565. // lib/fp/addMinutes.mjs
  1566. var addMinutes3 = convertToFP(addMinutes, 2);
  1567. // lib/fp/addMonths.mjs
  1568. var addMonths4 = convertToFP(addMonths, 2);
  1569. // lib/addQuarters.mjs
  1570. function addQuarters(date, amount) {
  1571. var months = amount * 3;
  1572. return addMonths(date, months);
  1573. }
  1574. // lib/fp/addQuarters.mjs
  1575. var addQuarters3 = convertToFP(addQuarters, 2);
  1576. // lib/addSeconds.mjs
  1577. function addSeconds(date, amount) {
  1578. return addMilliseconds(date, amount * 1000);
  1579. }
  1580. // lib/fp/addSeconds.mjs
  1581. var addSeconds3 = convertToFP(addSeconds, 2);
  1582. // lib/addWeeks.mjs
  1583. function addWeeks(date, amount) {
  1584. var days = amount * 7;
  1585. return addDays(date, days);
  1586. }
  1587. // lib/fp/addWeeks.mjs
  1588. var addWeeks3 = convertToFP(addWeeks, 2);
  1589. // lib/addYears.mjs
  1590. function addYears(date, amount) {
  1591. return addMonths(date, amount * 12);
  1592. }
  1593. // lib/fp/addYears.mjs
  1594. var addYears3 = convertToFP(addYears, 2);
  1595. // lib/areIntervalsOverlapping.mjs
  1596. function areIntervalsOverlapping(intervalLeft, intervalRight, options) {
  1597. var _sort = [
  1598. +toDate(intervalLeft.start),
  1599. +toDate(intervalLeft.end)].
  1600. sort(function (a, b) {return a - b;}),_sort2 = _slicedToArray(_sort, 2),leftStartTime = _sort2[0],leftEndTime = _sort2[1];
  1601. var _sort3 = [
  1602. +toDate(intervalRight.start),
  1603. +toDate(intervalRight.end)].
  1604. sort(function (a, b) {return a - b;}),_sort4 = _slicedToArray(_sort3, 2),rightStartTime = _sort4[0],rightEndTime = _sort4[1];
  1605. if (options !== null && options !== void 0 && options.inclusive)
  1606. return leftStartTime <= rightEndTime && rightStartTime <= leftEndTime;
  1607. return leftStartTime < rightEndTime && rightStartTime < leftEndTime;
  1608. }
  1609. // lib/fp/areIntervalsOverlapping.mjs
  1610. var areIntervalsOverlapping3 = convertToFP(areIntervalsOverlapping, 2);
  1611. // lib/fp/areIntervalsOverlappingWithOptions.mjs
  1612. var _areIntervalsOverlappingWithOptions = convertToFP(areIntervalsOverlapping, 3);
  1613. // lib/max.mjs
  1614. function max(dates) {
  1615. var result;
  1616. dates.forEach(function (dirtyDate) {
  1617. var currentDate = toDate(dirtyDate);
  1618. if (result === undefined || result < currentDate || isNaN(Number(currentDate))) {
  1619. result = currentDate;
  1620. }
  1621. });
  1622. return result || new Date(NaN);
  1623. }
  1624. // lib/min.mjs
  1625. function min(dates) {
  1626. var result;
  1627. dates.forEach(function (dirtyDate) {
  1628. var date = toDate(dirtyDate);
  1629. if (!result || result > date || isNaN(+date)) {
  1630. result = date;
  1631. }
  1632. });
  1633. return result || new Date(NaN);
  1634. }
  1635. // lib/clamp.mjs
  1636. function clamp(date, interval) {
  1637. return min([max([date, interval.start]), interval.end]);
  1638. }
  1639. // lib/fp/clamp.mjs
  1640. var clamp3 = convertToFP(clamp, 2);
  1641. // lib/closestIndexTo.mjs
  1642. function closestIndexTo(dateToCompare, dates) {
  1643. var date = toDate(dateToCompare);
  1644. if (isNaN(Number(date)))
  1645. return NaN;
  1646. var timeToCompare = date.getTime();
  1647. var result;
  1648. var minDistance;
  1649. dates.forEach(function (dirtyDate, index) {
  1650. var currentDate = toDate(dirtyDate);
  1651. if (isNaN(Number(currentDate))) {
  1652. result = NaN;
  1653. minDistance = NaN;
  1654. return;
  1655. }
  1656. var distance = Math.abs(timeToCompare - currentDate.getTime());
  1657. if (result == null || distance < minDistance) {
  1658. result = index;
  1659. minDistance = distance;
  1660. }
  1661. });
  1662. return result;
  1663. }
  1664. // lib/fp/closestIndexTo.mjs
  1665. var closestIndexTo3 = convertToFP(closestIndexTo, 2);
  1666. // lib/closestTo.mjs
  1667. function closestTo(dateToCompare, dates) {
  1668. var date = toDate(dateToCompare);
  1669. if (isNaN(Number(date)))
  1670. return constructFrom(dateToCompare, NaN);
  1671. var timeToCompare = date.getTime();
  1672. var result;
  1673. var minDistance;
  1674. dates.forEach(function (dirtyDate) {
  1675. var currentDate = toDate(dirtyDate);
  1676. if (isNaN(Number(currentDate))) {
  1677. result = constructFrom(dateToCompare, NaN);
  1678. minDistance = NaN;
  1679. return;
  1680. }
  1681. var distance = Math.abs(timeToCompare - currentDate.getTime());
  1682. if (result == null || distance < minDistance) {
  1683. result = currentDate;
  1684. minDistance = distance;
  1685. }
  1686. });
  1687. return result;
  1688. }
  1689. // lib/fp/closestTo.mjs
  1690. var closestTo3 = convertToFP(closestTo, 2);
  1691. // lib/compareAsc.mjs
  1692. function compareAsc(dateLeft, dateRight) {
  1693. var _dateLeft = toDate(dateLeft);
  1694. var _dateRight = toDate(dateRight);
  1695. var diff = _dateLeft.getTime() - _dateRight.getTime();
  1696. if (diff < 0) {
  1697. return -1;
  1698. } else if (diff > 0) {
  1699. return 1;
  1700. } else {
  1701. return diff;
  1702. }
  1703. }
  1704. // lib/fp/compareAsc.mjs
  1705. var compareAsc3 = convertToFP(compareAsc, 2);
  1706. // lib/compareDesc.mjs
  1707. function compareDesc(dateLeft, dateRight) {
  1708. var _dateLeft = toDate(dateLeft);
  1709. var _dateRight = toDate(dateRight);
  1710. var diff = _dateLeft.getTime() - _dateRight.getTime();
  1711. if (diff > 0) {
  1712. return -1;
  1713. } else if (diff < 0) {
  1714. return 1;
  1715. } else {
  1716. return diff;
  1717. }
  1718. }
  1719. // lib/fp/compareDesc.mjs
  1720. var compareDesc3 = convertToFP(compareDesc, 2);
  1721. // lib/fp/constructFrom.mjs
  1722. var constructFrom12 = convertToFP(constructFrom, 2);
  1723. // lib/daysToWeeks.mjs
  1724. function daysToWeeks(days) {
  1725. var weeks = days / daysInWeek;
  1726. var result = Math.trunc(weeks);
  1727. return result === 0 ? 0 : result;
  1728. }
  1729. // lib/fp/daysToWeeks.mjs
  1730. var daysToWeeks3 = convertToFP(daysToWeeks, 1);
  1731. // lib/isSameDay.mjs
  1732. function isSameDay(dateLeft, dateRight) {
  1733. var dateLeftStartOfDay = startOfDay(dateLeft);
  1734. var dateRightStartOfDay = startOfDay(dateRight);
  1735. return +dateLeftStartOfDay === +dateRightStartOfDay;
  1736. }
  1737. // lib/isDate.mjs
  1738. function isDate(value) {
  1739. return value instanceof Date || _typeof(value) === "object" && Object.prototype.toString.call(value) === "[object Date]";
  1740. }
  1741. // lib/isValid.mjs
  1742. function isValid(date) {
  1743. if (!isDate(date) && typeof date !== "number") {
  1744. return false;
  1745. }
  1746. var _date = toDate(date);
  1747. return !isNaN(Number(_date));
  1748. }
  1749. // lib/differenceInBusinessDays.mjs
  1750. function differenceInBusinessDays(dateLeft, dateRight) {
  1751. var _dateLeft = toDate(dateLeft);
  1752. var _dateRight = toDate(dateRight);
  1753. if (!isValid(_dateLeft) || !isValid(_dateRight))
  1754. return NaN;
  1755. var calendarDifference = differenceInCalendarDays(_dateLeft, _dateRight);
  1756. var sign = calendarDifference < 0 ? -1 : 1;
  1757. var weeks = Math.trunc(calendarDifference / 7);
  1758. var result = weeks * 5;
  1759. _dateRight = addDays(_dateRight, weeks * 7);
  1760. while (!isSameDay(_dateLeft, _dateRight)) {
  1761. result += isWeekend(_dateRight) ? 0 : sign;
  1762. _dateRight = addDays(_dateRight, sign);
  1763. }
  1764. return result === 0 ? 0 : result;
  1765. }
  1766. // lib/fp/differenceInBusinessDays.mjs
  1767. var differenceInBusinessDays3 = convertToFP(differenceInBusinessDays, 2);
  1768. // lib/fp/differenceInCalendarDays.mjs
  1769. var differenceInCalendarDays5 = convertToFP(differenceInCalendarDays, 2);
  1770. // lib/differenceInCalendarISOWeekYears.mjs
  1771. function differenceInCalendarISOWeekYears(dateLeft, dateRight) {
  1772. return getISOWeekYear(dateLeft) - getISOWeekYear(dateRight);
  1773. }
  1774. // lib/fp/differenceInCalendarISOWeekYears.mjs
  1775. var differenceInCalendarISOWeekYears3 = convertToFP(differenceInCalendarISOWeekYears, 2);
  1776. // lib/differenceInCalendarISOWeeks.mjs
  1777. function differenceInCalendarISOWeeks(dateLeft, dateRight) {
  1778. var startOfISOWeekLeft = startOfISOWeek(dateLeft);
  1779. var startOfISOWeekRight = startOfISOWeek(dateRight);
  1780. var timestampLeft = +startOfISOWeekLeft - getTimezoneOffsetInMilliseconds(startOfISOWeekLeft);
  1781. var timestampRight = +startOfISOWeekRight - getTimezoneOffsetInMilliseconds(startOfISOWeekRight);
  1782. return Math.round((timestampLeft - timestampRight) / millisecondsInWeek);
  1783. }
  1784. // lib/fp/differenceInCalendarISOWeeks.mjs
  1785. var differenceInCalendarISOWeeks3 = convertToFP(differenceInCalendarISOWeeks, 2);
  1786. // lib/differenceInCalendarMonths.mjs
  1787. function differenceInCalendarMonths(dateLeft, dateRight) {
  1788. var _dateLeft = toDate(dateLeft);
  1789. var _dateRight = toDate(dateRight);
  1790. var yearDiff = _dateLeft.getFullYear() - _dateRight.getFullYear();
  1791. var monthDiff = _dateLeft.getMonth() - _dateRight.getMonth();
  1792. return yearDiff * 12 + monthDiff;
  1793. }
  1794. // lib/fp/differenceInCalendarMonths.mjs
  1795. var differenceInCalendarMonths3 = convertToFP(differenceInCalendarMonths, 2);
  1796. // lib/getQuarter.mjs
  1797. function getQuarter(date) {
  1798. var _date = toDate(date);
  1799. var quarter = Math.trunc(_date.getMonth() / 3) + 1;
  1800. return quarter;
  1801. }
  1802. // lib/differenceInCalendarQuarters.mjs
  1803. function differenceInCalendarQuarters(dateLeft, dateRight) {
  1804. var _dateLeft = toDate(dateLeft);
  1805. var _dateRight = toDate(dateRight);
  1806. var yearDiff = _dateLeft.getFullYear() - _dateRight.getFullYear();
  1807. var quarterDiff = getQuarter(_dateLeft) - getQuarter(_dateRight);
  1808. return yearDiff * 4 + quarterDiff;
  1809. }
  1810. // lib/fp/differenceInCalendarQuarters.mjs
  1811. var differenceInCalendarQuarters3 = convertToFP(differenceInCalendarQuarters, 2);
  1812. // lib/differenceInCalendarWeeks.mjs
  1813. function differenceInCalendarWeeks(dateLeft, dateRight, options) {
  1814. var startOfWeekLeft = startOfWeek(dateLeft, options);
  1815. var startOfWeekRight = startOfWeek(dateRight, options);
  1816. var timestampLeft = +startOfWeekLeft - getTimezoneOffsetInMilliseconds(startOfWeekLeft);
  1817. var timestampRight = +startOfWeekRight - getTimezoneOffsetInMilliseconds(startOfWeekRight);
  1818. return Math.round((timestampLeft - timestampRight) / millisecondsInWeek);
  1819. }
  1820. // lib/fp/differenceInCalendarWeeks.mjs
  1821. var differenceInCalendarWeeks3 = convertToFP(differenceInCalendarWeeks, 2);
  1822. // lib/fp/differenceInCalendarWeeksWithOptions.mjs
  1823. var _differenceInCalendarWeeksWithOptions = convertToFP(differenceInCalendarWeeks, 3);
  1824. // lib/differenceInCalendarYears.mjs
  1825. function differenceInCalendarYears(dateLeft, dateRight) {
  1826. var _dateLeft = toDate(dateLeft);
  1827. var _dateRight = toDate(dateRight);
  1828. return _dateLeft.getFullYear() - _dateRight.getFullYear();
  1829. }
  1830. // lib/fp/differenceInCalendarYears.mjs
  1831. var differenceInCalendarYears3 = convertToFP(differenceInCalendarYears, 2);
  1832. // lib/differenceInDays.mjs
  1833. function differenceInDays(dateLeft, dateRight) {
  1834. var _dateLeft = toDate(dateLeft);
  1835. var _dateRight = toDate(dateRight);
  1836. var sign = compareLocalAsc(_dateLeft, _dateRight);
  1837. var difference = Math.abs(differenceInCalendarDays(_dateLeft, _dateRight));
  1838. _dateLeft.setDate(_dateLeft.getDate() - sign * difference);
  1839. var isLastDayNotFull = Number(compareLocalAsc(_dateLeft, _dateRight) === -sign);
  1840. var result = sign * (difference - isLastDayNotFull);
  1841. return result === 0 ? 0 : result;
  1842. }
  1843. var compareLocalAsc = function compareLocalAsc(dateLeft, dateRight) {
  1844. var diff = dateLeft.getFullYear() - dateRight.getFullYear() || dateLeft.getMonth() - dateRight.getMonth() || dateLeft.getDate() - dateRight.getDate() || dateLeft.getHours() - dateRight.getHours() || dateLeft.getMinutes() - dateRight.getMinutes() || dateLeft.getSeconds() - dateRight.getSeconds() || dateLeft.getMilliseconds() - dateRight.getMilliseconds();
  1845. if (diff < 0) {
  1846. return -1;
  1847. } else if (diff > 0) {
  1848. return 1;
  1849. } else {
  1850. return diff;
  1851. }
  1852. };
  1853. // lib/fp/differenceInDays.mjs
  1854. var differenceInDays3 = convertToFP(differenceInDays, 2);
  1855. // lib/_lib/getRoundingMethod.mjs
  1856. function getRoundingMethod(method) {
  1857. return function (number) {
  1858. var round = method ? Math[method] : Math.trunc;
  1859. var result = round(number);
  1860. return result === 0 ? 0 : result;
  1861. };
  1862. }
  1863. // lib/differenceInMilliseconds.mjs
  1864. function differenceInMilliseconds(dateLeft, dateRight) {
  1865. return +toDate(dateLeft) - +toDate(dateRight);
  1866. }
  1867. // lib/differenceInHours.mjs
  1868. function differenceInHours(dateLeft, dateRight, options) {
  1869. var diff = differenceInMilliseconds(dateLeft, dateRight) / millisecondsInHour;
  1870. return getRoundingMethod(options === null || options === void 0 ? void 0 : options.roundingMethod)(diff);
  1871. }
  1872. // lib/fp/differenceInHours.mjs
  1873. var differenceInHours3 = convertToFP(differenceInHours, 2);
  1874. // lib/fp/differenceInHoursWithOptions.mjs
  1875. var _differenceInHoursWithOptions = convertToFP(differenceInHours, 3);
  1876. // lib/subISOWeekYears.mjs
  1877. function subISOWeekYears(date, amount) {
  1878. return addISOWeekYears(date, -amount);
  1879. }
  1880. // lib/differenceInISOWeekYears.mjs
  1881. function differenceInISOWeekYears(dateLeft, dateRight) {
  1882. var _dateLeft = toDate(dateLeft);
  1883. var _dateRight = toDate(dateRight);
  1884. var sign = compareAsc(_dateLeft, _dateRight);
  1885. var difference = Math.abs(differenceInCalendarISOWeekYears(_dateLeft, _dateRight));
  1886. _dateLeft = subISOWeekYears(_dateLeft, sign * difference);
  1887. var isLastISOWeekYearNotFull = Number(compareAsc(_dateLeft, _dateRight) === -sign);
  1888. var result = sign * (difference - isLastISOWeekYearNotFull);
  1889. return result === 0 ? 0 : result;
  1890. }
  1891. // lib/fp/differenceInISOWeekYears.mjs
  1892. var differenceInISOWeekYears3 = convertToFP(differenceInISOWeekYears, 2);
  1893. // lib/fp/differenceInMilliseconds.mjs
  1894. var differenceInMilliseconds4 = convertToFP(differenceInMilliseconds, 2);
  1895. // lib/differenceInMinutes.mjs
  1896. function differenceInMinutes(dateLeft, dateRight, options) {
  1897. var diff = differenceInMilliseconds(dateLeft, dateRight) / millisecondsInMinute;
  1898. return getRoundingMethod(options === null || options === void 0 ? void 0 : options.roundingMethod)(diff);
  1899. }
  1900. // lib/fp/differenceInMinutes.mjs
  1901. var differenceInMinutes3 = convertToFP(differenceInMinutes, 2);
  1902. // lib/fp/differenceInMinutesWithOptions.mjs
  1903. var _differenceInMinutesWithOptions = convertToFP(differenceInMinutes, 3);
  1904. // lib/endOfDay.mjs
  1905. function endOfDay(date) {
  1906. var _date = toDate(date);
  1907. _date.setHours(23, 59, 59, 999);
  1908. return _date;
  1909. }
  1910. // lib/endOfMonth.mjs
  1911. function endOfMonth(date) {
  1912. var _date = toDate(date);
  1913. var month = _date.getMonth();
  1914. _date.setFullYear(_date.getFullYear(), month + 1, 0);
  1915. _date.setHours(23, 59, 59, 999);
  1916. return _date;
  1917. }
  1918. // lib/isLastDayOfMonth.mjs
  1919. function isLastDayOfMonth(date) {
  1920. var _date = toDate(date);
  1921. return +endOfDay(_date) === +endOfMonth(_date);
  1922. }
  1923. // lib/differenceInMonths.mjs
  1924. function differenceInMonths(dateLeft, dateRight) {
  1925. var _dateLeft = toDate(dateLeft);
  1926. var _dateRight = toDate(dateRight);
  1927. var sign = compareAsc(_dateLeft, _dateRight);
  1928. var difference = Math.abs(differenceInCalendarMonths(_dateLeft, _dateRight));
  1929. var result;
  1930. if (difference < 1) {
  1931. result = 0;
  1932. } else {
  1933. if (_dateLeft.getMonth() === 1 && _dateLeft.getDate() > 27) {
  1934. _dateLeft.setDate(30);
  1935. }
  1936. _dateLeft.setMonth(_dateLeft.getMonth() - sign * difference);
  1937. var isLastMonthNotFull = compareAsc(_dateLeft, _dateRight) === -sign;
  1938. if (isLastDayOfMonth(toDate(dateLeft)) && difference === 1 && compareAsc(dateLeft, _dateRight) === 1) {
  1939. isLastMonthNotFull = false;
  1940. }
  1941. result = sign * (difference - Number(isLastMonthNotFull));
  1942. }
  1943. return result === 0 ? 0 : result;
  1944. }
  1945. // lib/fp/differenceInMonths.mjs
  1946. var differenceInMonths3 = convertToFP(differenceInMonths, 2);
  1947. // lib/differenceInQuarters.mjs
  1948. function differenceInQuarters(dateLeft, dateRight, options) {
  1949. var diff = differenceInMonths(dateLeft, dateRight) / 3;
  1950. return getRoundingMethod(options === null || options === void 0 ? void 0 : options.roundingMethod)(diff);
  1951. }
  1952. // lib/fp/differenceInQuarters.mjs
  1953. var differenceInQuarters3 = convertToFP(differenceInQuarters, 2);
  1954. // lib/fp/differenceInQuartersWithOptions.mjs
  1955. var _differenceInQuartersWithOptions = convertToFP(differenceInQuarters, 3);
  1956. // lib/differenceInSeconds.mjs
  1957. function differenceInSeconds(dateLeft, dateRight, options) {
  1958. var diff = differenceInMilliseconds(dateLeft, dateRight) / 1000;
  1959. return getRoundingMethod(options === null || options === void 0 ? void 0 : options.roundingMethod)(diff);
  1960. }
  1961. // lib/fp/differenceInSeconds.mjs
  1962. var differenceInSeconds3 = convertToFP(differenceInSeconds, 2);
  1963. // lib/fp/differenceInSecondsWithOptions.mjs
  1964. var _differenceInSecondsWithOptions = convertToFP(differenceInSeconds, 3);
  1965. // lib/differenceInWeeks.mjs
  1966. function differenceInWeeks(dateLeft, dateRight, options) {
  1967. var diff = differenceInDays(dateLeft, dateRight) / 7;
  1968. return getRoundingMethod(options === null || options === void 0 ? void 0 : options.roundingMethod)(diff);
  1969. }
  1970. // lib/fp/differenceInWeeks.mjs
  1971. var differenceInWeeks3 = convertToFP(differenceInWeeks, 2);
  1972. // lib/fp/differenceInWeeksWithOptions.mjs
  1973. var _differenceInWeeksWithOptions = convertToFP(differenceInWeeks, 3);
  1974. // lib/differenceInYears.mjs
  1975. function differenceInYears(dateLeft, dateRight) {
  1976. var _dateLeft = toDate(dateLeft);
  1977. var _dateRight = toDate(dateRight);
  1978. var sign = compareAsc(_dateLeft, _dateRight);
  1979. var difference = Math.abs(differenceInCalendarYears(_dateLeft, _dateRight));
  1980. _dateLeft.setFullYear(1584);
  1981. _dateRight.setFullYear(1584);
  1982. var isLastYearNotFull = compareAsc(_dateLeft, _dateRight) === -sign;
  1983. var result = sign * (difference - +isLastYearNotFull);
  1984. return result === 0 ? 0 : result;
  1985. }
  1986. // lib/fp/differenceInYears.mjs
  1987. var differenceInYears3 = convertToFP(differenceInYears, 2);
  1988. // lib/eachDayOfInterval.mjs
  1989. function eachDayOfInterval(interval, options) {var _options$step;
  1990. var startDate = toDate(interval.start);
  1991. var endDate = toDate(interval.end);
  1992. var reversed = +startDate > +endDate;
  1993. var endTime = reversed ? +startDate : +endDate;
  1994. var currentDate = reversed ? endDate : startDate;
  1995. currentDate.setHours(0, 0, 0, 0);
  1996. var step = (_options$step = options === null || options === void 0 ? void 0 : options.step) !== null && _options$step !== void 0 ? _options$step : 1;
  1997. if (!step)
  1998. return [];
  1999. if (step < 0) {
  2000. step = -step;
  2001. reversed = !reversed;
  2002. }
  2003. var dates = [];
  2004. while (+currentDate <= endTime) {
  2005. dates.push(toDate(currentDate));
  2006. currentDate.setDate(currentDate.getDate() + step);
  2007. currentDate.setHours(0, 0, 0, 0);
  2008. }
  2009. return reversed ? dates.reverse() : dates;
  2010. }
  2011. // lib/fp/eachDayOfInterval.mjs
  2012. var eachDayOfInterval3 = convertToFP(eachDayOfInterval, 1);
  2013. // lib/fp/eachDayOfIntervalWithOptions.mjs
  2014. var _eachDayOfIntervalWithOptions = convertToFP(eachDayOfInterval, 2);
  2015. // lib/eachHourOfInterval.mjs
  2016. function eachHourOfInterval(interval, options) {var _options$step2;
  2017. var startDate = toDate(interval.start);
  2018. var endDate = toDate(interval.end);
  2019. var reversed = +startDate > +endDate;
  2020. var endTime = reversed ? +startDate : +endDate;
  2021. var currentDate = reversed ? endDate : startDate;
  2022. currentDate.setMinutes(0, 0, 0);
  2023. var step = (_options$step2 = options === null || options === void 0 ? void 0 : options.step) !== null && _options$step2 !== void 0 ? _options$step2 : 1;
  2024. if (!step)
  2025. return [];
  2026. if (step < 0) {
  2027. step = -step;
  2028. reversed = !reversed;
  2029. }
  2030. var dates = [];
  2031. while (+currentDate <= endTime) {
  2032. dates.push(toDate(currentDate));
  2033. currentDate = addHours(currentDate, step);
  2034. }
  2035. return reversed ? dates.reverse() : dates;
  2036. }
  2037. // lib/fp/eachHourOfInterval.mjs
  2038. var eachHourOfInterval3 = convertToFP(eachHourOfInterval, 1);
  2039. // lib/fp/eachHourOfIntervalWithOptions.mjs
  2040. var _eachHourOfIntervalWithOptions = convertToFP(eachHourOfInterval, 2);
  2041. // lib/startOfMinute.mjs
  2042. function startOfMinute(date) {
  2043. var _date = toDate(date);
  2044. _date.setSeconds(0, 0);
  2045. return _date;
  2046. }
  2047. // lib/eachMinuteOfInterval.mjs
  2048. function eachMinuteOfInterval(interval, options) {var _options$step3;
  2049. var startDate = startOfMinute(toDate(interval.start));
  2050. var endDate = toDate(interval.end);
  2051. var reversed = +startDate > +endDate;
  2052. var endTime = reversed ? +startDate : +endDate;
  2053. var currentDate = reversed ? endDate : startDate;
  2054. var step = (_options$step3 = options === null || options === void 0 ? void 0 : options.step) !== null && _options$step3 !== void 0 ? _options$step3 : 1;
  2055. if (!step)
  2056. return [];
  2057. if (step < 0) {
  2058. step = -step;
  2059. reversed = !reversed;
  2060. }
  2061. var dates = [];
  2062. while (+currentDate <= endTime) {
  2063. dates.push(toDate(currentDate));
  2064. currentDate = addMinutes(currentDate, step);
  2065. }
  2066. return reversed ? dates.reverse() : dates;
  2067. }
  2068. // lib/fp/eachMinuteOfInterval.mjs
  2069. var eachMinuteOfInterval3 = convertToFP(eachMinuteOfInterval, 1);
  2070. // lib/fp/eachMinuteOfIntervalWithOptions.mjs
  2071. var _eachMinuteOfIntervalWithOptions = convertToFP(eachMinuteOfInterval, 2);
  2072. // lib/eachMonthOfInterval.mjs
  2073. function eachMonthOfInterval(interval, options) {var _options$step4;
  2074. var startDate = toDate(interval.start);
  2075. var endDate = toDate(interval.end);
  2076. var reversed = +startDate > +endDate;
  2077. var endTime = reversed ? +startDate : +endDate;
  2078. var currentDate = reversed ? endDate : startDate;
  2079. currentDate.setHours(0, 0, 0, 0);
  2080. currentDate.setDate(1);
  2081. var step = (_options$step4 = options === null || options === void 0 ? void 0 : options.step) !== null && _options$step4 !== void 0 ? _options$step4 : 1;
  2082. if (!step)
  2083. return [];
  2084. if (step < 0) {
  2085. step = -step;
  2086. reversed = !reversed;
  2087. }
  2088. var dates = [];
  2089. while (+currentDate <= endTime) {
  2090. dates.push(toDate(currentDate));
  2091. currentDate.setMonth(currentDate.getMonth() + step);
  2092. }
  2093. return reversed ? dates.reverse() : dates;
  2094. }
  2095. // lib/fp/eachMonthOfInterval.mjs
  2096. var eachMonthOfInterval3 = convertToFP(eachMonthOfInterval, 1);
  2097. // lib/fp/eachMonthOfIntervalWithOptions.mjs
  2098. var _eachMonthOfIntervalWithOptions = convertToFP(eachMonthOfInterval, 2);
  2099. // lib/startOfQuarter.mjs
  2100. function startOfQuarter(date) {
  2101. var _date = toDate(date);
  2102. var currentMonth = _date.getMonth();
  2103. var month = currentMonth - currentMonth % 3;
  2104. _date.setMonth(month, 1);
  2105. _date.setHours(0, 0, 0, 0);
  2106. return _date;
  2107. }
  2108. // lib/eachQuarterOfInterval.mjs
  2109. function eachQuarterOfInterval(interval, options) {var _options$step5;
  2110. var startDate = toDate(interval.start);
  2111. var endDate = toDate(interval.end);
  2112. var reversed = +startDate > +endDate;
  2113. var endTime = reversed ? +startOfQuarter(startDate) : +startOfQuarter(endDate);
  2114. var currentDate = reversed ? startOfQuarter(endDate) : startOfQuarter(startDate);
  2115. var step = (_options$step5 = options === null || options === void 0 ? void 0 : options.step) !== null && _options$step5 !== void 0 ? _options$step5 : 1;
  2116. if (!step)
  2117. return [];
  2118. if (step < 0) {
  2119. step = -step;
  2120. reversed = !reversed;
  2121. }
  2122. var dates = [];
  2123. while (+currentDate <= endTime) {
  2124. dates.push(toDate(currentDate));
  2125. currentDate = addQuarters(currentDate, step);
  2126. }
  2127. return reversed ? dates.reverse() : dates;
  2128. }
  2129. // lib/fp/eachQuarterOfInterval.mjs
  2130. var eachQuarterOfInterval3 = convertToFP(eachQuarterOfInterval, 1);
  2131. // lib/fp/eachQuarterOfIntervalWithOptions.mjs
  2132. var _eachQuarterOfIntervalWithOptions = convertToFP(eachQuarterOfInterval, 2);
  2133. // lib/eachWeekOfInterval.mjs
  2134. function eachWeekOfInterval(interval, options) {var _options$step6;
  2135. var startDate = toDate(interval.start);
  2136. var endDate = toDate(interval.end);
  2137. var reversed = +startDate > +endDate;
  2138. var startDateWeek = reversed ? startOfWeek(endDate, options) : startOfWeek(startDate, options);
  2139. var endDateWeek = reversed ? startOfWeek(startDate, options) : startOfWeek(endDate, options);
  2140. startDateWeek.setHours(15);
  2141. endDateWeek.setHours(15);
  2142. var endTime = +endDateWeek.getTime();
  2143. var currentDate = startDateWeek;
  2144. var step = (_options$step6 = options === null || options === void 0 ? void 0 : options.step) !== null && _options$step6 !== void 0 ? _options$step6 : 1;
  2145. if (!step)
  2146. return [];
  2147. if (step < 0) {
  2148. step = -step;
  2149. reversed = !reversed;
  2150. }
  2151. var dates = [];
  2152. while (+currentDate <= endTime) {
  2153. currentDate.setHours(0);
  2154. dates.push(toDate(currentDate));
  2155. currentDate = addWeeks(currentDate, step);
  2156. currentDate.setHours(15);
  2157. }
  2158. return reversed ? dates.reverse() : dates;
  2159. }
  2160. // lib/fp/eachWeekOfInterval.mjs
  2161. var eachWeekOfInterval3 = convertToFP(eachWeekOfInterval, 1);
  2162. // lib/fp/eachWeekOfIntervalWithOptions.mjs
  2163. var _eachWeekOfIntervalWithOptions = convertToFP(eachWeekOfInterval, 2);
  2164. // lib/eachWeekendOfInterval.mjs
  2165. function eachWeekendOfInterval(interval) {
  2166. var dateInterval = eachDayOfInterval(interval);
  2167. var weekends = [];
  2168. var index = 0;
  2169. while (index < dateInterval.length) {
  2170. var date = dateInterval[index++];
  2171. if (isWeekend(date))
  2172. weekends.push(date);
  2173. }
  2174. return weekends;
  2175. }
  2176. // lib/fp/eachWeekendOfInterval.mjs
  2177. var eachWeekendOfInterval3 = convertToFP(eachWeekendOfInterval, 1);
  2178. // lib/startOfMonth.mjs
  2179. function startOfMonth(date) {
  2180. var _date = toDate(date);
  2181. _date.setDate(1);
  2182. _date.setHours(0, 0, 0, 0);
  2183. return _date;
  2184. }
  2185. // lib/eachWeekendOfMonth.mjs
  2186. function eachWeekendOfMonth(date) {
  2187. var start = startOfMonth(date);
  2188. var end = endOfMonth(date);
  2189. return eachWeekendOfInterval({ start: start, end: end });
  2190. }
  2191. // lib/fp/eachWeekendOfMonth.mjs
  2192. var eachWeekendOfMonth3 = convertToFP(eachWeekendOfMonth, 1);
  2193. // lib/endOfYear.mjs
  2194. function endOfYear(date) {
  2195. var _date = toDate(date);
  2196. var year = _date.getFullYear();
  2197. _date.setFullYear(year + 1, 0, 0);
  2198. _date.setHours(23, 59, 59, 999);
  2199. return _date;
  2200. }
  2201. // lib/startOfYear.mjs
  2202. function startOfYear(date) {
  2203. var cleanDate = toDate(date);
  2204. var _date = constructFrom(date, 0);
  2205. _date.setFullYear(cleanDate.getFullYear(), 0, 1);
  2206. _date.setHours(0, 0, 0, 0);
  2207. return _date;
  2208. }
  2209. // lib/eachWeekendOfYear.mjs
  2210. function eachWeekendOfYear(date) {
  2211. var start = startOfYear(date);
  2212. var end = endOfYear(date);
  2213. return eachWeekendOfInterval({ start: start, end: end });
  2214. }
  2215. // lib/fp/eachWeekendOfYear.mjs
  2216. var eachWeekendOfYear3 = convertToFP(eachWeekendOfYear, 1);
  2217. // lib/eachYearOfInterval.mjs
  2218. function eachYearOfInterval(interval, options) {var _options$step7;
  2219. var startDate = toDate(interval.start);
  2220. var endDate = toDate(interval.end);
  2221. var reversed = +startDate > +endDate;
  2222. var endTime = reversed ? +startDate : +endDate;
  2223. var currentDate = reversed ? endDate : startDate;
  2224. currentDate.setHours(0, 0, 0, 0);
  2225. currentDate.setMonth(0, 1);
  2226. var step = (_options$step7 = options === null || options === void 0 ? void 0 : options.step) !== null && _options$step7 !== void 0 ? _options$step7 : 1;
  2227. if (!step)
  2228. return [];
  2229. if (step < 0) {
  2230. step = -step;
  2231. reversed = !reversed;
  2232. }
  2233. var dates = [];
  2234. while (+currentDate <= endTime) {
  2235. dates.push(toDate(currentDate));
  2236. currentDate.setFullYear(currentDate.getFullYear() + step);
  2237. }
  2238. return reversed ? dates.reverse() : dates;
  2239. }
  2240. // lib/fp/eachYearOfInterval.mjs
  2241. var eachYearOfInterval3 = convertToFP(eachYearOfInterval, 1);
  2242. // lib/fp/eachYearOfIntervalWithOptions.mjs
  2243. var _eachYearOfIntervalWithOptions = convertToFP(eachYearOfInterval, 2);
  2244. // lib/fp/endOfDay.mjs
  2245. var endOfDay4 = convertToFP(endOfDay, 1);
  2246. // lib/endOfDecade.mjs
  2247. function endOfDecade(date) {
  2248. var _date = toDate(date);
  2249. var year = _date.getFullYear();
  2250. var decade = 9 + Math.floor(year / 10) * 10;
  2251. _date.setFullYear(decade, 11, 31);
  2252. _date.setHours(23, 59, 59, 999);
  2253. return _date;
  2254. }
  2255. // lib/fp/endOfDecade.mjs
  2256. var endOfDecade3 = convertToFP(endOfDecade, 1);
  2257. // lib/endOfHour.mjs
  2258. function endOfHour(date) {
  2259. var _date = toDate(date);
  2260. _date.setMinutes(59, 59, 999);
  2261. return _date;
  2262. }
  2263. // lib/fp/endOfHour.mjs
  2264. var endOfHour3 = convertToFP(endOfHour, 1);
  2265. // lib/endOfWeek.mjs
  2266. function endOfWeek(date, options) {var _ref4, _ref5, _ref6, _options$weekStartsOn2, _options$locale2, _defaultOptions4$loca;
  2267. var defaultOptions4 = getDefaultOptions();
  2268. var weekStartsOn = (_ref4 = (_ref5 = (_ref6 = (_options$weekStartsOn2 = options === null || options === void 0 ? void 0 : options.weekStartsOn) !== null && _options$weekStartsOn2 !== void 0 ? _options$weekStartsOn2 : options === null || options === void 0 || (_options$locale2 = options.locale) === null || _options$locale2 === void 0 || (_options$locale2 = _options$locale2.options) === null || _options$locale2 === void 0 ? void 0 : _options$locale2.weekStartsOn) !== null && _ref6 !== void 0 ? _ref6 : defaultOptions4.weekStartsOn) !== null && _ref5 !== void 0 ? _ref5 : (_defaultOptions4$loca = defaultOptions4.locale) === null || _defaultOptions4$loca === void 0 || (_defaultOptions4$loca = _defaultOptions4$loca.options) === null || _defaultOptions4$loca === void 0 ? void 0 : _defaultOptions4$loca.weekStartsOn) !== null && _ref4 !== void 0 ? _ref4 : 0;
  2269. var _date = toDate(date);
  2270. var day = _date.getDay();
  2271. var diff = (day < weekStartsOn ? -7 : 0) + 6 - (day - weekStartsOn);
  2272. _date.setDate(_date.getDate() + diff);
  2273. _date.setHours(23, 59, 59, 999);
  2274. return _date;
  2275. }
  2276. // lib/endOfISOWeek.mjs
  2277. function endOfISOWeek(date) {
  2278. return endOfWeek(date, { weekStartsOn: 1 });
  2279. }
  2280. // lib/fp/endOfISOWeek.mjs
  2281. var endOfISOWeek3 = convertToFP(endOfISOWeek, 1);
  2282. // lib/endOfISOWeekYear.mjs
  2283. function endOfISOWeekYear(date) {
  2284. var year = getISOWeekYear(date);
  2285. var fourthOfJanuaryOfNextYear = constructFrom(date, 0);
  2286. fourthOfJanuaryOfNextYear.setFullYear(year + 1, 0, 4);
  2287. fourthOfJanuaryOfNextYear.setHours(0, 0, 0, 0);
  2288. var _date = startOfISOWeek(fourthOfJanuaryOfNextYear);
  2289. _date.setMilliseconds(_date.getMilliseconds() - 1);
  2290. return _date;
  2291. }
  2292. // lib/fp/endOfISOWeekYear.mjs
  2293. var endOfISOWeekYear3 = convertToFP(endOfISOWeekYear, 1);
  2294. // lib/endOfMinute.mjs
  2295. function endOfMinute(date) {
  2296. var _date = toDate(date);
  2297. _date.setSeconds(59, 999);
  2298. return _date;
  2299. }
  2300. // lib/fp/endOfMinute.mjs
  2301. var endOfMinute3 = convertToFP(endOfMinute, 1);
  2302. // lib/fp/endOfMonth.mjs
  2303. var endOfMonth5 = convertToFP(endOfMonth, 1);
  2304. // lib/endOfQuarter.mjs
  2305. function endOfQuarter(date) {
  2306. var _date = toDate(date);
  2307. var currentMonth = _date.getMonth();
  2308. var month = currentMonth - currentMonth % 3 + 3;
  2309. _date.setMonth(month, 0);
  2310. _date.setHours(23, 59, 59, 999);
  2311. return _date;
  2312. }
  2313. // lib/fp/endOfQuarter.mjs
  2314. var endOfQuarter3 = convertToFP(endOfQuarter, 1);
  2315. // lib/endOfSecond.mjs
  2316. function endOfSecond(date) {
  2317. var _date = toDate(date);
  2318. _date.setMilliseconds(999);
  2319. return _date;
  2320. }
  2321. // lib/fp/endOfSecond.mjs
  2322. var endOfSecond3 = convertToFP(endOfSecond, 1);
  2323. // lib/fp/endOfWeek.mjs
  2324. var endOfWeek4 = convertToFP(endOfWeek, 1);
  2325. // lib/fp/endOfWeekWithOptions.mjs
  2326. var _endOfWeekWithOptions = convertToFP(endOfWeek, 2);
  2327. // lib/fp/endOfYear.mjs
  2328. var endOfYear4 = convertToFP(endOfYear, 1);
  2329. // lib/locale/en-US/_lib/formatDistance.mjs
  2330. var formatDistanceLocale = {
  2331. lessThanXSeconds: {
  2332. one: "less than a second",
  2333. other: "less than {{count}} seconds"
  2334. },
  2335. xSeconds: {
  2336. one: "1 second",
  2337. other: "{{count}} seconds"
  2338. },
  2339. halfAMinute: "half a minute",
  2340. lessThanXMinutes: {
  2341. one: "less than a minute",
  2342. other: "less than {{count}} minutes"
  2343. },
  2344. xMinutes: {
  2345. one: "1 minute",
  2346. other: "{{count}} minutes"
  2347. },
  2348. aboutXHours: {
  2349. one: "about 1 hour",
  2350. other: "about {{count}} hours"
  2351. },
  2352. xHours: {
  2353. one: "1 hour",
  2354. other: "{{count}} hours"
  2355. },
  2356. xDays: {
  2357. one: "1 day",
  2358. other: "{{count}} days"
  2359. },
  2360. aboutXWeeks: {
  2361. one: "about 1 week",
  2362. other: "about {{count}} weeks"
  2363. },
  2364. xWeeks: {
  2365. one: "1 week",
  2366. other: "{{count}} weeks"
  2367. },
  2368. aboutXMonths: {
  2369. one: "about 1 month",
  2370. other: "about {{count}} months"
  2371. },
  2372. xMonths: {
  2373. one: "1 month",
  2374. other: "{{count}} months"
  2375. },
  2376. aboutXYears: {
  2377. one: "about 1 year",
  2378. other: "about {{count}} years"
  2379. },
  2380. xYears: {
  2381. one: "1 year",
  2382. other: "{{count}} years"
  2383. },
  2384. overXYears: {
  2385. one: "over 1 year",
  2386. other: "over {{count}} years"
  2387. },
  2388. almostXYears: {
  2389. one: "almost 1 year",
  2390. other: "almost {{count}} years"
  2391. }
  2392. };
  2393. var formatDistance = function formatDistance(token, count, options) {
  2394. var result;
  2395. var tokenValue = formatDistanceLocale[token];
  2396. if (typeof tokenValue === "string") {
  2397. result = tokenValue;
  2398. } else if (count === 1) {
  2399. result = tokenValue.one;
  2400. } else {
  2401. result = tokenValue.other.replace("{{count}}", count.toString());
  2402. }
  2403. if (options !== null && options !== void 0 && options.addSuffix) {
  2404. if (options.comparison && options.comparison > 0) {
  2405. return "in " + result;
  2406. } else {
  2407. return result + " ago";
  2408. }
  2409. }
  2410. return result;
  2411. };
  2412. // lib/locale/_lib/buildFormatLongFn.mjs
  2413. function buildFormatLongFn(args) {
  2414. return function () {var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
  2415. var width = options.width ? String(options.width) : args.defaultWidth;
  2416. var format = args.formats[width] || args.formats[args.defaultWidth];
  2417. return format;
  2418. };
  2419. }
  2420. // lib/locale/en-US/_lib/formatLong.mjs
  2421. var dateFormats = {
  2422. full: "EEEE, MMMM do, y",
  2423. long: "MMMM do, y",
  2424. medium: "MMM d, y",
  2425. short: "MM/dd/yyyy"
  2426. };
  2427. var timeFormats = {
  2428. full: "h:mm:ss a zzzz",
  2429. long: "h:mm:ss a z",
  2430. medium: "h:mm:ss a",
  2431. short: "h:mm a"
  2432. };
  2433. var dateTimeFormats = {
  2434. full: "{{date}} 'at' {{time}}",
  2435. long: "{{date}} 'at' {{time}}",
  2436. medium: "{{date}}, {{time}}",
  2437. short: "{{date}}, {{time}}"
  2438. };
  2439. var formatLong = {
  2440. date: buildFormatLongFn({
  2441. formats: dateFormats,
  2442. defaultWidth: "full"
  2443. }),
  2444. time: buildFormatLongFn({
  2445. formats: timeFormats,
  2446. defaultWidth: "full"
  2447. }),
  2448. dateTime: buildFormatLongFn({
  2449. formats: dateTimeFormats,
  2450. defaultWidth: "full"
  2451. })
  2452. };
  2453. // lib/locale/en-US/_lib/formatRelative.mjs
  2454. var formatRelativeLocale = {
  2455. lastWeek: "'last' eeee 'at' p",
  2456. yesterday: "'yesterday at' p",
  2457. today: "'today at' p",
  2458. tomorrow: "'tomorrow at' p",
  2459. nextWeek: "eeee 'at' p",
  2460. other: "P"
  2461. };
  2462. var formatRelative = function formatRelative(token, _date, _baseDate, _options) {return formatRelativeLocale[token];};
  2463. // lib/locale/_lib/buildLocalizeFn.mjs
  2464. function buildLocalizeFn(args) {
  2465. return function (value, options) {
  2466. var context = options !== null && options !== void 0 && options.context ? String(options.context) : "standalone";
  2467. var valuesArray;
  2468. if (context === "formatting" && args.formattingValues) {
  2469. var defaultWidth = args.defaultFormattingWidth || args.defaultWidth;
  2470. var width = options !== null && options !== void 0 && options.width ? String(options.width) : defaultWidth;
  2471. valuesArray = args.formattingValues[width] || args.formattingValues[defaultWidth];
  2472. } else {
  2473. var _defaultWidth = args.defaultWidth;
  2474. var _width = options !== null && options !== void 0 && options.width ? String(options.width) : args.defaultWidth;
  2475. valuesArray = args.values[_width] || args.values[_defaultWidth];
  2476. }
  2477. var index = args.argumentCallback ? args.argumentCallback(value) : value;
  2478. return valuesArray[index];
  2479. };
  2480. }
  2481. // lib/locale/en-US/_lib/localize.mjs
  2482. var eraValues = {
  2483. narrow: ["B", "A"],
  2484. abbreviated: ["BC", "AD"],
  2485. wide: ["Before Christ", "Anno Domini"]
  2486. };
  2487. var quarterValues = {
  2488. narrow: ["1", "2", "3", "4"],
  2489. abbreviated: ["Q1", "Q2", "Q3", "Q4"],
  2490. wide: ["1st quarter", "2nd quarter", "3rd quarter", "4th quarter"]
  2491. };
  2492. var monthValues = {
  2493. narrow: ["J", "F", "M", "A", "M", "J", "J", "A", "S", "O", "N", "D"],
  2494. abbreviated: [
  2495. "Jan",
  2496. "Feb",
  2497. "Mar",
  2498. "Apr",
  2499. "May",
  2500. "Jun",
  2501. "Jul",
  2502. "Aug",
  2503. "Sep",
  2504. "Oct",
  2505. "Nov",
  2506. "Dec"],
  2507. wide: [
  2508. "January",
  2509. "February",
  2510. "March",
  2511. "April",
  2512. "May",
  2513. "June",
  2514. "July",
  2515. "August",
  2516. "September",
  2517. "October",
  2518. "November",
  2519. "December"]
  2520. };
  2521. var dayValues = {
  2522. narrow: ["S", "M", "T", "W", "T", "F", "S"],
  2523. short: ["Su", "Mo", "Tu", "We", "Th", "Fr", "Sa"],
  2524. abbreviated: ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"],
  2525. wide: [
  2526. "Sunday",
  2527. "Monday",
  2528. "Tuesday",
  2529. "Wednesday",
  2530. "Thursday",
  2531. "Friday",
  2532. "Saturday"]
  2533. };
  2534. var dayPeriodValues = {
  2535. narrow: {
  2536. am: "a",
  2537. pm: "p",
  2538. midnight: "mi",
  2539. noon: "n",
  2540. morning: "morning",
  2541. afternoon: "afternoon",
  2542. evening: "evening",
  2543. night: "night"
  2544. },
  2545. abbreviated: {
  2546. am: "AM",
  2547. pm: "PM",
  2548. midnight: "midnight",
  2549. noon: "noon",
  2550. morning: "morning",
  2551. afternoon: "afternoon",
  2552. evening: "evening",
  2553. night: "night"
  2554. },
  2555. wide: {
  2556. am: "a.m.",
  2557. pm: "p.m.",
  2558. midnight: "midnight",
  2559. noon: "noon",
  2560. morning: "morning",
  2561. afternoon: "afternoon",
  2562. evening: "evening",
  2563. night: "night"
  2564. }
  2565. };
  2566. var formattingDayPeriodValues = {
  2567. narrow: {
  2568. am: "a",
  2569. pm: "p",
  2570. midnight: "mi",
  2571. noon: "n",
  2572. morning: "in the morning",
  2573. afternoon: "in the afternoon",
  2574. evening: "in the evening",
  2575. night: "at night"
  2576. },
  2577. abbreviated: {
  2578. am: "AM",
  2579. pm: "PM",
  2580. midnight: "midnight",
  2581. noon: "noon",
  2582. morning: "in the morning",
  2583. afternoon: "in the afternoon",
  2584. evening: "in the evening",
  2585. night: "at night"
  2586. },
  2587. wide: {
  2588. am: "a.m.",
  2589. pm: "p.m.",
  2590. midnight: "midnight",
  2591. noon: "noon",
  2592. morning: "in the morning",
  2593. afternoon: "in the afternoon",
  2594. evening: "in the evening",
  2595. night: "at night"
  2596. }
  2597. };
  2598. var ordinalNumber = function ordinalNumber(dirtyNumber, _options) {
  2599. var number = Number(dirtyNumber);
  2600. var rem100 = number % 100;
  2601. if (rem100 > 20 || rem100 < 10) {
  2602. switch (rem100 % 10) {
  2603. case 1:
  2604. return number + "st";
  2605. case 2:
  2606. return number + "nd";
  2607. case 3:
  2608. return number + "rd";
  2609. }
  2610. }
  2611. return number + "th";
  2612. };
  2613. var localize = {
  2614. ordinalNumber: ordinalNumber,
  2615. era: buildLocalizeFn({
  2616. values: eraValues,
  2617. defaultWidth: "wide"
  2618. }),
  2619. quarter: buildLocalizeFn({
  2620. values: quarterValues,
  2621. defaultWidth: "wide",
  2622. argumentCallback: function argumentCallback(quarter) {return quarter - 1;}
  2623. }),
  2624. month: buildLocalizeFn({
  2625. values: monthValues,
  2626. defaultWidth: "wide"
  2627. }),
  2628. day: buildLocalizeFn({
  2629. values: dayValues,
  2630. defaultWidth: "wide"
  2631. }),
  2632. dayPeriod: buildLocalizeFn({
  2633. values: dayPeriodValues,
  2634. defaultWidth: "wide",
  2635. formattingValues: formattingDayPeriodValues,
  2636. defaultFormattingWidth: "wide"
  2637. })
  2638. };
  2639. // lib/locale/_lib/buildMatchFn.mjs
  2640. function buildMatchFn(args) {
  2641. return function (string) {var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
  2642. var width = options.width;
  2643. var matchPattern = width && args.matchPatterns[width] || args.matchPatterns[args.defaultMatchWidth];
  2644. var matchResult = string.match(matchPattern);
  2645. if (!matchResult) {
  2646. return null;
  2647. }
  2648. var matchedString = matchResult[0];
  2649. var parsePatterns = width && args.parsePatterns[width] || args.parsePatterns[args.defaultParseWidth];
  2650. var key = Array.isArray(parsePatterns) ? findIndex(parsePatterns, function (pattern) {return pattern.test(matchedString);}) : findKey(parsePatterns, function (pattern) {return pattern.test(matchedString);});
  2651. var value;
  2652. value = args.valueCallback ? args.valueCallback(key) : key;
  2653. value = options.valueCallback ? options.valueCallback(value) : value;
  2654. var rest = string.slice(matchedString.length);
  2655. return { value: value, rest: rest };
  2656. };
  2657. }
  2658. var findKey = function findKey(object, predicate) {
  2659. for (var key in object) {
  2660. if (Object.prototype.hasOwnProperty.call(object, key) && predicate(object[key])) {
  2661. return key;
  2662. }
  2663. }
  2664. return;
  2665. };
  2666. var findIndex = function findIndex(array, predicate) {
  2667. for (var key = 0; key < array.length; key++) {
  2668. if (predicate(array[key])) {
  2669. return key;
  2670. }
  2671. }
  2672. return;
  2673. };
  2674. // lib/locale/_lib/buildMatchPatternFn.mjs
  2675. function buildMatchPatternFn(args) {
  2676. return function (string) {var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
  2677. var matchResult = string.match(args.matchPattern);
  2678. if (!matchResult)
  2679. return null;
  2680. var matchedString = matchResult[0];
  2681. var parseResult = string.match(args.parsePattern);
  2682. if (!parseResult)
  2683. return null;
  2684. var value = args.valueCallback ? args.valueCallback(parseResult[0]) : parseResult[0];
  2685. value = options.valueCallback ? options.valueCallback(value) : value;
  2686. var rest = string.slice(matchedString.length);
  2687. return { value: value, rest: rest };
  2688. };
  2689. }
  2690. // lib/locale/en-US/_lib/match.mjs
  2691. var matchOrdinalNumberPattern = /^(\d+)(th|st|nd|rd)?/i;
  2692. var parseOrdinalNumberPattern = /\d+/i;
  2693. var matchEraPatterns = {
  2694. narrow: /^(b|a)/i,
  2695. abbreviated: /^(b\.?\s?c\.?|b\.?\s?c\.?\s?e\.?|a\.?\s?d\.?|c\.?\s?e\.?)/i,
  2696. wide: /^(before christ|before common era|anno domini|common era)/i
  2697. };
  2698. var parseEraPatterns = {
  2699. any: [/^b/i, /^(a|c)/i]
  2700. };
  2701. var matchQuarterPatterns = {
  2702. narrow: /^[1234]/i,
  2703. abbreviated: /^q[1234]/i,
  2704. wide: /^[1234](th|st|nd|rd)? quarter/i
  2705. };
  2706. var parseQuarterPatterns = {
  2707. any: [/1/i, /2/i, /3/i, /4/i]
  2708. };
  2709. var matchMonthPatterns = {
  2710. narrow: /^[jfmasond]/i,
  2711. abbreviated: /^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,
  2712. wide: /^(january|february|march|april|may|june|july|august|september|october|november|december)/i
  2713. };
  2714. var parseMonthPatterns = {
  2715. narrow: [
  2716. /^j/i,
  2717. /^f/i,
  2718. /^m/i,
  2719. /^a/i,
  2720. /^m/i,
  2721. /^j/i,
  2722. /^j/i,
  2723. /^a/i,
  2724. /^s/i,
  2725. /^o/i,
  2726. /^n/i,
  2727. /^d/i],
  2728. any: [
  2729. /^ja/i,
  2730. /^f/i,
  2731. /^mar/i,
  2732. /^ap/i,
  2733. /^may/i,
  2734. /^jun/i,
  2735. /^jul/i,
  2736. /^au/i,
  2737. /^s/i,
  2738. /^o/i,
  2739. /^n/i,
  2740. /^d/i]
  2741. };
  2742. var matchDayPatterns = {
  2743. narrow: /^[smtwf]/i,
  2744. short: /^(su|mo|tu|we|th|fr|sa)/i,
  2745. abbreviated: /^(sun|mon|tue|wed|thu|fri|sat)/i,
  2746. wide: /^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i
  2747. };
  2748. var parseDayPatterns = {
  2749. narrow: [/^s/i, /^m/i, /^t/i, /^w/i, /^t/i, /^f/i, /^s/i],
  2750. any: [/^su/i, /^m/i, /^tu/i, /^w/i, /^th/i, /^f/i, /^sa/i]
  2751. };
  2752. var matchDayPeriodPatterns = {
  2753. narrow: /^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,
  2754. any: /^([ap]\.?\s?m\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i
  2755. };
  2756. var parseDayPeriodPatterns = {
  2757. any: {
  2758. am: /^a/i,
  2759. pm: /^p/i,
  2760. midnight: /^mi/i,
  2761. noon: /^no/i,
  2762. morning: /morning/i,
  2763. afternoon: /afternoon/i,
  2764. evening: /evening/i,
  2765. night: /night/i
  2766. }
  2767. };
  2768. var match = {
  2769. ordinalNumber: buildMatchPatternFn({
  2770. matchPattern: matchOrdinalNumberPattern,
  2771. parsePattern: parseOrdinalNumberPattern,
  2772. valueCallback: function valueCallback(value) {return parseInt(value, 10);}
  2773. }),
  2774. era: buildMatchFn({
  2775. matchPatterns: matchEraPatterns,
  2776. defaultMatchWidth: "wide",
  2777. parsePatterns: parseEraPatterns,
  2778. defaultParseWidth: "any"
  2779. }),
  2780. quarter: buildMatchFn({
  2781. matchPatterns: matchQuarterPatterns,
  2782. defaultMatchWidth: "wide",
  2783. parsePatterns: parseQuarterPatterns,
  2784. defaultParseWidth: "any",
  2785. valueCallback: function valueCallback(index) {return index + 1;}
  2786. }),
  2787. month: buildMatchFn({
  2788. matchPatterns: matchMonthPatterns,
  2789. defaultMatchWidth: "wide",
  2790. parsePatterns: parseMonthPatterns,
  2791. defaultParseWidth: "any"
  2792. }),
  2793. day: buildMatchFn({
  2794. matchPatterns: matchDayPatterns,
  2795. defaultMatchWidth: "wide",
  2796. parsePatterns: parseDayPatterns,
  2797. defaultParseWidth: "any"
  2798. }),
  2799. dayPeriod: buildMatchFn({
  2800. matchPatterns: matchDayPeriodPatterns,
  2801. defaultMatchWidth: "any",
  2802. parsePatterns: parseDayPeriodPatterns,
  2803. defaultParseWidth: "any"
  2804. })
  2805. };
  2806. // lib/locale/en-US.mjs
  2807. var enUS = {
  2808. code: "en-US",
  2809. formatDistance: formatDistance,
  2810. formatLong: formatLong,
  2811. formatRelative: formatRelative,
  2812. localize: localize,
  2813. match: match,
  2814. options: {
  2815. weekStartsOn: 0,
  2816. firstWeekContainsDate: 1
  2817. }
  2818. };
  2819. // lib/getDayOfYear.mjs
  2820. function getDayOfYear(date) {
  2821. var _date = toDate(date);
  2822. var diff = differenceInCalendarDays(_date, startOfYear(_date));
  2823. var dayOfYear = diff + 1;
  2824. return dayOfYear;
  2825. }
  2826. // lib/getISOWeek.mjs
  2827. function getISOWeek(date) {
  2828. var _date = toDate(date);
  2829. var diff = +startOfISOWeek(_date) - +startOfISOWeekYear(_date);
  2830. return Math.round(diff / millisecondsInWeek) + 1;
  2831. }
  2832. // lib/getWeekYear.mjs
  2833. function getWeekYear(date, options) {var _ref7, _ref8, _ref9, _options$firstWeekCon, _options$locale3, _defaultOptions5$loca;
  2834. var _date = toDate(date);
  2835. var year = _date.getFullYear();
  2836. var defaultOptions5 = getDefaultOptions();
  2837. var firstWeekContainsDate = (_ref7 = (_ref8 = (_ref9 = (_options$firstWeekCon = options === null || options === void 0 ? void 0 : options.firstWeekContainsDate) !== null && _options$firstWeekCon !== void 0 ? _options$firstWeekCon : options === null || options === void 0 || (_options$locale3 = options.locale) === null || _options$locale3 === void 0 || (_options$locale3 = _options$locale3.options) === null || _options$locale3 === void 0 ? void 0 : _options$locale3.firstWeekContainsDate) !== null && _ref9 !== void 0 ? _ref9 : defaultOptions5.firstWeekContainsDate) !== null && _ref8 !== void 0 ? _ref8 : (_defaultOptions5$loca = defaultOptions5.locale) === null || _defaultOptions5$loca === void 0 || (_defaultOptions5$loca = _defaultOptions5$loca.options) === null || _defaultOptions5$loca === void 0 ? void 0 : _defaultOptions5$loca.firstWeekContainsDate) !== null && _ref7 !== void 0 ? _ref7 : 1;
  2838. var firstWeekOfNextYear = constructFrom(date, 0);
  2839. firstWeekOfNextYear.setFullYear(year + 1, 0, firstWeekContainsDate);
  2840. firstWeekOfNextYear.setHours(0, 0, 0, 0);
  2841. var startOfNextYear = startOfWeek(firstWeekOfNextYear, options);
  2842. var firstWeekOfThisYear = constructFrom(date, 0);
  2843. firstWeekOfThisYear.setFullYear(year, 0, firstWeekContainsDate);
  2844. firstWeekOfThisYear.setHours(0, 0, 0, 0);
  2845. var startOfThisYear = startOfWeek(firstWeekOfThisYear, options);
  2846. if (_date.getTime() >= startOfNextYear.getTime()) {
  2847. return year + 1;
  2848. } else if (_date.getTime() >= startOfThisYear.getTime()) {
  2849. return year;
  2850. } else {
  2851. return year - 1;
  2852. }
  2853. }
  2854. // lib/startOfWeekYear.mjs
  2855. function startOfWeekYear(date, options) {var _ref10, _ref11, _ref12, _options$firstWeekCon2, _options$locale4, _defaultOptions6$loca;
  2856. var defaultOptions6 = getDefaultOptions();
  2857. var firstWeekContainsDate = (_ref10 = (_ref11 = (_ref12 = (_options$firstWeekCon2 = options === null || options === void 0 ? void 0 : options.firstWeekContainsDate) !== null && _options$firstWeekCon2 !== void 0 ? _options$firstWeekCon2 : options === null || options === void 0 || (_options$locale4 = options.locale) === null || _options$locale4 === void 0 || (_options$locale4 = _options$locale4.options) === null || _options$locale4 === void 0 ? void 0 : _options$locale4.firstWeekContainsDate) !== null && _ref12 !== void 0 ? _ref12 : defaultOptions6.firstWeekContainsDate) !== null && _ref11 !== void 0 ? _ref11 : (_defaultOptions6$loca = defaultOptions6.locale) === null || _defaultOptions6$loca === void 0 || (_defaultOptions6$loca = _defaultOptions6$loca.options) === null || _defaultOptions6$loca === void 0 ? void 0 : _defaultOptions6$loca.firstWeekContainsDate) !== null && _ref10 !== void 0 ? _ref10 : 1;
  2858. var year = getWeekYear(date, options);
  2859. var firstWeek = constructFrom(date, 0);
  2860. firstWeek.setFullYear(year, 0, firstWeekContainsDate);
  2861. firstWeek.setHours(0, 0, 0, 0);
  2862. var _date = startOfWeek(firstWeek, options);
  2863. return _date;
  2864. }
  2865. // lib/getWeek.mjs
  2866. function getWeek(date, options) {
  2867. var _date = toDate(date);
  2868. var diff = +startOfWeek(_date, options) - +startOfWeekYear(_date, options);
  2869. return Math.round(diff / millisecondsInWeek) + 1;
  2870. }
  2871. // lib/_lib/addLeadingZeros.mjs
  2872. function addLeadingZeros(number, targetLength) {
  2873. var sign = number < 0 ? "-" : "";
  2874. var output = Math.abs(number).toString().padStart(targetLength, "0");
  2875. return sign + output;
  2876. }
  2877. // lib/_lib/format/lightFormatters.mjs
  2878. var lightFormatters = {
  2879. y: function y(date, token) {
  2880. var signedYear = date.getFullYear();
  2881. var year = signedYear > 0 ? signedYear : 1 - signedYear;
  2882. return addLeadingZeros(token === "yy" ? year % 100 : year, token.length);
  2883. },
  2884. M: function M(date, token) {
  2885. var month = date.getMonth();
  2886. return token === "M" ? String(month + 1) : addLeadingZeros(month + 1, 2);
  2887. },
  2888. d: function d(date, token) {
  2889. return addLeadingZeros(date.getDate(), token.length);
  2890. },
  2891. a: function a(date, token) {
  2892. var dayPeriodEnumValue = date.getHours() / 12 >= 1 ? "pm" : "am";
  2893. switch (token) {
  2894. case "a":
  2895. case "aa":
  2896. return dayPeriodEnumValue.toUpperCase();
  2897. case "aaa":
  2898. return dayPeriodEnumValue;
  2899. case "aaaaa":
  2900. return dayPeriodEnumValue[0];
  2901. case "aaaa":
  2902. default:
  2903. return dayPeriodEnumValue === "am" ? "a.m." : "p.m.";
  2904. }
  2905. },
  2906. h: function h(date, token) {
  2907. return addLeadingZeros(date.getHours() % 12 || 12, token.length);
  2908. },
  2909. H: function H(date, token) {
  2910. return addLeadingZeros(date.getHours(), token.length);
  2911. },
  2912. m: function m(date, token) {
  2913. return addLeadingZeros(date.getMinutes(), token.length);
  2914. },
  2915. s: function s(date, token) {
  2916. return addLeadingZeros(date.getSeconds(), token.length);
  2917. },
  2918. S: function S(date, token) {
  2919. var numberOfDigits = token.length;
  2920. var milliseconds = date.getMilliseconds();
  2921. var fractionalSeconds = Math.trunc(milliseconds * Math.pow(10, numberOfDigits - 3));
  2922. return addLeadingZeros(fractionalSeconds, token.length);
  2923. }
  2924. };
  2925. // lib/_lib/format/formatters.mjs
  2926. var formatTimezoneShort = function formatTimezoneShort(offset) {var delimiter = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : "";
  2927. var sign = offset > 0 ? "-" : "+";
  2928. var absOffset = Math.abs(offset);
  2929. var hours = Math.trunc(absOffset / 60);
  2930. var minutes = absOffset % 60;
  2931. if (minutes === 0) {
  2932. return sign + String(hours);
  2933. }
  2934. return sign + String(hours) + delimiter + addLeadingZeros(minutes, 2);
  2935. };
  2936. var formatTimezoneWithOptionalMinutes = function formatTimezoneWithOptionalMinutes(offset, delimiter) {
  2937. if (offset % 60 === 0) {
  2938. var sign = offset > 0 ? "-" : "+";
  2939. return sign + addLeadingZeros(Math.abs(offset) / 60, 2);
  2940. }
  2941. return formatTimezone(offset, delimiter);
  2942. };
  2943. var formatTimezone = function formatTimezone(offset) {var delimiter = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : "";
  2944. var sign = offset > 0 ? "-" : "+";
  2945. var absOffset = Math.abs(offset);
  2946. var hours = addLeadingZeros(Math.trunc(absOffset / 60), 2);
  2947. var minutes = addLeadingZeros(absOffset % 60, 2);
  2948. return sign + hours + delimiter + minutes;
  2949. };
  2950. var dayPeriodEnum = {
  2951. am: "am",
  2952. pm: "pm",
  2953. midnight: "midnight",
  2954. noon: "noon",
  2955. morning: "morning",
  2956. afternoon: "afternoon",
  2957. evening: "evening",
  2958. night: "night"
  2959. };
  2960. var formatters = {
  2961. G: function G(date, token, localize3) {
  2962. var era = date.getFullYear() > 0 ? 1 : 0;
  2963. switch (token) {
  2964. case "G":
  2965. case "GG":
  2966. case "GGG":
  2967. return localize3.era(era, { width: "abbreviated" });
  2968. case "GGGGG":
  2969. return localize3.era(era, { width: "narrow" });
  2970. case "GGGG":
  2971. default:
  2972. return localize3.era(era, { width: "wide" });
  2973. }
  2974. },
  2975. y: function y(date, token, localize3) {
  2976. if (token === "yo") {
  2977. var signedYear = date.getFullYear();
  2978. var year = signedYear > 0 ? signedYear : 1 - signedYear;
  2979. return localize3.ordinalNumber(year, { unit: "year" });
  2980. }
  2981. return lightFormatters.y(date, token);
  2982. },
  2983. Y: function Y(date, token, localize3, options) {
  2984. var signedWeekYear = getWeekYear(date, options);
  2985. var weekYear = signedWeekYear > 0 ? signedWeekYear : 1 - signedWeekYear;
  2986. if (token === "YY") {
  2987. var twoDigitYear = weekYear % 100;
  2988. return addLeadingZeros(twoDigitYear, 2);
  2989. }
  2990. if (token === "Yo") {
  2991. return localize3.ordinalNumber(weekYear, { unit: "year" });
  2992. }
  2993. return addLeadingZeros(weekYear, token.length);
  2994. },
  2995. R: function R(date, token) {
  2996. var isoWeekYear = getISOWeekYear(date);
  2997. return addLeadingZeros(isoWeekYear, token.length);
  2998. },
  2999. u: function u(date, token) {
  3000. var year = date.getFullYear();
  3001. return addLeadingZeros(year, token.length);
  3002. },
  3003. Q: function Q(date, token, localize3) {
  3004. var quarter = Math.ceil((date.getMonth() + 1) / 3);
  3005. switch (token) {
  3006. case "Q":
  3007. return String(quarter);
  3008. case "QQ":
  3009. return addLeadingZeros(quarter, 2);
  3010. case "Qo":
  3011. return localize3.ordinalNumber(quarter, { unit: "quarter" });
  3012. case "QQQ":
  3013. return localize3.quarter(quarter, {
  3014. width: "abbreviated",
  3015. context: "formatting"
  3016. });
  3017. case "QQQQQ":
  3018. return localize3.quarter(quarter, {
  3019. width: "narrow",
  3020. context: "formatting"
  3021. });
  3022. case "QQQQ":
  3023. default:
  3024. return localize3.quarter(quarter, {
  3025. width: "wide",
  3026. context: "formatting"
  3027. });
  3028. }
  3029. },
  3030. q: function q(date, token, localize3) {
  3031. var quarter = Math.ceil((date.getMonth() + 1) / 3);
  3032. switch (token) {
  3033. case "q":
  3034. return String(quarter);
  3035. case "qq":
  3036. return addLeadingZeros(quarter, 2);
  3037. case "qo":
  3038. return localize3.ordinalNumber(quarter, { unit: "quarter" });
  3039. case "qqq":
  3040. return localize3.quarter(quarter, {
  3041. width: "abbreviated",
  3042. context: "standalone"
  3043. });
  3044. case "qqqqq":
  3045. return localize3.quarter(quarter, {
  3046. width: "narrow",
  3047. context: "standalone"
  3048. });
  3049. case "qqqq":
  3050. default:
  3051. return localize3.quarter(quarter, {
  3052. width: "wide",
  3053. context: "standalone"
  3054. });
  3055. }
  3056. },
  3057. M: function M(date, token, localize3) {
  3058. var month = date.getMonth();
  3059. switch (token) {
  3060. case "M":
  3061. case "MM":
  3062. return lightFormatters.M(date, token);
  3063. case "Mo":
  3064. return localize3.ordinalNumber(month + 1, { unit: "month" });
  3065. case "MMM":
  3066. return localize3.month(month, {
  3067. width: "abbreviated",
  3068. context: "formatting"
  3069. });
  3070. case "MMMMM":
  3071. return localize3.month(month, {
  3072. width: "narrow",
  3073. context: "formatting"
  3074. });
  3075. case "MMMM":
  3076. default:
  3077. return localize3.month(month, { width: "wide", context: "formatting" });
  3078. }
  3079. },
  3080. L: function L(date, token, localize3) {
  3081. var month = date.getMonth();
  3082. switch (token) {
  3083. case "L":
  3084. return String(month + 1);
  3085. case "LL":
  3086. return addLeadingZeros(month + 1, 2);
  3087. case "Lo":
  3088. return localize3.ordinalNumber(month + 1, { unit: "month" });
  3089. case "LLL":
  3090. return localize3.month(month, {
  3091. width: "abbreviated",
  3092. context: "standalone"
  3093. });
  3094. case "LLLLL":
  3095. return localize3.month(month, {
  3096. width: "narrow",
  3097. context: "standalone"
  3098. });
  3099. case "LLLL":
  3100. default:
  3101. return localize3.month(month, { width: "wide", context: "standalone" });
  3102. }
  3103. },
  3104. w: function w(date, token, localize3, options) {
  3105. var week = getWeek(date, options);
  3106. if (token === "wo") {
  3107. return localize3.ordinalNumber(week, { unit: "week" });
  3108. }
  3109. return addLeadingZeros(week, token.length);
  3110. },
  3111. I: function I(date, token, localize3) {
  3112. var isoWeek = getISOWeek(date);
  3113. if (token === "Io") {
  3114. return localize3.ordinalNumber(isoWeek, { unit: "week" });
  3115. }
  3116. return addLeadingZeros(isoWeek, token.length);
  3117. },
  3118. d: function d(date, token, localize3) {
  3119. if (token === "do") {
  3120. return localize3.ordinalNumber(date.getDate(), { unit: "date" });
  3121. }
  3122. return lightFormatters.d(date, token);
  3123. },
  3124. D: function D(date, token, localize3) {
  3125. var dayOfYear = getDayOfYear(date);
  3126. if (token === "Do") {
  3127. return localize3.ordinalNumber(dayOfYear, { unit: "dayOfYear" });
  3128. }
  3129. return addLeadingZeros(dayOfYear, token.length);
  3130. },
  3131. E: function E(date, token, localize3) {
  3132. var dayOfWeek = date.getDay();
  3133. switch (token) {
  3134. case "E":
  3135. case "EE":
  3136. case "EEE":
  3137. return localize3.day(dayOfWeek, {
  3138. width: "abbreviated",
  3139. context: "formatting"
  3140. });
  3141. case "EEEEE":
  3142. return localize3.day(dayOfWeek, {
  3143. width: "narrow",
  3144. context: "formatting"
  3145. });
  3146. case "EEEEEE":
  3147. return localize3.day(dayOfWeek, {
  3148. width: "short",
  3149. context: "formatting"
  3150. });
  3151. case "EEEE":
  3152. default:
  3153. return localize3.day(dayOfWeek, {
  3154. width: "wide",
  3155. context: "formatting"
  3156. });
  3157. }
  3158. },
  3159. e: function e(date, token, localize3, options) {
  3160. var dayOfWeek = date.getDay();
  3161. var localDayOfWeek = (dayOfWeek - options.weekStartsOn + 8) % 7 || 7;
  3162. switch (token) {
  3163. case "e":
  3164. return String(localDayOfWeek);
  3165. case "ee":
  3166. return addLeadingZeros(localDayOfWeek, 2);
  3167. case "eo":
  3168. return localize3.ordinalNumber(localDayOfWeek, { unit: "day" });
  3169. case "eee":
  3170. return localize3.day(dayOfWeek, {
  3171. width: "abbreviated",
  3172. context: "formatting"
  3173. });
  3174. case "eeeee":
  3175. return localize3.day(dayOfWeek, {
  3176. width: "narrow",
  3177. context: "formatting"
  3178. });
  3179. case "eeeeee":
  3180. return localize3.day(dayOfWeek, {
  3181. width: "short",
  3182. context: "formatting"
  3183. });
  3184. case "eeee":
  3185. default:
  3186. return localize3.day(dayOfWeek, {
  3187. width: "wide",
  3188. context: "formatting"
  3189. });
  3190. }
  3191. },
  3192. c: function c(date, token, localize3, options) {
  3193. var dayOfWeek = date.getDay();
  3194. var localDayOfWeek = (dayOfWeek - options.weekStartsOn + 8) % 7 || 7;
  3195. switch (token) {
  3196. case "c":
  3197. return String(localDayOfWeek);
  3198. case "cc":
  3199. return addLeadingZeros(localDayOfWeek, token.length);
  3200. case "co":
  3201. return localize3.ordinalNumber(localDayOfWeek, { unit: "day" });
  3202. case "ccc":
  3203. return localize3.day(dayOfWeek, {
  3204. width: "abbreviated",
  3205. context: "standalone"
  3206. });
  3207. case "ccccc":
  3208. return localize3.day(dayOfWeek, {
  3209. width: "narrow",
  3210. context: "standalone"
  3211. });
  3212. case "cccccc":
  3213. return localize3.day(dayOfWeek, {
  3214. width: "short",
  3215. context: "standalone"
  3216. });
  3217. case "cccc":
  3218. default:
  3219. return localize3.day(dayOfWeek, {
  3220. width: "wide",
  3221. context: "standalone"
  3222. });
  3223. }
  3224. },
  3225. i: function i(date, token, localize3) {
  3226. var dayOfWeek = date.getDay();
  3227. var isoDayOfWeek = dayOfWeek === 0 ? 7 : dayOfWeek;
  3228. switch (token) {
  3229. case "i":
  3230. return String(isoDayOfWeek);
  3231. case "ii":
  3232. return addLeadingZeros(isoDayOfWeek, token.length);
  3233. case "io":
  3234. return localize3.ordinalNumber(isoDayOfWeek, { unit: "day" });
  3235. case "iii":
  3236. return localize3.day(dayOfWeek, {
  3237. width: "abbreviated",
  3238. context: "formatting"
  3239. });
  3240. case "iiiii":
  3241. return localize3.day(dayOfWeek, {
  3242. width: "narrow",
  3243. context: "formatting"
  3244. });
  3245. case "iiiiii":
  3246. return localize3.day(dayOfWeek, {
  3247. width: "short",
  3248. context: "formatting"
  3249. });
  3250. case "iiii":
  3251. default:
  3252. return localize3.day(dayOfWeek, {
  3253. width: "wide",
  3254. context: "formatting"
  3255. });
  3256. }
  3257. },
  3258. a: function a(date, token, localize3) {
  3259. var hours = date.getHours();
  3260. var dayPeriodEnumValue = hours / 12 >= 1 ? "pm" : "am";
  3261. switch (token) {
  3262. case "a":
  3263. case "aa":
  3264. return localize3.dayPeriod(dayPeriodEnumValue, {
  3265. width: "abbreviated",
  3266. context: "formatting"
  3267. });
  3268. case "aaa":
  3269. return localize3.dayPeriod(dayPeriodEnumValue, {
  3270. width: "abbreviated",
  3271. context: "formatting"
  3272. }).toLowerCase();
  3273. case "aaaaa":
  3274. return localize3.dayPeriod(dayPeriodEnumValue, {
  3275. width: "narrow",
  3276. context: "formatting"
  3277. });
  3278. case "aaaa":
  3279. default:
  3280. return localize3.dayPeriod(dayPeriodEnumValue, {
  3281. width: "wide",
  3282. context: "formatting"
  3283. });
  3284. }
  3285. },
  3286. b: function b(date, token, localize3) {
  3287. var hours = date.getHours();
  3288. var dayPeriodEnumValue;
  3289. if (hours === 12) {
  3290. dayPeriodEnumValue = dayPeriodEnum.noon;
  3291. } else if (hours === 0) {
  3292. dayPeriodEnumValue = dayPeriodEnum.midnight;
  3293. } else {
  3294. dayPeriodEnumValue = hours / 12 >= 1 ? "pm" : "am";
  3295. }
  3296. switch (token) {
  3297. case "b":
  3298. case "bb":
  3299. return localize3.dayPeriod(dayPeriodEnumValue, {
  3300. width: "abbreviated",
  3301. context: "formatting"
  3302. });
  3303. case "bbb":
  3304. return localize3.dayPeriod(dayPeriodEnumValue, {
  3305. width: "abbreviated",
  3306. context: "formatting"
  3307. }).toLowerCase();
  3308. case "bbbbb":
  3309. return localize3.dayPeriod(dayPeriodEnumValue, {
  3310. width: "narrow",
  3311. context: "formatting"
  3312. });
  3313. case "bbbb":
  3314. default:
  3315. return localize3.dayPeriod(dayPeriodEnumValue, {
  3316. width: "wide",
  3317. context: "formatting"
  3318. });
  3319. }
  3320. },
  3321. B: function B(date, token, localize3) {
  3322. var hours = date.getHours();
  3323. var dayPeriodEnumValue;
  3324. if (hours >= 17) {
  3325. dayPeriodEnumValue = dayPeriodEnum.evening;
  3326. } else if (hours >= 12) {
  3327. dayPeriodEnumValue = dayPeriodEnum.afternoon;
  3328. } else if (hours >= 4) {
  3329. dayPeriodEnumValue = dayPeriodEnum.morning;
  3330. } else {
  3331. dayPeriodEnumValue = dayPeriodEnum.night;
  3332. }
  3333. switch (token) {
  3334. case "B":
  3335. case "BB":
  3336. case "BBB":
  3337. return localize3.dayPeriod(dayPeriodEnumValue, {
  3338. width: "abbreviated",
  3339. context: "formatting"
  3340. });
  3341. case "BBBBB":
  3342. return localize3.dayPeriod(dayPeriodEnumValue, {
  3343. width: "narrow",
  3344. context: "formatting"
  3345. });
  3346. case "BBBB":
  3347. default:
  3348. return localize3.dayPeriod(dayPeriodEnumValue, {
  3349. width: "wide",
  3350. context: "formatting"
  3351. });
  3352. }
  3353. },
  3354. h: function h(date, token, localize3) {
  3355. if (token === "ho") {
  3356. var hours = date.getHours() % 12;
  3357. if (hours === 0)
  3358. hours = 12;
  3359. return localize3.ordinalNumber(hours, { unit: "hour" });
  3360. }
  3361. return lightFormatters.h(date, token);
  3362. },
  3363. H: function H(date, token, localize3) {
  3364. if (token === "Ho") {
  3365. return localize3.ordinalNumber(date.getHours(), { unit: "hour" });
  3366. }
  3367. return lightFormatters.H(date, token);
  3368. },
  3369. K: function K(date, token, localize3) {
  3370. var hours = date.getHours() % 12;
  3371. if (token === "Ko") {
  3372. return localize3.ordinalNumber(hours, { unit: "hour" });
  3373. }
  3374. return addLeadingZeros(hours, token.length);
  3375. },
  3376. k: function k(date, token, localize3) {
  3377. var hours = date.getHours();
  3378. if (hours === 0)
  3379. hours = 24;
  3380. if (token === "ko") {
  3381. return localize3.ordinalNumber(hours, { unit: "hour" });
  3382. }
  3383. return addLeadingZeros(hours, token.length);
  3384. },
  3385. m: function m(date, token, localize3) {
  3386. if (token === "mo") {
  3387. return localize3.ordinalNumber(date.getMinutes(), { unit: "minute" });
  3388. }
  3389. return lightFormatters.m(date, token);
  3390. },
  3391. s: function s(date, token, localize3) {
  3392. if (token === "so") {
  3393. return localize3.ordinalNumber(date.getSeconds(), { unit: "second" });
  3394. }
  3395. return lightFormatters.s(date, token);
  3396. },
  3397. S: function S(date, token) {
  3398. return lightFormatters.S(date, token);
  3399. },
  3400. X: function X(date, token, _localize) {
  3401. var timezoneOffset = date.getTimezoneOffset();
  3402. if (timezoneOffset === 0) {
  3403. return "Z";
  3404. }
  3405. switch (token) {
  3406. case "X":
  3407. return formatTimezoneWithOptionalMinutes(timezoneOffset);
  3408. case "XXXX":
  3409. case "XX":
  3410. return formatTimezone(timezoneOffset);
  3411. case "XXXXX":
  3412. case "XXX":
  3413. default:
  3414. return formatTimezone(timezoneOffset, ":");
  3415. }
  3416. },
  3417. x: function x(date, token, _localize) {
  3418. var timezoneOffset = date.getTimezoneOffset();
  3419. switch (token) {
  3420. case "x":
  3421. return formatTimezoneWithOptionalMinutes(timezoneOffset);
  3422. case "xxxx":
  3423. case "xx":
  3424. return formatTimezone(timezoneOffset);
  3425. case "xxxxx":
  3426. case "xxx":
  3427. default:
  3428. return formatTimezone(timezoneOffset, ":");
  3429. }
  3430. },
  3431. O: function O(date, token, _localize) {
  3432. var timezoneOffset = date.getTimezoneOffset();
  3433. switch (token) {
  3434. case "O":
  3435. case "OO":
  3436. case "OOO":
  3437. return "GMT" + formatTimezoneShort(timezoneOffset, ":");
  3438. case "OOOO":
  3439. default:
  3440. return "GMT" + formatTimezone(timezoneOffset, ":");
  3441. }
  3442. },
  3443. z: function z(date, token, _localize) {
  3444. var timezoneOffset = date.getTimezoneOffset();
  3445. switch (token) {
  3446. case "z":
  3447. case "zz":
  3448. case "zzz":
  3449. return "GMT" + formatTimezoneShort(timezoneOffset, ":");
  3450. case "zzzz":
  3451. default:
  3452. return "GMT" + formatTimezone(timezoneOffset, ":");
  3453. }
  3454. },
  3455. t: function t(date, token, _localize) {
  3456. var timestamp = Math.trunc(date.getTime() / 1000);
  3457. return addLeadingZeros(timestamp, token.length);
  3458. },
  3459. T: function T(date, token, _localize) {
  3460. var timestamp = date.getTime();
  3461. return addLeadingZeros(timestamp, token.length);
  3462. }
  3463. };
  3464. // lib/_lib/format/longFormatters.mjs
  3465. var dateLongFormatter = function dateLongFormatter(pattern, formatLong3) {
  3466. switch (pattern) {
  3467. case "P":
  3468. return formatLong3.date({ width: "short" });
  3469. case "PP":
  3470. return formatLong3.date({ width: "medium" });
  3471. case "PPP":
  3472. return formatLong3.date({ width: "long" });
  3473. case "PPPP":
  3474. default:
  3475. return formatLong3.date({ width: "full" });
  3476. }
  3477. };
  3478. var timeLongFormatter = function timeLongFormatter(pattern, formatLong3) {
  3479. switch (pattern) {
  3480. case "p":
  3481. return formatLong3.time({ width: "short" });
  3482. case "pp":
  3483. return formatLong3.time({ width: "medium" });
  3484. case "ppp":
  3485. return formatLong3.time({ width: "long" });
  3486. case "pppp":
  3487. default:
  3488. return formatLong3.time({ width: "full" });
  3489. }
  3490. };
  3491. var dateTimeLongFormatter = function dateTimeLongFormatter(pattern, formatLong3) {
  3492. var matchResult = pattern.match(/(P+)(p+)?/) || [];
  3493. var datePattern = matchResult[1];
  3494. var timePattern = matchResult[2];
  3495. if (!timePattern) {
  3496. return dateLongFormatter(pattern, formatLong3);
  3497. }
  3498. var dateTimeFormat;
  3499. switch (datePattern) {
  3500. case "P":
  3501. dateTimeFormat = formatLong3.dateTime({ width: "short" });
  3502. break;
  3503. case "PP":
  3504. dateTimeFormat = formatLong3.dateTime({ width: "medium" });
  3505. break;
  3506. case "PPP":
  3507. dateTimeFormat = formatLong3.dateTime({ width: "long" });
  3508. break;
  3509. case "PPPP":
  3510. default:
  3511. dateTimeFormat = formatLong3.dateTime({ width: "full" });
  3512. break;
  3513. }
  3514. return dateTimeFormat.replace("{{date}}", dateLongFormatter(datePattern, formatLong3)).replace("{{time}}", timeLongFormatter(timePattern, formatLong3));
  3515. };
  3516. var longFormatters = {
  3517. p: timeLongFormatter,
  3518. P: dateTimeLongFormatter
  3519. };
  3520. // lib/_lib/protectedTokens.mjs
  3521. function isProtectedDayOfYearToken(token) {
  3522. return dayOfYearTokenRE.test(token);
  3523. }
  3524. function isProtectedWeekYearToken(token) {
  3525. return weekYearTokenRE.test(token);
  3526. }
  3527. function warnOrThrowProtectedError(token, format, input) {
  3528. var _message = message(token, format, input);
  3529. console.warn(_message);
  3530. if (throwTokens.includes(token))
  3531. throw new RangeError(_message);
  3532. }
  3533. var message = function message(token, format, input) {
  3534. var subject = token[0] === "Y" ? "years" : "days of the month";
  3535. return "Use `".concat(token.toLowerCase(), "` instead of `").concat(token, "` (in `").concat(format, "`) for formatting ").concat(subject, " to the input `").concat(input, "`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md");
  3536. };
  3537. var dayOfYearTokenRE = /^D+$/;
  3538. var weekYearTokenRE = /^Y+$/;
  3539. var throwTokens = ["D", "DD", "YY", "YYYY"];
  3540. // lib/format.mjs
  3541. function format(date, formatStr, options) {var _ref13, _options$locale5, _ref14, _ref15, _ref16, _options$firstWeekCon3, _options$locale6, _defaultOptions7$loca, _ref17, _ref18, _ref19, _options$weekStartsOn3, _options$locale7, _defaultOptions7$loca2;
  3542. var defaultOptions7 = getDefaultOptions();
  3543. var locale = (_ref13 = (_options$locale5 = options === null || options === void 0 ? void 0 : options.locale) !== null && _options$locale5 !== void 0 ? _options$locale5 : defaultOptions7.locale) !== null && _ref13 !== void 0 ? _ref13 : enUS;
  3544. var firstWeekContainsDate = (_ref14 = (_ref15 = (_ref16 = (_options$firstWeekCon3 = options === null || options === void 0 ? void 0 : options.firstWeekContainsDate) !== null && _options$firstWeekCon3 !== void 0 ? _options$firstWeekCon3 : options === null || options === void 0 || (_options$locale6 = options.locale) === null || _options$locale6 === void 0 || (_options$locale6 = _options$locale6.options) === null || _options$locale6 === void 0 ? void 0 : _options$locale6.firstWeekContainsDate) !== null && _ref16 !== void 0 ? _ref16 : defaultOptions7.firstWeekContainsDate) !== null && _ref15 !== void 0 ? _ref15 : (_defaultOptions7$loca = defaultOptions7.locale) === null || _defaultOptions7$loca === void 0 || (_defaultOptions7$loca = _defaultOptions7$loca.options) === null || _defaultOptions7$loca === void 0 ? void 0 : _defaultOptions7$loca.firstWeekContainsDate) !== null && _ref14 !== void 0 ? _ref14 : 1;
  3545. var weekStartsOn = (_ref17 = (_ref18 = (_ref19 = (_options$weekStartsOn3 = options === null || options === void 0 ? void 0 : options.weekStartsOn) !== null && _options$weekStartsOn3 !== void 0 ? _options$weekStartsOn3 : options === null || options === void 0 || (_options$locale7 = options.locale) === null || _options$locale7 === void 0 || (_options$locale7 = _options$locale7.options) === null || _options$locale7 === void 0 ? void 0 : _options$locale7.weekStartsOn) !== null && _ref19 !== void 0 ? _ref19 : defaultOptions7.weekStartsOn) !== null && _ref18 !== void 0 ? _ref18 : (_defaultOptions7$loca2 = defaultOptions7.locale) === null || _defaultOptions7$loca2 === void 0 || (_defaultOptions7$loca2 = _defaultOptions7$loca2.options) === null || _defaultOptions7$loca2 === void 0 ? void 0 : _defaultOptions7$loca2.weekStartsOn) !== null && _ref17 !== void 0 ? _ref17 : 0;
  3546. var originalDate = toDate(date);
  3547. if (!isValid(originalDate)) {
  3548. throw new RangeError("Invalid time value");
  3549. }
  3550. var parts = formatStr.match(longFormattingTokensRegExp).map(function (substring) {
  3551. var firstCharacter = substring[0];
  3552. if (firstCharacter === "p" || firstCharacter === "P") {
  3553. var longFormatter = longFormatters[firstCharacter];
  3554. return longFormatter(substring, locale.formatLong);
  3555. }
  3556. return substring;
  3557. }).join("").match(formattingTokensRegExp).map(function (substring) {
  3558. if (substring === "''") {
  3559. return { isToken: false, value: "'" };
  3560. }
  3561. var firstCharacter = substring[0];
  3562. if (firstCharacter === "'") {
  3563. return { isToken: false, value: cleanEscapedString(substring) };
  3564. }
  3565. if (formatters[firstCharacter]) {
  3566. return { isToken: true, value: substring };
  3567. }
  3568. if (firstCharacter.match(unescapedLatinCharacterRegExp)) {
  3569. throw new RangeError("Format string contains an unescaped latin alphabet character `" + firstCharacter + "`");
  3570. }
  3571. return { isToken: false, value: substring };
  3572. });
  3573. if (locale.localize.preprocessor) {
  3574. parts = locale.localize.preprocessor(originalDate, parts);
  3575. }
  3576. var formatterOptions = {
  3577. firstWeekContainsDate: firstWeekContainsDate,
  3578. weekStartsOn: weekStartsOn,
  3579. locale: locale
  3580. };
  3581. return parts.map(function (part) {
  3582. if (!part.isToken)
  3583. return part.value;
  3584. var token = part.value;
  3585. if (!(options !== null && options !== void 0 && options.useAdditionalWeekYearTokens) && isProtectedWeekYearToken(token) || !(options !== null && options !== void 0 && options.useAdditionalDayOfYearTokens) && isProtectedDayOfYearToken(token)) {
  3586. warnOrThrowProtectedError(token, formatStr, String(date));
  3587. }
  3588. var formatter = formatters[token[0]];
  3589. return formatter(originalDate, token, locale.localize, formatterOptions);
  3590. }).join("");
  3591. }
  3592. var cleanEscapedString = function cleanEscapedString(input) {
  3593. var matched = input.match(escapedStringRegExp);
  3594. if (!matched) {
  3595. return input;
  3596. }
  3597. return matched[1].replace(doubleQuoteRegExp, "'");
  3598. };
  3599. var formattingTokensRegExp = /[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g;
  3600. var longFormattingTokensRegExp = /P+p+|P+|p+|''|'(''|[^'])+('|$)|./g;
  3601. var escapedStringRegExp = /^'([^]*?)'?$/;
  3602. var doubleQuoteRegExp = /''/g;
  3603. var unescapedLatinCharacterRegExp = /[a-zA-Z]/;
  3604. // lib/fp/format.mjs
  3605. var format3 = convertToFP(format, 2);
  3606. // lib/formatDistance.mjs
  3607. function formatDistance3(date, baseDate, options) {var _ref20, _options$locale8;
  3608. var defaultOptions8 = getDefaultOptions();
  3609. var locale = (_ref20 = (_options$locale8 = options === null || options === void 0 ? void 0 : options.locale) !== null && _options$locale8 !== void 0 ? _options$locale8 : defaultOptions8.locale) !== null && _ref20 !== void 0 ? _ref20 : enUS;
  3610. var minutesInAlmostTwoDays = 2520;
  3611. var comparison = compareAsc(date, baseDate);
  3612. if (isNaN(comparison)) {
  3613. throw new RangeError("Invalid time value");
  3614. }
  3615. var localizeOptions = Object.assign({}, options, {
  3616. addSuffix: options === null || options === void 0 ? void 0 : options.addSuffix,
  3617. comparison: comparison
  3618. });
  3619. var dateLeft;
  3620. var dateRight;
  3621. if (comparison > 0) {
  3622. dateLeft = toDate(baseDate);
  3623. dateRight = toDate(date);
  3624. } else {
  3625. dateLeft = toDate(date);
  3626. dateRight = toDate(baseDate);
  3627. }
  3628. var seconds = differenceInSeconds(dateRight, dateLeft);
  3629. var offsetInSeconds = (getTimezoneOffsetInMilliseconds(dateRight) - getTimezoneOffsetInMilliseconds(dateLeft)) / 1000;
  3630. var minutes = Math.round((seconds - offsetInSeconds) / 60);
  3631. var months;
  3632. if (minutes < 2) {
  3633. if (options !== null && options !== void 0 && options.includeSeconds) {
  3634. if (seconds < 5) {
  3635. return locale.formatDistance("lessThanXSeconds", 5, localizeOptions);
  3636. } else if (seconds < 10) {
  3637. return locale.formatDistance("lessThanXSeconds", 10, localizeOptions);
  3638. } else if (seconds < 20) {
  3639. return locale.formatDistance("lessThanXSeconds", 20, localizeOptions);
  3640. } else if (seconds < 40) {
  3641. return locale.formatDistance("halfAMinute", 0, localizeOptions);
  3642. } else if (seconds < 60) {
  3643. return locale.formatDistance("lessThanXMinutes", 1, localizeOptions);
  3644. } else {
  3645. return locale.formatDistance("xMinutes", 1, localizeOptions);
  3646. }
  3647. } else {
  3648. if (minutes === 0) {
  3649. return locale.formatDistance("lessThanXMinutes", 1, localizeOptions);
  3650. } else {
  3651. return locale.formatDistance("xMinutes", minutes, localizeOptions);
  3652. }
  3653. }
  3654. } else if (minutes < 45) {
  3655. return locale.formatDistance("xMinutes", minutes, localizeOptions);
  3656. } else if (minutes < 90) {
  3657. return locale.formatDistance("aboutXHours", 1, localizeOptions);
  3658. } else if (minutes < minutesInDay) {
  3659. var hours = Math.round(minutes / 60);
  3660. return locale.formatDistance("aboutXHours", hours, localizeOptions);
  3661. } else if (minutes < minutesInAlmostTwoDays) {
  3662. return locale.formatDistance("xDays", 1, localizeOptions);
  3663. } else if (minutes < minutesInMonth) {
  3664. var _days = Math.round(minutes / minutesInDay);
  3665. return locale.formatDistance("xDays", _days, localizeOptions);
  3666. } else if (minutes < minutesInMonth * 2) {
  3667. months = Math.round(minutes / minutesInMonth);
  3668. return locale.formatDistance("aboutXMonths", months, localizeOptions);
  3669. }
  3670. months = differenceInMonths(dateRight, dateLeft);
  3671. if (months < 12) {
  3672. var nearestMonth = Math.round(minutes / minutesInMonth);
  3673. return locale.formatDistance("xMonths", nearestMonth, localizeOptions);
  3674. } else {
  3675. var monthsSinceStartOfYear = months % 12;
  3676. var years = Math.trunc(months / 12);
  3677. if (monthsSinceStartOfYear < 3) {
  3678. return locale.formatDistance("aboutXYears", years, localizeOptions);
  3679. } else if (monthsSinceStartOfYear < 9) {
  3680. return locale.formatDistance("overXYears", years, localizeOptions);
  3681. } else {
  3682. return locale.formatDistance("almostXYears", years + 1, localizeOptions);
  3683. }
  3684. }
  3685. }
  3686. // lib/fp/formatDistance.mjs
  3687. var formatDistance5 = convertToFP(formatDistance3, 2);
  3688. // lib/formatDistanceStrict.mjs
  3689. function formatDistanceStrict(date, baseDate, options) {var _ref21, _options$locale9, _options$roundingMeth;
  3690. var defaultOptions9 = getDefaultOptions();
  3691. var locale = (_ref21 = (_options$locale9 = options === null || options === void 0 ? void 0 : options.locale) !== null && _options$locale9 !== void 0 ? _options$locale9 : defaultOptions9.locale) !== null && _ref21 !== void 0 ? _ref21 : enUS;
  3692. var comparison = compareAsc(date, baseDate);
  3693. if (isNaN(comparison)) {
  3694. throw new RangeError("Invalid time value");
  3695. }
  3696. var localizeOptions = Object.assign({}, options, {
  3697. addSuffix: options === null || options === void 0 ? void 0 : options.addSuffix,
  3698. comparison: comparison
  3699. });
  3700. var dateLeft;
  3701. var dateRight;
  3702. if (comparison > 0) {
  3703. dateLeft = toDate(baseDate);
  3704. dateRight = toDate(date);
  3705. } else {
  3706. dateLeft = toDate(date);
  3707. dateRight = toDate(baseDate);
  3708. }
  3709. var roundingMethod = getRoundingMethod((_options$roundingMeth = options === null || options === void 0 ? void 0 : options.roundingMethod) !== null && _options$roundingMeth !== void 0 ? _options$roundingMeth : "round");
  3710. var milliseconds = dateRight.getTime() - dateLeft.getTime();
  3711. var minutes = milliseconds / millisecondsInMinute;
  3712. var timezoneOffset = getTimezoneOffsetInMilliseconds(dateRight) - getTimezoneOffsetInMilliseconds(dateLeft);
  3713. var dstNormalizedMinutes = (milliseconds - timezoneOffset) / millisecondsInMinute;
  3714. var defaultUnit = options === null || options === void 0 ? void 0 : options.unit;
  3715. var unit;
  3716. if (!defaultUnit) {
  3717. if (minutes < 1) {
  3718. unit = "second";
  3719. } else if (minutes < 60) {
  3720. unit = "minute";
  3721. } else if (minutes < minutesInDay) {
  3722. unit = "hour";
  3723. } else if (dstNormalizedMinutes < minutesInMonth) {
  3724. unit = "day";
  3725. } else if (dstNormalizedMinutes < minutesInYear) {
  3726. unit = "month";
  3727. } else {
  3728. unit = "year";
  3729. }
  3730. } else {
  3731. unit = defaultUnit;
  3732. }
  3733. if (unit === "second") {
  3734. var seconds = roundingMethod(milliseconds / 1000);
  3735. return locale.formatDistance("xSeconds", seconds, localizeOptions);
  3736. } else if (unit === "minute") {
  3737. var roundedMinutes = roundingMethod(minutes);
  3738. return locale.formatDistance("xMinutes", roundedMinutes, localizeOptions);
  3739. } else if (unit === "hour") {
  3740. var hours = roundingMethod(minutes / 60);
  3741. return locale.formatDistance("xHours", hours, localizeOptions);
  3742. } else if (unit === "day") {
  3743. var _days2 = roundingMethod(dstNormalizedMinutes / minutesInDay);
  3744. return locale.formatDistance("xDays", _days2, localizeOptions);
  3745. } else if (unit === "month") {
  3746. var _months = roundingMethod(dstNormalizedMinutes / minutesInMonth);
  3747. return _months === 12 && defaultUnit !== "month" ? locale.formatDistance("xYears", 1, localizeOptions) : locale.formatDistance("xMonths", _months, localizeOptions);
  3748. } else {
  3749. var years = roundingMethod(dstNormalizedMinutes / minutesInYear);
  3750. return locale.formatDistance("xYears", years, localizeOptions);
  3751. }
  3752. }
  3753. // lib/fp/formatDistanceStrict.mjs
  3754. var formatDistanceStrict3 = convertToFP(formatDistanceStrict, 2);
  3755. // lib/fp/formatDistanceStrictWithOptions.mjs
  3756. var _formatDistanceStrictWithOptions = convertToFP(formatDistanceStrict, 3);
  3757. // lib/fp/formatDistanceWithOptions.mjs
  3758. var _formatDistanceWithOptions = convertToFP(formatDistance3, 3);
  3759. // lib/formatDuration.mjs
  3760. function formatDuration(duration, options) {var _ref22, _options$locale10, _options$format, _options$zero, _options$delimiter;
  3761. var defaultOptions10 = getDefaultOptions();
  3762. var locale = (_ref22 = (_options$locale10 = options === null || options === void 0 ? void 0 : options.locale) !== null && _options$locale10 !== void 0 ? _options$locale10 : defaultOptions10.locale) !== null && _ref22 !== void 0 ? _ref22 : enUS;
  3763. var format4 = (_options$format = options === null || options === void 0 ? void 0 : options.format) !== null && _options$format !== void 0 ? _options$format : defaultFormat;
  3764. var zero = (_options$zero = options === null || options === void 0 ? void 0 : options.zero) !== null && _options$zero !== void 0 ? _options$zero : false;
  3765. var delimiter = (_options$delimiter = options === null || options === void 0 ? void 0 : options.delimiter) !== null && _options$delimiter !== void 0 ? _options$delimiter : " ";
  3766. if (!locale.formatDistance) {
  3767. return "";
  3768. }
  3769. var result = format4.reduce(function (acc, unit) {
  3770. var token = "x".concat(unit.replace(/(^.)/, function (m) {return m.toUpperCase();}));
  3771. var value = duration[unit];
  3772. if (value !== undefined && (zero || duration[unit])) {
  3773. return acc.concat(locale.formatDistance(token, value));
  3774. }
  3775. return acc;
  3776. }, []).join(delimiter);
  3777. return result;
  3778. }
  3779. var defaultFormat = [
  3780. "years",
  3781. "months",
  3782. "weeks",
  3783. "days",
  3784. "hours",
  3785. "minutes",
  3786. "seconds"];
  3787. // lib/fp/formatDuration.mjs
  3788. var formatDuration3 = convertToFP(formatDuration, 1);
  3789. // lib/fp/formatDurationWithOptions.mjs
  3790. var _formatDurationWithOptions = convertToFP(formatDuration, 2);
  3791. // lib/formatISO.mjs
  3792. function formatISO(date, options) {var _options$format2, _options$representati;
  3793. var _date = toDate(date);
  3794. if (isNaN(_date.getTime())) {
  3795. throw new RangeError("Invalid time value");
  3796. }
  3797. var format4 = (_options$format2 = options === null || options === void 0 ? void 0 : options.format) !== null && _options$format2 !== void 0 ? _options$format2 : "extended";
  3798. var representation = (_options$representati = options === null || options === void 0 ? void 0 : options.representation) !== null && _options$representati !== void 0 ? _options$representati : "complete";
  3799. var result = "";
  3800. var tzOffset = "";
  3801. var dateDelimiter = format4 === "extended" ? "-" : "";
  3802. var timeDelimiter = format4 === "extended" ? ":" : "";
  3803. if (representation !== "time") {
  3804. var day = addLeadingZeros(_date.getDate(), 2);
  3805. var month = addLeadingZeros(_date.getMonth() + 1, 2);
  3806. var year = addLeadingZeros(_date.getFullYear(), 4);
  3807. result = "".concat(year).concat(dateDelimiter).concat(month).concat(dateDelimiter).concat(day);
  3808. }
  3809. if (representation !== "date") {
  3810. var offset = _date.getTimezoneOffset();
  3811. if (offset !== 0) {
  3812. var absoluteOffset = Math.abs(offset);
  3813. var hourOffset = addLeadingZeros(Math.trunc(absoluteOffset / 60), 2);
  3814. var minuteOffset = addLeadingZeros(absoluteOffset % 60, 2);
  3815. var sign = offset < 0 ? "+" : "-";
  3816. tzOffset = "".concat(sign).concat(hourOffset, ":").concat(minuteOffset);
  3817. } else {
  3818. tzOffset = "Z";
  3819. }
  3820. var hour = addLeadingZeros(_date.getHours(), 2);
  3821. var minute = addLeadingZeros(_date.getMinutes(), 2);
  3822. var second = addLeadingZeros(_date.getSeconds(), 2);
  3823. var separator = result === "" ? "" : "T";
  3824. var time = [hour, minute, second].join(timeDelimiter);
  3825. result = "".concat(result).concat(separator).concat(time).concat(tzOffset);
  3826. }
  3827. return result;
  3828. }
  3829. // lib/fp/formatISO.mjs
  3830. var formatISO3 = convertToFP(formatISO, 1);
  3831. // lib/formatISO9075.mjs
  3832. function formatISO9075(date, options) {var _options$format3, _options$representati2;
  3833. var _date = toDate(date);
  3834. if (!isValid(_date)) {
  3835. throw new RangeError("Invalid time value");
  3836. }
  3837. var format4 = (_options$format3 = options === null || options === void 0 ? void 0 : options.format) !== null && _options$format3 !== void 0 ? _options$format3 : "extended";
  3838. var representation = (_options$representati2 = options === null || options === void 0 ? void 0 : options.representation) !== null && _options$representati2 !== void 0 ? _options$representati2 : "complete";
  3839. var result = "";
  3840. var dateDelimiter = format4 === "extended" ? "-" : "";
  3841. var timeDelimiter = format4 === "extended" ? ":" : "";
  3842. if (representation !== "time") {
  3843. var day = addLeadingZeros(_date.getDate(), 2);
  3844. var month = addLeadingZeros(_date.getMonth() + 1, 2);
  3845. var year = addLeadingZeros(_date.getFullYear(), 4);
  3846. result = "".concat(year).concat(dateDelimiter).concat(month).concat(dateDelimiter).concat(day);
  3847. }
  3848. if (representation !== "date") {
  3849. var hour = addLeadingZeros(_date.getHours(), 2);
  3850. var minute = addLeadingZeros(_date.getMinutes(), 2);
  3851. var second = addLeadingZeros(_date.getSeconds(), 2);
  3852. var separator = result === "" ? "" : " ";
  3853. result = "".concat(result).concat(separator).concat(hour).concat(timeDelimiter).concat(minute).concat(timeDelimiter).concat(second);
  3854. }
  3855. return result;
  3856. }
  3857. // lib/fp/formatISO9075.mjs
  3858. var formatISO90753 = convertToFP(formatISO9075, 1);
  3859. // lib/fp/formatISO9075WithOptions.mjs
  3860. var _formatISO9075WithOptions = convertToFP(formatISO9075, 2);
  3861. // lib/formatISODuration.mjs
  3862. function formatISODuration(duration) {
  3863. var _duration$years2 =
  3864. duration.years,years = _duration$years2 === void 0 ? 0 : _duration$years2,_duration$months2 = duration.months,months = _duration$months2 === void 0 ? 0 : _duration$months2,_duration$days2 = duration.days,days = _duration$days2 === void 0 ? 0 : _duration$days2,_duration$hours2 = duration.hours,hours = _duration$hours2 === void 0 ? 0 : _duration$hours2,_duration$minutes2 = duration.minutes,minutes = _duration$minutes2 === void 0 ? 0 : _duration$minutes2,_duration$seconds2 = duration.seconds,seconds = _duration$seconds2 === void 0 ? 0 : _duration$seconds2;
  3865. return "P".concat(years, "Y").concat(months, "M").concat(days, "DT").concat(hours, "H").concat(minutes, "M").concat(seconds, "S");
  3866. }
  3867. // lib/fp/formatISODuration.mjs
  3868. var formatISODuration3 = convertToFP(formatISODuration, 1);
  3869. // lib/fp/formatISOWithOptions.mjs
  3870. var _formatISOWithOptions = convertToFP(formatISO, 2);
  3871. // lib/formatRFC3339.mjs
  3872. function formatRFC3339(date, options) {var _options$fractionDigi;
  3873. var _date = toDate(date);
  3874. if (!isValid(_date)) {
  3875. throw new RangeError("Invalid time value");
  3876. }
  3877. var fractionDigits = (_options$fractionDigi = options === null || options === void 0 ? void 0 : options.fractionDigits) !== null && _options$fractionDigi !== void 0 ? _options$fractionDigi : 0;
  3878. var day = addLeadingZeros(_date.getDate(), 2);
  3879. var month = addLeadingZeros(_date.getMonth() + 1, 2);
  3880. var year = _date.getFullYear();
  3881. var hour = addLeadingZeros(_date.getHours(), 2);
  3882. var minute = addLeadingZeros(_date.getMinutes(), 2);
  3883. var second = addLeadingZeros(_date.getSeconds(), 2);
  3884. var fractionalSecond = "";
  3885. if (fractionDigits > 0) {
  3886. var _milliseconds = _date.getMilliseconds();
  3887. var fractionalSeconds = Math.trunc(_milliseconds * Math.pow(10, fractionDigits - 3));
  3888. fractionalSecond = "." + addLeadingZeros(fractionalSeconds, fractionDigits);
  3889. }
  3890. var offset = "";
  3891. var tzOffset = _date.getTimezoneOffset();
  3892. if (tzOffset !== 0) {
  3893. var absoluteOffset = Math.abs(tzOffset);
  3894. var hourOffset = addLeadingZeros(Math.trunc(absoluteOffset / 60), 2);
  3895. var minuteOffset = addLeadingZeros(absoluteOffset % 60, 2);
  3896. var sign = tzOffset < 0 ? "+" : "-";
  3897. offset = "".concat(sign).concat(hourOffset, ":").concat(minuteOffset);
  3898. } else {
  3899. offset = "Z";
  3900. }
  3901. return "".concat(year, "-").concat(month, "-").concat(day, "T").concat(hour, ":").concat(minute, ":").concat(second).concat(fractionalSecond).concat(offset);
  3902. }
  3903. // lib/fp/formatRFC3339.mjs
  3904. var formatRFC33393 = convertToFP(formatRFC3339, 1);
  3905. // lib/fp/formatRFC3339WithOptions.mjs
  3906. var _formatRFC3339WithOptions = convertToFP(formatRFC3339, 2);
  3907. // lib/formatRFC7231.mjs
  3908. function formatRFC7231(date) {
  3909. var _date = toDate(date);
  3910. if (!isValid(_date)) {
  3911. throw new RangeError("Invalid time value");
  3912. }
  3913. var dayName = days[_date.getUTCDay()];
  3914. var dayOfMonth = addLeadingZeros(_date.getUTCDate(), 2);
  3915. var monthName = months[_date.getUTCMonth()];
  3916. var year = _date.getUTCFullYear();
  3917. var hour = addLeadingZeros(_date.getUTCHours(), 2);
  3918. var minute = addLeadingZeros(_date.getUTCMinutes(), 2);
  3919. var second = addLeadingZeros(_date.getUTCSeconds(), 2);
  3920. return "".concat(dayName, ", ").concat(dayOfMonth, " ").concat(monthName, " ").concat(year, " ").concat(hour, ":").concat(minute, ":").concat(second, " GMT");
  3921. }
  3922. var days = ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"];
  3923. var months = [
  3924. "Jan",
  3925. "Feb",
  3926. "Mar",
  3927. "Apr",
  3928. "May",
  3929. "Jun",
  3930. "Jul",
  3931. "Aug",
  3932. "Sep",
  3933. "Oct",
  3934. "Nov",
  3935. "Dec"];
  3936. // lib/fp/formatRFC7231.mjs
  3937. var formatRFC72313 = convertToFP(formatRFC7231, 1);
  3938. // lib/formatRelative.mjs
  3939. function formatRelative3(date, baseDate, options) {var _ref23, _options$locale11, _ref24, _ref25, _ref26, _options$weekStartsOn4, _options$locale12, _defaultOptions11$loc;
  3940. var _date = toDate(date);
  3941. var _baseDate = toDate(baseDate);
  3942. var defaultOptions11 = getDefaultOptions();
  3943. var locale = (_ref23 = (_options$locale11 = options === null || options === void 0 ? void 0 : options.locale) !== null && _options$locale11 !== void 0 ? _options$locale11 : defaultOptions11.locale) !== null && _ref23 !== void 0 ? _ref23 : enUS;
  3944. var weekStartsOn = (_ref24 = (_ref25 = (_ref26 = (_options$weekStartsOn4 = options === null || options === void 0 ? void 0 : options.weekStartsOn) !== null && _options$weekStartsOn4 !== void 0 ? _options$weekStartsOn4 : options === null || options === void 0 || (_options$locale12 = options.locale) === null || _options$locale12 === void 0 || (_options$locale12 = _options$locale12.options) === null || _options$locale12 === void 0 ? void 0 : _options$locale12.weekStartsOn) !== null && _ref26 !== void 0 ? _ref26 : defaultOptions11.weekStartsOn) !== null && _ref25 !== void 0 ? _ref25 : (_defaultOptions11$loc = defaultOptions11.locale) === null || _defaultOptions11$loc === void 0 || (_defaultOptions11$loc = _defaultOptions11$loc.options) === null || _defaultOptions11$loc === void 0 ? void 0 : _defaultOptions11$loc.weekStartsOn) !== null && _ref24 !== void 0 ? _ref24 : 0;
  3945. var diff = differenceInCalendarDays(_date, _baseDate);
  3946. if (isNaN(diff)) {
  3947. throw new RangeError("Invalid time value");
  3948. }
  3949. var token;
  3950. if (diff < -6) {
  3951. token = "other";
  3952. } else if (diff < -1) {
  3953. token = "lastWeek";
  3954. } else if (diff < 0) {
  3955. token = "yesterday";
  3956. } else if (diff < 1) {
  3957. token = "today";
  3958. } else if (diff < 2) {
  3959. token = "tomorrow";
  3960. } else if (diff < 7) {
  3961. token = "nextWeek";
  3962. } else {
  3963. token = "other";
  3964. }
  3965. var formatStr = locale.formatRelative(token, _date, _baseDate, {
  3966. locale: locale,
  3967. weekStartsOn: weekStartsOn
  3968. });
  3969. return format(_date, formatStr, { locale: locale, weekStartsOn: weekStartsOn });
  3970. }
  3971. // lib/fp/formatRelative.mjs
  3972. var formatRelative5 = convertToFP(formatRelative3, 2);
  3973. // lib/fp/formatRelativeWithOptions.mjs
  3974. var _formatRelativeWithOptions = convertToFP(formatRelative3, 3);
  3975. // lib/fp/formatWithOptions.mjs
  3976. var _formatWithOptions = convertToFP(format, 3);
  3977. // lib/fromUnixTime.mjs
  3978. function fromUnixTime(unixTime) {
  3979. return toDate(unixTime * 1000);
  3980. }
  3981. // lib/fp/fromUnixTime.mjs
  3982. var fromUnixTime3 = convertToFP(fromUnixTime, 1);
  3983. // lib/getDate.mjs
  3984. function getDate(date) {
  3985. var _date = toDate(date);
  3986. var dayOfMonth = _date.getDate();
  3987. return dayOfMonth;
  3988. }
  3989. // lib/fp/getDate.mjs
  3990. var getDate3 = convertToFP(getDate, 1);
  3991. // lib/getDay.mjs
  3992. function getDay(date) {
  3993. var _date = toDate(date);
  3994. var day = _date.getDay();
  3995. return day;
  3996. }
  3997. // lib/fp/getDay.mjs
  3998. var getDay3 = convertToFP(getDay, 1);
  3999. // lib/fp/getDayOfYear.mjs
  4000. var getDayOfYear4 = convertToFP(getDayOfYear, 1);
  4001. // lib/getDaysInMonth.mjs
  4002. function getDaysInMonth(date) {
  4003. var _date = toDate(date);
  4004. var year = _date.getFullYear();
  4005. var monthIndex = _date.getMonth();
  4006. var lastDayOfMonth = constructFrom(date, 0);
  4007. lastDayOfMonth.setFullYear(year, monthIndex + 1, 0);
  4008. lastDayOfMonth.setHours(0, 0, 0, 0);
  4009. return lastDayOfMonth.getDate();
  4010. }
  4011. // lib/fp/getDaysInMonth.mjs
  4012. var getDaysInMonth3 = convertToFP(getDaysInMonth, 1);
  4013. // lib/isLeapYear.mjs
  4014. function isLeapYear(date) {
  4015. var _date = toDate(date);
  4016. var year = _date.getFullYear();
  4017. return year % 400 === 0 || year % 4 === 0 && year % 100 !== 0;
  4018. }
  4019. // lib/getDaysInYear.mjs
  4020. function getDaysInYear(date) {
  4021. var _date = toDate(date);
  4022. if (String(new Date(_date)) === "Invalid Date") {
  4023. return NaN;
  4024. }
  4025. return isLeapYear(_date) ? 366 : 365;
  4026. }
  4027. // lib/fp/getDaysInYear.mjs
  4028. var getDaysInYear3 = convertToFP(getDaysInYear, 1);
  4029. // lib/getDecade.mjs
  4030. function getDecade(date) {
  4031. var _date = toDate(date);
  4032. var year = _date.getFullYear();
  4033. var decade = Math.floor(year / 10) * 10;
  4034. return decade;
  4035. }
  4036. // lib/fp/getDecade.mjs
  4037. var getDecade3 = convertToFP(getDecade, 1);
  4038. // lib/getHours.mjs
  4039. function getHours(date) {
  4040. var _date = toDate(date);
  4041. var hours = _date.getHours();
  4042. return hours;
  4043. }
  4044. // lib/fp/getHours.mjs
  4045. var getHours3 = convertToFP(getHours, 1);
  4046. // lib/getISODay.mjs
  4047. function getISODay(date) {
  4048. var _date = toDate(date);
  4049. var day = _date.getDay();
  4050. if (day === 0) {
  4051. day = 7;
  4052. }
  4053. return day;
  4054. }
  4055. // lib/fp/getISODay.mjs
  4056. var getISODay3 = convertToFP(getISODay, 1);
  4057. // lib/fp/getISOWeek.mjs
  4058. var getISOWeek4 = convertToFP(getISOWeek, 1);
  4059. // lib/fp/getISOWeekYear.mjs
  4060. var getISOWeekYear8 = convertToFP(getISOWeekYear, 1);
  4061. // lib/getISOWeeksInYear.mjs
  4062. function getISOWeeksInYear(date) {
  4063. var thisYear = startOfISOWeekYear(date);
  4064. var nextYear = startOfISOWeekYear(addWeeks(thisYear, 60));
  4065. var diff = +nextYear - +thisYear;
  4066. return Math.round(diff / millisecondsInWeek);
  4067. }
  4068. // lib/fp/getISOWeeksInYear.mjs
  4069. var getISOWeeksInYear3 = convertToFP(getISOWeeksInYear, 1);
  4070. // lib/getMilliseconds.mjs
  4071. function getMilliseconds(date) {
  4072. var _date = toDate(date);
  4073. var milliseconds = _date.getMilliseconds();
  4074. return milliseconds;
  4075. }
  4076. // lib/fp/getMilliseconds.mjs
  4077. var getMilliseconds3 = convertToFP(getMilliseconds, 1);
  4078. // lib/getMinutes.mjs
  4079. function getMinutes(date) {
  4080. var _date = toDate(date);
  4081. var minutes = _date.getMinutes();
  4082. return minutes;
  4083. }
  4084. // lib/fp/getMinutes.mjs
  4085. var getMinutes3 = convertToFP(getMinutes, 1);
  4086. // lib/getMonth.mjs
  4087. function getMonth(date) {
  4088. var _date = toDate(date);
  4089. var month = _date.getMonth();
  4090. return month;
  4091. }
  4092. // lib/fp/getMonth.mjs
  4093. var getMonth3 = convertToFP(getMonth, 1);
  4094. // lib/getOverlappingDaysInIntervals.mjs
  4095. function getOverlappingDaysInIntervals(intervalLeft, intervalRight) {
  4096. var _sort5 = [
  4097. +toDate(intervalLeft.start),
  4098. +toDate(intervalLeft.end)].
  4099. sort(function (a, b) {return a - b;}),_sort6 = _slicedToArray(_sort5, 2),leftStart = _sort6[0],leftEnd = _sort6[1];
  4100. var _sort7 = [
  4101. +toDate(intervalRight.start),
  4102. +toDate(intervalRight.end)].
  4103. sort(function (a, b) {return a - b;}),_sort8 = _slicedToArray(_sort7, 2),rightStart = _sort8[0],rightEnd = _sort8[1];
  4104. var isOverlapping = leftStart < rightEnd && rightStart < leftEnd;
  4105. if (!isOverlapping)
  4106. return 0;
  4107. var overlapLeft = rightStart < leftStart ? leftStart : rightStart;
  4108. var left = overlapLeft - getTimezoneOffsetInMilliseconds(overlapLeft);
  4109. var overlapRight = rightEnd > leftEnd ? leftEnd : rightEnd;
  4110. var right = overlapRight - getTimezoneOffsetInMilliseconds(overlapRight);
  4111. return Math.ceil((right - left) / millisecondsInDay);
  4112. }
  4113. // lib/fp/getOverlappingDaysInIntervals.mjs
  4114. var getOverlappingDaysInIntervals3 = convertToFP(getOverlappingDaysInIntervals, 2);
  4115. // lib/fp/getQuarter.mjs
  4116. var getQuarter4 = convertToFP(getQuarter, 1);
  4117. // lib/getSeconds.mjs
  4118. function getSeconds(date) {
  4119. var _date = toDate(date);
  4120. var seconds = _date.getSeconds();
  4121. return seconds;
  4122. }
  4123. // lib/fp/getSeconds.mjs
  4124. var getSeconds3 = convertToFP(getSeconds, 1);
  4125. // lib/getTime.mjs
  4126. function getTime(date) {
  4127. var _date = toDate(date);
  4128. var timestamp = _date.getTime();
  4129. return timestamp;
  4130. }
  4131. // lib/fp/getTime.mjs
  4132. var getTime3 = convertToFP(getTime, 1);
  4133. // lib/getUnixTime.mjs
  4134. function getUnixTime(date) {
  4135. return Math.trunc(+toDate(date) / 1000);
  4136. }
  4137. // lib/fp/getUnixTime.mjs
  4138. var getUnixTime3 = convertToFP(getUnixTime, 1);
  4139. // lib/fp/getWeek.mjs
  4140. var getWeek4 = convertToFP(getWeek, 1);
  4141. // lib/getWeekOfMonth.mjs
  4142. function getWeekOfMonth(date, options) {var _ref27, _ref28, _ref29, _options$weekStartsOn5, _options$locale13, _defaultOptions12$loc;
  4143. var defaultOptions12 = getDefaultOptions();
  4144. var weekStartsOn = (_ref27 = (_ref28 = (_ref29 = (_options$weekStartsOn5 = options === null || options === void 0 ? void 0 : options.weekStartsOn) !== null && _options$weekStartsOn5 !== void 0 ? _options$weekStartsOn5 : options === null || options === void 0 || (_options$locale13 = options.locale) === null || _options$locale13 === void 0 || (_options$locale13 = _options$locale13.options) === null || _options$locale13 === void 0 ? void 0 : _options$locale13.weekStartsOn) !== null && _ref29 !== void 0 ? _ref29 : defaultOptions12.weekStartsOn) !== null && _ref28 !== void 0 ? _ref28 : (_defaultOptions12$loc = defaultOptions12.locale) === null || _defaultOptions12$loc === void 0 || (_defaultOptions12$loc = _defaultOptions12$loc.options) === null || _defaultOptions12$loc === void 0 ? void 0 : _defaultOptions12$loc.weekStartsOn) !== null && _ref27 !== void 0 ? _ref27 : 0;
  4145. var currentDayOfMonth = getDate(date);
  4146. if (isNaN(currentDayOfMonth))
  4147. return NaN;
  4148. var startWeekDay = getDay(startOfMonth(date));
  4149. var lastDayOfFirstWeek = weekStartsOn - startWeekDay;
  4150. if (lastDayOfFirstWeek <= 0)
  4151. lastDayOfFirstWeek += 7;
  4152. var remainingDaysAfterFirstWeek = currentDayOfMonth - lastDayOfFirstWeek;
  4153. return Math.ceil(remainingDaysAfterFirstWeek / 7) + 1;
  4154. }
  4155. // lib/fp/getWeekOfMonth.mjs
  4156. var getWeekOfMonth3 = convertToFP(getWeekOfMonth, 1);
  4157. // lib/fp/getWeekOfMonthWithOptions.mjs
  4158. var _getWeekOfMonthWithOptions = convertToFP(getWeekOfMonth, 2);
  4159. // lib/fp/getWeekWithOptions.mjs
  4160. var _getWeekWithOptions = convertToFP(getWeek, 2);
  4161. // lib/fp/getWeekYear.mjs
  4162. var getWeekYear5 = convertToFP(getWeekYear, 1);
  4163. // lib/fp/getWeekYearWithOptions.mjs
  4164. var _getWeekYearWithOptions = convertToFP(getWeekYear, 2);
  4165. // lib/lastDayOfMonth.mjs
  4166. function lastDayOfMonth(date) {
  4167. var _date = toDate(date);
  4168. var month = _date.getMonth();
  4169. _date.setFullYear(_date.getFullYear(), month + 1, 0);
  4170. _date.setHours(0, 0, 0, 0);
  4171. return _date;
  4172. }
  4173. // lib/getWeeksInMonth.mjs
  4174. function getWeeksInMonth(date, options) {
  4175. return differenceInCalendarWeeks(lastDayOfMonth(date), startOfMonth(date), options) + 1;
  4176. }
  4177. // lib/fp/getWeeksInMonth.mjs
  4178. var getWeeksInMonth3 = convertToFP(getWeeksInMonth, 1);
  4179. // lib/fp/getWeeksInMonthWithOptions.mjs
  4180. var _getWeeksInMonthWithOptions = convertToFP(getWeeksInMonth, 2);
  4181. // lib/getYear.mjs
  4182. function getYear(date) {
  4183. return toDate(date).getFullYear();
  4184. }
  4185. // lib/fp/getYear.mjs
  4186. var getYear3 = convertToFP(getYear, 1);
  4187. // lib/hoursToMilliseconds.mjs
  4188. function hoursToMilliseconds(hours) {
  4189. return Math.trunc(hours * millisecondsInHour);
  4190. }
  4191. // lib/fp/hoursToMilliseconds.mjs
  4192. var hoursToMilliseconds3 = convertToFP(hoursToMilliseconds, 1);
  4193. // lib/hoursToMinutes.mjs
  4194. function hoursToMinutes(hours) {
  4195. return Math.trunc(hours * minutesInHour);
  4196. }
  4197. // lib/fp/hoursToMinutes.mjs
  4198. var hoursToMinutes3 = convertToFP(hoursToMinutes, 1);
  4199. // lib/hoursToSeconds.mjs
  4200. function hoursToSeconds(hours) {
  4201. return Math.trunc(hours * secondsInHour);
  4202. }
  4203. // lib/fp/hoursToSeconds.mjs
  4204. var hoursToSeconds3 = convertToFP(hoursToSeconds, 1);
  4205. // lib/interval.mjs
  4206. function interval(start, end, options) {
  4207. var _start = toDate(start);
  4208. if (isNaN(+_start))
  4209. throw new TypeError("Start date is invalid");
  4210. var _end = toDate(end);
  4211. if (isNaN(+_end))
  4212. throw new TypeError("End date is invalid");
  4213. if (options !== null && options !== void 0 && options.assertPositive && +_start > +_end)
  4214. throw new TypeError("End date must be after start date");
  4215. return { start: _start, end: _end };
  4216. }
  4217. // lib/fp/interval.mjs
  4218. var interval3 = convertToFP(interval, 2);
  4219. // lib/intervalToDuration.mjs
  4220. function intervalToDuration(interval4) {
  4221. var start = toDate(interval4.start);
  4222. var end = toDate(interval4.end);
  4223. var duration = {};
  4224. var years = differenceInYears(end, start);
  4225. if (years)
  4226. duration.years = years;
  4227. var remainingMonths = add(start, { years: duration.years });
  4228. var months2 = differenceInMonths(end, remainingMonths);
  4229. if (months2)
  4230. duration.months = months2;
  4231. var remainingDays = add(remainingMonths, { months: duration.months });
  4232. var days2 = differenceInDays(end, remainingDays);
  4233. if (days2)
  4234. duration.days = days2;
  4235. var remainingHours = add(remainingDays, { days: duration.days });
  4236. var hours = differenceInHours(end, remainingHours);
  4237. if (hours)
  4238. duration.hours = hours;
  4239. var remainingMinutes = add(remainingHours, { hours: duration.hours });
  4240. var minutes = differenceInMinutes(end, remainingMinutes);
  4241. if (minutes)
  4242. duration.minutes = minutes;
  4243. var remainingSeconds = add(remainingMinutes, { minutes: duration.minutes });
  4244. var seconds = differenceInSeconds(end, remainingSeconds);
  4245. if (seconds)
  4246. duration.seconds = seconds;
  4247. return duration;
  4248. }
  4249. // lib/fp/intervalToDuration.mjs
  4250. var intervalToDuration3 = convertToFP(intervalToDuration, 1);
  4251. // lib/fp/intervalWithOptions.mjs
  4252. var _intervalWithOptions = convertToFP(interval, 3);
  4253. // lib/intlFormat.mjs
  4254. function intlFormat(date, formatOrLocale, localeOptions) {var _localeOptions;
  4255. var formatOptions;
  4256. if (isFormatOptions(formatOrLocale)) {
  4257. formatOptions = formatOrLocale;
  4258. } else {
  4259. localeOptions = formatOrLocale;
  4260. }
  4261. return new Intl.DateTimeFormat((_localeOptions = localeOptions) === null || _localeOptions === void 0 ? void 0 : _localeOptions.locale, formatOptions).format(toDate(date));
  4262. }
  4263. var isFormatOptions = function isFormatOptions(opts) {
  4264. return opts !== undefined && !("locale" in opts);
  4265. };
  4266. // lib/fp/intlFormat.mjs
  4267. var intlFormat3 = convertToFP(intlFormat, 3);
  4268. // lib/intlFormatDistance.mjs
  4269. function intlFormatDistance(date, baseDate, options) {
  4270. var value = 0;
  4271. var unit;
  4272. var dateLeft = toDate(date);
  4273. var dateRight = toDate(baseDate);
  4274. if (!(options !== null && options !== void 0 && options.unit)) {
  4275. var diffInSeconds = differenceInSeconds(dateLeft, dateRight);
  4276. if (Math.abs(diffInSeconds) < secondsInMinute) {
  4277. value = differenceInSeconds(dateLeft, dateRight);
  4278. unit = "second";
  4279. } else if (Math.abs(diffInSeconds) < secondsInHour) {
  4280. value = differenceInMinutes(dateLeft, dateRight);
  4281. unit = "minute";
  4282. } else if (Math.abs(diffInSeconds) < secondsInDay && Math.abs(differenceInCalendarDays(dateLeft, dateRight)) < 1) {
  4283. value = differenceInHours(dateLeft, dateRight);
  4284. unit = "hour";
  4285. } else if (Math.abs(diffInSeconds) < secondsInWeek && (value = differenceInCalendarDays(dateLeft, dateRight)) && Math.abs(value) < 7) {
  4286. unit = "day";
  4287. } else if (Math.abs(diffInSeconds) < secondsInMonth) {
  4288. value = differenceInCalendarWeeks(dateLeft, dateRight);
  4289. unit = "week";
  4290. } else if (Math.abs(diffInSeconds) < secondsInQuarter) {
  4291. value = differenceInCalendarMonths(dateLeft, dateRight);
  4292. unit = "month";
  4293. } else if (Math.abs(diffInSeconds) < secondsInYear) {
  4294. if (differenceInCalendarQuarters(dateLeft, dateRight) < 4) {
  4295. value = differenceInCalendarQuarters(dateLeft, dateRight);
  4296. unit = "quarter";
  4297. } else {
  4298. value = differenceInCalendarYears(dateLeft, dateRight);
  4299. unit = "year";
  4300. }
  4301. } else {
  4302. value = differenceInCalendarYears(dateLeft, dateRight);
  4303. unit = "year";
  4304. }
  4305. } else {
  4306. unit = options === null || options === void 0 ? void 0 : options.unit;
  4307. if (unit === "second") {
  4308. value = differenceInSeconds(dateLeft, dateRight);
  4309. } else if (unit === "minute") {
  4310. value = differenceInMinutes(dateLeft, dateRight);
  4311. } else if (unit === "hour") {
  4312. value = differenceInHours(dateLeft, dateRight);
  4313. } else if (unit === "day") {
  4314. value = differenceInCalendarDays(dateLeft, dateRight);
  4315. } else if (unit === "week") {
  4316. value = differenceInCalendarWeeks(dateLeft, dateRight);
  4317. } else if (unit === "month") {
  4318. value = differenceInCalendarMonths(dateLeft, dateRight);
  4319. } else if (unit === "quarter") {
  4320. value = differenceInCalendarQuarters(dateLeft, dateRight);
  4321. } else if (unit === "year") {
  4322. value = differenceInCalendarYears(dateLeft, dateRight);
  4323. }
  4324. }
  4325. var rtf = new Intl.RelativeTimeFormat(options === null || options === void 0 ? void 0 : options.locale, {
  4326. localeMatcher: options === null || options === void 0 ? void 0 : options.localeMatcher,
  4327. numeric: (options === null || options === void 0 ? void 0 : options.numeric) || "auto",
  4328. style: options === null || options === void 0 ? void 0 : options.style
  4329. });
  4330. return rtf.format(value, unit);
  4331. }
  4332. // lib/fp/intlFormatDistance.mjs
  4333. var intlFormatDistance3 = convertToFP(intlFormatDistance, 2);
  4334. // lib/fp/intlFormatDistanceWithOptions.mjs
  4335. var _intlFormatDistanceWithOptions = convertToFP(intlFormatDistance, 3);
  4336. // lib/isAfter.mjs
  4337. function isAfter(date, dateToCompare) {
  4338. var _date = toDate(date);
  4339. var _dateToCompare = toDate(dateToCompare);
  4340. return _date.getTime() > _dateToCompare.getTime();
  4341. }
  4342. // lib/fp/isAfter.mjs
  4343. var isAfter3 = convertToFP(isAfter, 2);
  4344. // lib/isBefore.mjs
  4345. function isBefore(date, dateToCompare) {
  4346. var _date = toDate(date);
  4347. var _dateToCompare = toDate(dateToCompare);
  4348. return +_date < +_dateToCompare;
  4349. }
  4350. // lib/fp/isBefore.mjs
  4351. var isBefore3 = convertToFP(isBefore, 2);
  4352. // lib/fp/isDate.mjs
  4353. var isDate4 = convertToFP(isDate, 1);
  4354. // lib/isEqual.mjs
  4355. function isEqual(leftDate, rightDate) {
  4356. var _dateLeft = toDate(leftDate);
  4357. var _dateRight = toDate(rightDate);
  4358. return +_dateLeft === +_dateRight;
  4359. }
  4360. // lib/fp/isEqual.mjs
  4361. var isEqual3 = convertToFP(isEqual, 2);
  4362. // lib/isExists.mjs
  4363. function isExists(year, month, day) {
  4364. var date = new Date(year, month, day);
  4365. return date.getFullYear() === year && date.getMonth() === month && date.getDate() === day;
  4366. }
  4367. // lib/fp/isExists.mjs
  4368. var isExists3 = convertToFP(isExists, 3);
  4369. // lib/isFirstDayOfMonth.mjs
  4370. function isFirstDayOfMonth(date) {
  4371. return toDate(date).getDate() === 1;
  4372. }
  4373. // lib/fp/isFirstDayOfMonth.mjs
  4374. var isFirstDayOfMonth3 = convertToFP(isFirstDayOfMonth, 1);
  4375. // lib/isFriday.mjs
  4376. function isFriday(date) {
  4377. return toDate(date).getDay() === 5;
  4378. }
  4379. // lib/fp/isFriday.mjs
  4380. var isFriday3 = convertToFP(isFriday, 1);
  4381. // lib/fp/isLastDayOfMonth.mjs
  4382. var isLastDayOfMonth4 = convertToFP(isLastDayOfMonth, 1);
  4383. // lib/fp/isLeapYear.mjs
  4384. var isLeapYear4 = convertToFP(isLeapYear, 1);
  4385. // lib/getDefaultOptions.mjs
  4386. function getDefaultOptions2() {
  4387. return Object.assign({}, getDefaultOptions());
  4388. }
  4389. // lib/transpose.mjs
  4390. function transpose(fromDate, constructor) {
  4391. var date = constructor instanceof Date ? constructFrom(constructor, 0) : new constructor(0);
  4392. date.setFullYear(fromDate.getFullYear(), fromDate.getMonth(), fromDate.getDate());
  4393. date.setHours(fromDate.getHours(), fromDate.getMinutes(), fromDate.getSeconds(), fromDate.getMilliseconds());
  4394. return date;
  4395. }
  4396. // lib/parse/_lib/Setter.mjs
  4397. var TIMEZONE_UNIT_PRIORITY = 10;var
  4398. Setter = /*#__PURE__*/function () {function Setter() {_classCallCheck(this, Setter);_defineProperty(this, "subPriority",
  4399. 0);}_createClass(Setter, [{ key: "validate", value:
  4400. function validate(_utcDate, _options) {
  4401. return true;
  4402. } }]);return Setter;}();var
  4403. ValueSetter = /*#__PURE__*/function (_Setter2) {_inherits(ValueSetter, _Setter2);
  4404. function ValueSetter(value, validateValue, setValue, priority, subPriority) {var _this;_classCallCheck(this, ValueSetter);
  4405. _this = _callSuper(this, ValueSetter);
  4406. _this.value = value;
  4407. _this.validateValue = validateValue;
  4408. _this.setValue = setValue;
  4409. _this.priority = priority;
  4410. if (subPriority) {
  4411. _this.subPriority = subPriority;
  4412. }return _this;
  4413. }_createClass(ValueSetter, [{ key: "validate", value:
  4414. function validate(date, options) {
  4415. return this.validateValue(date, this.value, options);
  4416. } }, { key: "set", value:
  4417. function set(date, flags, options) {
  4418. return this.setValue(date, flags, this.value, options);
  4419. } }]);return ValueSetter;}(Setter);var
  4420. DateToSystemTimezoneSetter = /*#__PURE__*/function (_Setter3) {_inherits(DateToSystemTimezoneSetter, _Setter3);function DateToSystemTimezoneSetter() {var _this2;_classCallCheck(this, DateToSystemTimezoneSetter);for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {args[_key2] = arguments[_key2];}_this2 = _callSuper(this, DateToSystemTimezoneSetter, [].concat(args));_defineProperty(_assertThisInitialized(_this2), "priority",
  4421. TIMEZONE_UNIT_PRIORITY);_defineProperty(_assertThisInitialized(_this2), "subPriority",
  4422. -1);return _this2;}_createClass(DateToSystemTimezoneSetter, [{ key: "set", value:
  4423. function set(date, flags) {
  4424. if (flags.timestampIsSet)
  4425. return date;
  4426. return constructFrom(date, transpose(date, Date));
  4427. } }]);return DateToSystemTimezoneSetter;}(Setter);
  4428. // lib/parse/_lib/Parser.mjs
  4429. var Parser = /*#__PURE__*/function () {function Parser() {_classCallCheck(this, Parser);}_createClass(Parser, [{ key: "run", value:
  4430. function run(dateString, token, match3, options) {
  4431. var result = this.parse(dateString, token, match3, options);
  4432. if (!result) {
  4433. return null;
  4434. }
  4435. return {
  4436. setter: new ValueSetter(result.value, this.validate, this.set, this.priority, this.subPriority),
  4437. rest: result.rest
  4438. };
  4439. } }, { key: "validate", value:
  4440. function validate(_utcDate, _value, _options) {
  4441. return true;
  4442. } }]);return Parser;}();
  4443. // lib/parse/_lib/parsers/EraParser.mjs
  4444. var EraParser = /*#__PURE__*/function (_Parser) {_inherits(EraParser, _Parser);function EraParser() {var _this3;_classCallCheck(this, EraParser);for (var _len3 = arguments.length, args = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {args[_key3] = arguments[_key3];}_this3 = _callSuper(this, EraParser, [].concat(args));_defineProperty(_assertThisInitialized(_this3), "priority",
  4445. 140);_defineProperty(_assertThisInitialized(_this3), "incompatibleTokens",
  4446. ["R", "u", "t", "T"]);return _this3;}_createClass(EraParser, [{ key: "parse", value: function parse(dateString, token, match3) {switch (token) {case "G":case "GG":case "GGG":return match3.era(dateString, { width: "abbreviated" }) || match3.era(dateString, { width: "narrow" });case "GGGGG":return match3.era(dateString, { width: "narrow" });case "GGGG":default:return match3.era(dateString, { width: "wide" }) || match3.era(dateString, { width: "abbreviated" }) || match3.era(dateString, { width: "narrow" });}} }, { key: "set", value: function set(date, flags, value) {flags.era = value;date.setFullYear(value, 0, 1);date.setHours(0, 0, 0, 0);return date;} }]);return EraParser;}(Parser);
  4447. // lib/parse/_lib/constants.mjs
  4448. var numericPatterns = {
  4449. month: /^(1[0-2]|0?\d)/,
  4450. date: /^(3[0-1]|[0-2]?\d)/,
  4451. dayOfYear: /^(36[0-6]|3[0-5]\d|[0-2]?\d?\d)/,
  4452. week: /^(5[0-3]|[0-4]?\d)/,
  4453. hour23h: /^(2[0-3]|[0-1]?\d)/,
  4454. hour24h: /^(2[0-4]|[0-1]?\d)/,
  4455. hour11h: /^(1[0-1]|0?\d)/,
  4456. hour12h: /^(1[0-2]|0?\d)/,
  4457. minute: /^[0-5]?\d/,
  4458. second: /^[0-5]?\d/,
  4459. singleDigit: /^\d/,
  4460. twoDigits: /^\d{1,2}/,
  4461. threeDigits: /^\d{1,3}/,
  4462. fourDigits: /^\d{1,4}/,
  4463. anyDigitsSigned: /^-?\d+/,
  4464. singleDigitSigned: /^-?\d/,
  4465. twoDigitsSigned: /^-?\d{1,2}/,
  4466. threeDigitsSigned: /^-?\d{1,3}/,
  4467. fourDigitsSigned: /^-?\d{1,4}/
  4468. };
  4469. var timezonePatterns = {
  4470. basicOptionalMinutes: /^([+-])(\d{2})(\d{2})?|Z/,
  4471. basic: /^([+-])(\d{2})(\d{2})|Z/,
  4472. basicOptionalSeconds: /^([+-])(\d{2})(\d{2})((\d{2}))?|Z/,
  4473. extended: /^([+-])(\d{2}):(\d{2})|Z/,
  4474. extendedOptionalSeconds: /^([+-])(\d{2}):(\d{2})(:(\d{2}))?|Z/
  4475. };
  4476. // lib/parse/_lib/utils.mjs
  4477. function mapValue(parseFnResult, mapFn) {
  4478. if (!parseFnResult) {
  4479. return parseFnResult;
  4480. }
  4481. return {
  4482. value: mapFn(parseFnResult.value),
  4483. rest: parseFnResult.rest
  4484. };
  4485. }
  4486. function parseNumericPattern(pattern, dateString) {
  4487. var matchResult = dateString.match(pattern);
  4488. if (!matchResult) {
  4489. return null;
  4490. }
  4491. return {
  4492. value: parseInt(matchResult[0], 10),
  4493. rest: dateString.slice(matchResult[0].length)
  4494. };
  4495. }
  4496. function parseTimezonePattern(pattern, dateString) {
  4497. var matchResult = dateString.match(pattern);
  4498. if (!matchResult) {
  4499. return null;
  4500. }
  4501. if (matchResult[0] === "Z") {
  4502. return {
  4503. value: 0,
  4504. rest: dateString.slice(1)
  4505. };
  4506. }
  4507. var sign = matchResult[1] === "+" ? 1 : -1;
  4508. var hours = matchResult[2] ? parseInt(matchResult[2], 10) : 0;
  4509. var minutes = matchResult[3] ? parseInt(matchResult[3], 10) : 0;
  4510. var seconds = matchResult[5] ? parseInt(matchResult[5], 10) : 0;
  4511. return {
  4512. value: sign * (hours * millisecondsInHour + minutes * millisecondsInMinute + seconds * millisecondsInSecond),
  4513. rest: dateString.slice(matchResult[0].length)
  4514. };
  4515. }
  4516. function parseAnyDigitsSigned(dateString) {
  4517. return parseNumericPattern(numericPatterns.anyDigitsSigned, dateString);
  4518. }
  4519. function parseNDigits(n, dateString) {
  4520. switch (n) {
  4521. case 1:
  4522. return parseNumericPattern(numericPatterns.singleDigit, dateString);
  4523. case 2:
  4524. return parseNumericPattern(numericPatterns.twoDigits, dateString);
  4525. case 3:
  4526. return parseNumericPattern(numericPatterns.threeDigits, dateString);
  4527. case 4:
  4528. return parseNumericPattern(numericPatterns.fourDigits, dateString);
  4529. default:
  4530. return parseNumericPattern(new RegExp("^\\d{1," + n + "}"), dateString);
  4531. }
  4532. }
  4533. function parseNDigitsSigned(n, dateString) {
  4534. switch (n) {
  4535. case 1:
  4536. return parseNumericPattern(numericPatterns.singleDigitSigned, dateString);
  4537. case 2:
  4538. return parseNumericPattern(numericPatterns.twoDigitsSigned, dateString);
  4539. case 3:
  4540. return parseNumericPattern(numericPatterns.threeDigitsSigned, dateString);
  4541. case 4:
  4542. return parseNumericPattern(numericPatterns.fourDigitsSigned, dateString);
  4543. default:
  4544. return parseNumericPattern(new RegExp("^-?\\d{1," + n + "}"), dateString);
  4545. }
  4546. }
  4547. function dayPeriodEnumToHours(dayPeriod) {
  4548. switch (dayPeriod) {
  4549. case "morning":
  4550. return 4;
  4551. case "evening":
  4552. return 17;
  4553. case "pm":
  4554. case "noon":
  4555. case "afternoon":
  4556. return 12;
  4557. case "am":
  4558. case "midnight":
  4559. case "night":
  4560. default:
  4561. return 0;
  4562. }
  4563. }
  4564. function normalizeTwoDigitYear(twoDigitYear, currentYear) {
  4565. var isCommonEra = currentYear > 0;
  4566. var absCurrentYear = isCommonEra ? currentYear : 1 - currentYear;
  4567. var result;
  4568. if (absCurrentYear <= 50) {
  4569. result = twoDigitYear || 100;
  4570. } else {
  4571. var rangeEnd = absCurrentYear + 50;
  4572. var rangeEndCentury = Math.trunc(rangeEnd / 100) * 100;
  4573. var isPreviousCentury = twoDigitYear >= rangeEnd % 100;
  4574. result = twoDigitYear + rangeEndCentury - (isPreviousCentury ? 100 : 0);
  4575. }
  4576. return isCommonEra ? result : 1 - result;
  4577. }
  4578. function isLeapYearIndex(year) {
  4579. return year % 400 === 0 || year % 4 === 0 && year % 100 !== 0;
  4580. }
  4581. // lib/parse/_lib/parsers/YearParser.mjs
  4582. var YearParser = /*#__PURE__*/function (_Parser2) {_inherits(YearParser, _Parser2);function YearParser() {var _this4;_classCallCheck(this, YearParser);for (var _len4 = arguments.length, args = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {args[_key4] = arguments[_key4];}_this4 = _callSuper(this, YearParser, [].concat(args));_defineProperty(_assertThisInitialized(_this4), "priority",
  4583. 130);_defineProperty(_assertThisInitialized(_this4), "incompatibleTokens",
  4584. ["Y", "R", "u", "w", "I", "i", "e", "c", "t", "T"]);return _this4;}_createClass(YearParser, [{ key: "parse", value:
  4585. function parse(dateString, token, match3) {
  4586. var valueCallback = function valueCallback(year) {return {
  4587. year: year,
  4588. isTwoDigitYear: token === "yy"
  4589. };};
  4590. switch (token) {
  4591. case "y":
  4592. return mapValue(parseNDigits(4, dateString), valueCallback);
  4593. case "yo":
  4594. return mapValue(match3.ordinalNumber(dateString, {
  4595. unit: "year"
  4596. }), valueCallback);
  4597. default:
  4598. return mapValue(parseNDigits(token.length, dateString), valueCallback);
  4599. }
  4600. } }, { key: "validate", value:
  4601. function validate(_date, value) {
  4602. return value.isTwoDigitYear || value.year > 0;
  4603. } }, { key: "set", value:
  4604. function set(date, flags, value) {
  4605. var currentYear = date.getFullYear();
  4606. if (value.isTwoDigitYear) {
  4607. var normalizedTwoDigitYear = normalizeTwoDigitYear(value.year, currentYear);
  4608. date.setFullYear(normalizedTwoDigitYear, 0, 1);
  4609. date.setHours(0, 0, 0, 0);
  4610. return date;
  4611. }
  4612. var year = !("era" in flags) || flags.era === 1 ? value.year : 1 - value.year;
  4613. date.setFullYear(year, 0, 1);
  4614. date.setHours(0, 0, 0, 0);
  4615. return date;
  4616. } }]);return YearParser;}(Parser);
  4617. // lib/parse/_lib/parsers/LocalWeekYearParser.mjs
  4618. var LocalWeekYearParser = /*#__PURE__*/function (_Parser3) {_inherits(LocalWeekYearParser, _Parser3);function LocalWeekYearParser() {var _this5;_classCallCheck(this, LocalWeekYearParser);for (var _len5 = arguments.length, args = new Array(_len5), _key5 = 0; _key5 < _len5; _key5++) {args[_key5] = arguments[_key5];}_this5 = _callSuper(this, LocalWeekYearParser, [].concat(args));_defineProperty(_assertThisInitialized(_this5), "priority",
  4619. 130);_defineProperty(_assertThisInitialized(_this5), "incompatibleTokens",
  4620. [
  4621. "y",
  4622. "R",
  4623. "u",
  4624. "Q",
  4625. "q",
  4626. "M",
  4627. "L",
  4628. "I",
  4629. "d",
  4630. "D",
  4631. "i",
  4632. "t",
  4633. "T"]);return _this5;}_createClass(LocalWeekYearParser, [{ key: "parse", value: function parse(dateString, token, match3) {var valueCallback = function valueCallback(year) {return { year: year, isTwoDigitYear: token === "YY" };};switch (token) {case "Y":return mapValue(parseNDigits(4, dateString), valueCallback);case "Yo":return mapValue(match3.ordinalNumber(dateString, { unit: "year" }), valueCallback);default:return mapValue(parseNDigits(token.length, dateString), valueCallback);}} }, { key: "validate", value: function validate(_date, value) {return value.isTwoDigitYear || value.year > 0;} }, { key: "set", value: function set(date, flags, value, options) {var currentYear = getWeekYear(date, options);if (value.isTwoDigitYear) {var normalizedTwoDigitYear = normalizeTwoDigitYear(value.year, currentYear);date.setFullYear(normalizedTwoDigitYear, 0, options.firstWeekContainsDate);date.setHours(0, 0, 0, 0);return startOfWeek(date, options);}var year = !("era" in flags) || flags.era === 1 ? value.year : 1 - value.year;date.setFullYear(year, 0, options.firstWeekContainsDate);date.setHours(0, 0, 0, 0);return startOfWeek(date, options);} }]);return LocalWeekYearParser;}(Parser);
  4634. // lib/parse/_lib/parsers/ISOWeekYearParser.mjs
  4635. var ISOWeekYearParser = /*#__PURE__*/function (_Parser4) {_inherits(ISOWeekYearParser, _Parser4);function ISOWeekYearParser() {var _this6;_classCallCheck(this, ISOWeekYearParser);for (var _len6 = arguments.length, args = new Array(_len6), _key6 = 0; _key6 < _len6; _key6++) {args[_key6] = arguments[_key6];}_this6 = _callSuper(this, ISOWeekYearParser, [].concat(args));_defineProperty(_assertThisInitialized(_this6), "priority",
  4636. 130);_defineProperty(_assertThisInitialized(_this6), "incompatibleTokens",
  4637. [
  4638. "G",
  4639. "y",
  4640. "Y",
  4641. "u",
  4642. "Q",
  4643. "q",
  4644. "M",
  4645. "L",
  4646. "w",
  4647. "d",
  4648. "D",
  4649. "e",
  4650. "c",
  4651. "t",
  4652. "T"]);return _this6;}_createClass(ISOWeekYearParser, [{ key: "parse", value: function parse(dateString, token) {if (token === "R") {return parseNDigitsSigned(4, dateString);}return parseNDigitsSigned(token.length, dateString);} }, { key: "set", value: function set(date, _flags, value) {var firstWeekOfYear = constructFrom(date, 0);firstWeekOfYear.setFullYear(value, 0, 4);firstWeekOfYear.setHours(0, 0, 0, 0);return startOfISOWeek(firstWeekOfYear);} }]);return ISOWeekYearParser;}(Parser);
  4653. // lib/parse/_lib/parsers/ExtendedYearParser.mjs
  4654. var ExtendedYearParser = /*#__PURE__*/function (_Parser5) {_inherits(ExtendedYearParser, _Parser5);function ExtendedYearParser() {var _this7;_classCallCheck(this, ExtendedYearParser);for (var _len7 = arguments.length, args = new Array(_len7), _key7 = 0; _key7 < _len7; _key7++) {args[_key7] = arguments[_key7];}_this7 = _callSuper(this, ExtendedYearParser, [].concat(args));_defineProperty(_assertThisInitialized(_this7), "priority",
  4655. 130);_defineProperty(_assertThisInitialized(_this7), "incompatibleTokens",
  4656. ["G", "y", "Y", "R", "w", "I", "i", "e", "c", "t", "T"]);return _this7;}_createClass(ExtendedYearParser, [{ key: "parse", value: function parse(dateString, token) {if (token === "u") {return parseNDigitsSigned(4, dateString);}return parseNDigitsSigned(token.length, dateString);} }, { key: "set", value: function set(date, _flags, value) {date.setFullYear(value, 0, 1);date.setHours(0, 0, 0, 0);return date;} }]);return ExtendedYearParser;}(Parser);
  4657. // lib/parse/_lib/parsers/QuarterParser.mjs
  4658. var QuarterParser = /*#__PURE__*/function (_Parser6) {_inherits(QuarterParser, _Parser6);function QuarterParser() {var _this8;_classCallCheck(this, QuarterParser);for (var _len8 = arguments.length, args = new Array(_len8), _key8 = 0; _key8 < _len8; _key8++) {args[_key8] = arguments[_key8];}_this8 = _callSuper(this, QuarterParser, [].concat(args));_defineProperty(_assertThisInitialized(_this8), "priority",
  4659. 120);_defineProperty(_assertThisInitialized(_this8), "incompatibleTokens",
  4660. [
  4661. "Y",
  4662. "R",
  4663. "q",
  4664. "M",
  4665. "L",
  4666. "w",
  4667. "I",
  4668. "d",
  4669. "D",
  4670. "i",
  4671. "e",
  4672. "c",
  4673. "t",
  4674. "T"]);return _this8;}_createClass(QuarterParser, [{ key: "parse", value: function parse(dateString, token, match3) {switch (token) {case "Q":case "QQ":return parseNDigits(token.length, dateString);case "Qo":return match3.ordinalNumber(dateString, { unit: "quarter" });case "QQQ":return match3.quarter(dateString, { width: "abbreviated", context: "formatting" }) || match3.quarter(dateString, { width: "narrow", context: "formatting" });case "QQQQQ":return match3.quarter(dateString, { width: "narrow", context: "formatting" });case "QQQQ":default:return match3.quarter(dateString, { width: "wide", context: "formatting" }) || match3.quarter(dateString, { width: "abbreviated", context: "formatting" }) || match3.quarter(dateString, { width: "narrow", context: "formatting" });}} }, { key: "validate", value: function validate(_date, value) {return value >= 1 && value <= 4;} }, { key: "set", value: function set(date, _flags, value) {date.setMonth((value - 1) * 3, 1);date.setHours(0, 0, 0, 0);return date;} }]);return QuarterParser;}(Parser);
  4675. // lib/parse/_lib/parsers/StandAloneQuarterParser.mjs
  4676. var StandAloneQuarterParser = /*#__PURE__*/function (_Parser7) {_inherits(StandAloneQuarterParser, _Parser7);function StandAloneQuarterParser() {var _this9;_classCallCheck(this, StandAloneQuarterParser);for (var _len9 = arguments.length, args = new Array(_len9), _key9 = 0; _key9 < _len9; _key9++) {args[_key9] = arguments[_key9];}_this9 = _callSuper(this, StandAloneQuarterParser, [].concat(args));_defineProperty(_assertThisInitialized(_this9), "priority",
  4677. 120);_defineProperty(_assertThisInitialized(_this9), "incompatibleTokens",
  4678. [
  4679. "Y",
  4680. "R",
  4681. "Q",
  4682. "M",
  4683. "L",
  4684. "w",
  4685. "I",
  4686. "d",
  4687. "D",
  4688. "i",
  4689. "e",
  4690. "c",
  4691. "t",
  4692. "T"]);return _this9;}_createClass(StandAloneQuarterParser, [{ key: "parse", value: function parse(dateString, token, match3) {switch (token) {case "q":case "qq":return parseNDigits(token.length, dateString);case "qo":return match3.ordinalNumber(dateString, { unit: "quarter" });case "qqq":return match3.quarter(dateString, { width: "abbreviated", context: "standalone" }) || match3.quarter(dateString, { width: "narrow", context: "standalone" });case "qqqqq":return match3.quarter(dateString, { width: "narrow", context: "standalone" });case "qqqq":default:return match3.quarter(dateString, { width: "wide", context: "standalone" }) || match3.quarter(dateString, { width: "abbreviated", context: "standalone" }) || match3.quarter(dateString, { width: "narrow", context: "standalone" });}} }, { key: "validate", value: function validate(_date, value) {return value >= 1 && value <= 4;} }, { key: "set", value: function set(date, _flags, value) {date.setMonth((value - 1) * 3, 1);date.setHours(0, 0, 0, 0);return date;} }]);return StandAloneQuarterParser;}(Parser);
  4693. // lib/parse/_lib/parsers/MonthParser.mjs
  4694. var MonthParser = /*#__PURE__*/function (_Parser8) {_inherits(MonthParser, _Parser8);function MonthParser() {var _this10;_classCallCheck(this, MonthParser);for (var _len10 = arguments.length, args = new Array(_len10), _key10 = 0; _key10 < _len10; _key10++) {args[_key10] = arguments[_key10];}_this10 = _callSuper(this, MonthParser, [].concat(args));_defineProperty(_assertThisInitialized(_this10), "incompatibleTokens",
  4695. [
  4696. "Y",
  4697. "R",
  4698. "q",
  4699. "Q",
  4700. "L",
  4701. "w",
  4702. "I",
  4703. "D",
  4704. "i",
  4705. "e",
  4706. "c",
  4707. "t",
  4708. "T"]);_defineProperty(_assertThisInitialized(_this10), "priority",
  4709. 110);return _this10;}_createClass(MonthParser, [{ key: "parse", value:
  4710. function parse(dateString, token, match3) {
  4711. var valueCallback = function valueCallback(value) {return value - 1;};
  4712. switch (token) {
  4713. case "M":
  4714. return mapValue(parseNumericPattern(numericPatterns.month, dateString), valueCallback);
  4715. case "MM":
  4716. return mapValue(parseNDigits(2, dateString), valueCallback);
  4717. case "Mo":
  4718. return mapValue(match3.ordinalNumber(dateString, {
  4719. unit: "month"
  4720. }), valueCallback);
  4721. case "MMM":
  4722. return match3.month(dateString, {
  4723. width: "abbreviated",
  4724. context: "formatting"
  4725. }) || match3.month(dateString, { width: "narrow", context: "formatting" });
  4726. case "MMMMM":
  4727. return match3.month(dateString, {
  4728. width: "narrow",
  4729. context: "formatting"
  4730. });
  4731. case "MMMM":
  4732. default:
  4733. return match3.month(dateString, { width: "wide", context: "formatting" }) || match3.month(dateString, {
  4734. width: "abbreviated",
  4735. context: "formatting"
  4736. }) || match3.month(dateString, { width: "narrow", context: "formatting" });
  4737. }
  4738. } }, { key: "validate", value:
  4739. function validate(_date, value) {
  4740. return value >= 0 && value <= 11;
  4741. } }, { key: "set", value:
  4742. function set(date, _flags, value) {
  4743. date.setMonth(value, 1);
  4744. date.setHours(0, 0, 0, 0);
  4745. return date;
  4746. } }]);return MonthParser;}(Parser);
  4747. // lib/parse/_lib/parsers/StandAloneMonthParser.mjs
  4748. var StandAloneMonthParser = /*#__PURE__*/function (_Parser9) {_inherits(StandAloneMonthParser, _Parser9);function StandAloneMonthParser() {var _this11;_classCallCheck(this, StandAloneMonthParser);for (var _len11 = arguments.length, args = new Array(_len11), _key11 = 0; _key11 < _len11; _key11++) {args[_key11] = arguments[_key11];}_this11 = _callSuper(this, StandAloneMonthParser, [].concat(args));_defineProperty(_assertThisInitialized(_this11), "priority",
  4749. 110);_defineProperty(_assertThisInitialized(_this11), "incompatibleTokens",
  4750. [
  4751. "Y",
  4752. "R",
  4753. "q",
  4754. "Q",
  4755. "M",
  4756. "w",
  4757. "I",
  4758. "D",
  4759. "i",
  4760. "e",
  4761. "c",
  4762. "t",
  4763. "T"]);return _this11;}_createClass(StandAloneMonthParser, [{ key: "parse", value: function parse(dateString, token, match3) {var valueCallback = function valueCallback(value) {return value - 1;};switch (token) {case "L":return mapValue(parseNumericPattern(numericPatterns.month, dateString), valueCallback);case "LL":return mapValue(parseNDigits(2, dateString), valueCallback);case "Lo":return mapValue(match3.ordinalNumber(dateString, { unit: "month" }), valueCallback);case "LLL":return match3.month(dateString, { width: "abbreviated", context: "standalone" }) || match3.month(dateString, { width: "narrow", context: "standalone" });case "LLLLL":return match3.month(dateString, { width: "narrow", context: "standalone" });case "LLLL":default:return match3.month(dateString, { width: "wide", context: "standalone" }) || match3.month(dateString, { width: "abbreviated", context: "standalone" }) || match3.month(dateString, { width: "narrow", context: "standalone" });}} }, { key: "validate", value: function validate(_date, value) {return value >= 0 && value <= 11;} }, { key: "set", value: function set(date, _flags, value) {date.setMonth(value, 1);date.setHours(0, 0, 0, 0);return date;} }]);return StandAloneMonthParser;}(Parser);
  4764. // lib/setWeek.mjs
  4765. function setWeek(date, week, options) {
  4766. var _date = toDate(date);
  4767. var diff = getWeek(_date, options) - week;
  4768. _date.setDate(_date.getDate() - diff * 7);
  4769. return _date;
  4770. }
  4771. // lib/parse/_lib/parsers/LocalWeekParser.mjs
  4772. var LocalWeekParser = /*#__PURE__*/function (_Parser10) {_inherits(LocalWeekParser, _Parser10);function LocalWeekParser() {var _this12;_classCallCheck(this, LocalWeekParser);for (var _len12 = arguments.length, args = new Array(_len12), _key12 = 0; _key12 < _len12; _key12++) {args[_key12] = arguments[_key12];}_this12 = _callSuper(this, LocalWeekParser, [].concat(args));_defineProperty(_assertThisInitialized(_this12), "priority",
  4773. 100);_defineProperty(_assertThisInitialized(_this12), "incompatibleTokens",
  4774. [
  4775. "y",
  4776. "R",
  4777. "u",
  4778. "q",
  4779. "Q",
  4780. "M",
  4781. "L",
  4782. "I",
  4783. "d",
  4784. "D",
  4785. "i",
  4786. "t",
  4787. "T"]);return _this12;}_createClass(LocalWeekParser, [{ key: "parse", value: function parse(dateString, token, match3) {switch (token) {case "w":return parseNumericPattern(numericPatterns.week, dateString);case "wo":return match3.ordinalNumber(dateString, { unit: "week" });default:return parseNDigits(token.length, dateString);}} }, { key: "validate", value: function validate(_date, value) {return value >= 1 && value <= 53;} }, { key: "set", value: function set(date, _flags, value, options) {return startOfWeek(setWeek(date, value, options), options);} }]);return LocalWeekParser;}(Parser);
  4788. // lib/setISOWeek.mjs
  4789. function setISOWeek(date, week) {
  4790. var _date = toDate(date);
  4791. var diff = getISOWeek(_date) - week;
  4792. _date.setDate(_date.getDate() - diff * 7);
  4793. return _date;
  4794. }
  4795. // lib/parse/_lib/parsers/ISOWeekParser.mjs
  4796. var ISOWeekParser = /*#__PURE__*/function (_Parser11) {_inherits(ISOWeekParser, _Parser11);function ISOWeekParser() {var _this13;_classCallCheck(this, ISOWeekParser);for (var _len13 = arguments.length, args = new Array(_len13), _key13 = 0; _key13 < _len13; _key13++) {args[_key13] = arguments[_key13];}_this13 = _callSuper(this, ISOWeekParser, [].concat(args));_defineProperty(_assertThisInitialized(_this13), "priority",
  4797. 100);_defineProperty(_assertThisInitialized(_this13), "incompatibleTokens",
  4798. [
  4799. "y",
  4800. "Y",
  4801. "u",
  4802. "q",
  4803. "Q",
  4804. "M",
  4805. "L",
  4806. "w",
  4807. "d",
  4808. "D",
  4809. "e",
  4810. "c",
  4811. "t",
  4812. "T"]);return _this13;}_createClass(ISOWeekParser, [{ key: "parse", value: function parse(dateString, token, match3) {switch (token) {case "I":return parseNumericPattern(numericPatterns.week, dateString);case "Io":return match3.ordinalNumber(dateString, { unit: "week" });default:return parseNDigits(token.length, dateString);}} }, { key: "validate", value: function validate(_date, value) {return value >= 1 && value <= 53;} }, { key: "set", value: function set(date, _flags, value) {return startOfISOWeek(setISOWeek(date, value));} }]);return ISOWeekParser;}(Parser);
  4813. // lib/parse/_lib/parsers/DateParser.mjs
  4814. var DAYS_IN_MONTH = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
  4815. var DAYS_IN_MONTH_LEAP_YEAR = [
  4816. 31,
  4817. 29,
  4818. 31,
  4819. 30,
  4820. 31,
  4821. 30,
  4822. 31,
  4823. 31,
  4824. 30,
  4825. 31,
  4826. 30,
  4827. 31];var
  4828. DateParser = /*#__PURE__*/function (_Parser12) {_inherits(DateParser, _Parser12);function DateParser() {var _this14;_classCallCheck(this, DateParser);for (var _len14 = arguments.length, args = new Array(_len14), _key14 = 0; _key14 < _len14; _key14++) {args[_key14] = arguments[_key14];}_this14 = _callSuper(this, DateParser, [].concat(args));_defineProperty(_assertThisInitialized(_this14), "priority",
  4829. 90);_defineProperty(_assertThisInitialized(_this14), "subPriority",
  4830. 1);_defineProperty(_assertThisInitialized(_this14), "incompatibleTokens",
  4831. [
  4832. "Y",
  4833. "R",
  4834. "q",
  4835. "Q",
  4836. "w",
  4837. "I",
  4838. "D",
  4839. "i",
  4840. "e",
  4841. "c",
  4842. "t",
  4843. "T"]);return _this14;}_createClass(DateParser, [{ key: "parse", value: function parse(dateString, token, match3) {switch (token) {case "d":return parseNumericPattern(numericPatterns.date, dateString);case "do":return match3.ordinalNumber(dateString, { unit: "date" });default:return parseNDigits(token.length, dateString);}} }, { key: "validate", value: function validate(date, value) {var year = date.getFullYear();var isLeapYear5 = isLeapYearIndex(year);var month = date.getMonth();if (isLeapYear5) {return value >= 1 && value <= DAYS_IN_MONTH_LEAP_YEAR[month];} else {return value >= 1 && value <= DAYS_IN_MONTH[month];}} }, { key: "set", value: function set(date, _flags, value) {date.setDate(value);date.setHours(0, 0, 0, 0);return date;} }]);return DateParser;}(Parser);
  4844. // lib/parse/_lib/parsers/DayOfYearParser.mjs
  4845. var DayOfYearParser = /*#__PURE__*/function (_Parser13) {_inherits(DayOfYearParser, _Parser13);function DayOfYearParser() {var _this15;_classCallCheck(this, DayOfYearParser);for (var _len15 = arguments.length, args = new Array(_len15), _key15 = 0; _key15 < _len15; _key15++) {args[_key15] = arguments[_key15];}_this15 = _callSuper(this, DayOfYearParser, [].concat(args));_defineProperty(_assertThisInitialized(_this15), "priority",
  4846. 90);_defineProperty(_assertThisInitialized(_this15), "subpriority",
  4847. 1);_defineProperty(_assertThisInitialized(_this15), "incompatibleTokens",
  4848. [
  4849. "Y",
  4850. "R",
  4851. "q",
  4852. "Q",
  4853. "M",
  4854. "L",
  4855. "w",
  4856. "I",
  4857. "d",
  4858. "E",
  4859. "i",
  4860. "e",
  4861. "c",
  4862. "t",
  4863. "T"]);return _this15;}_createClass(DayOfYearParser, [{ key: "parse", value: function parse(dateString, token, match3) {switch (token) {case "D":case "DD":return parseNumericPattern(numericPatterns.dayOfYear, dateString);case "Do":return match3.ordinalNumber(dateString, { unit: "date" });default:return parseNDigits(token.length, dateString);}} }, { key: "validate", value: function validate(date, value) {var year = date.getFullYear();var isLeapYear5 = isLeapYearIndex(year);if (isLeapYear5) {return value >= 1 && value <= 366;} else {return value >= 1 && value <= 365;}} }, { key: "set", value: function set(date, _flags, value) {date.setMonth(0, value);date.setHours(0, 0, 0, 0);return date;} }]);return DayOfYearParser;}(Parser);
  4864. // lib/setDay.mjs
  4865. function setDay(date, day, options) {var _ref30, _ref31, _ref32, _options$weekStartsOn6, _options$locale14, _defaultOptions14$loc;
  4866. var defaultOptions14 = getDefaultOptions();
  4867. var weekStartsOn = (_ref30 = (_ref31 = (_ref32 = (_options$weekStartsOn6 = options === null || options === void 0 ? void 0 : options.weekStartsOn) !== null && _options$weekStartsOn6 !== void 0 ? _options$weekStartsOn6 : options === null || options === void 0 || (_options$locale14 = options.locale) === null || _options$locale14 === void 0 || (_options$locale14 = _options$locale14.options) === null || _options$locale14 === void 0 ? void 0 : _options$locale14.weekStartsOn) !== null && _ref32 !== void 0 ? _ref32 : defaultOptions14.weekStartsOn) !== null && _ref31 !== void 0 ? _ref31 : (_defaultOptions14$loc = defaultOptions14.locale) === null || _defaultOptions14$loc === void 0 || (_defaultOptions14$loc = _defaultOptions14$loc.options) === null || _defaultOptions14$loc === void 0 ? void 0 : _defaultOptions14$loc.weekStartsOn) !== null && _ref30 !== void 0 ? _ref30 : 0;
  4868. var _date = toDate(date);
  4869. var currentDay = _date.getDay();
  4870. var remainder = day % 7;
  4871. var dayIndex = (remainder + 7) % 7;
  4872. var delta = 7 - weekStartsOn;
  4873. var diff = day < 0 || day > 6 ? day - (currentDay + delta) % 7 : (dayIndex + delta) % 7 - (currentDay + delta) % 7;
  4874. return addDays(_date, diff);
  4875. }
  4876. // lib/parse/_lib/parsers/DayParser.mjs
  4877. var DayParser = /*#__PURE__*/function (_Parser14) {_inherits(DayParser, _Parser14);function DayParser() {var _this16;_classCallCheck(this, DayParser);for (var _len16 = arguments.length, args = new Array(_len16), _key16 = 0; _key16 < _len16; _key16++) {args[_key16] = arguments[_key16];}_this16 = _callSuper(this, DayParser, [].concat(args));_defineProperty(_assertThisInitialized(_this16), "priority",
  4878. 90);_defineProperty(_assertThisInitialized(_this16), "incompatibleTokens",
  4879. ["D", "i", "e", "c", "t", "T"]);return _this16;}_createClass(DayParser, [{ key: "parse", value: function parse(dateString, token, match3) {switch (token) {case "E":case "EE":case "EEE":return match3.day(dateString, { width: "abbreviated", context: "formatting" }) || match3.day(dateString, { width: "short", context: "formatting" }) || match3.day(dateString, { width: "narrow", context: "formatting" });case "EEEEE":return match3.day(dateString, { width: "narrow", context: "formatting" });case "EEEEEE":return match3.day(dateString, { width: "short", context: "formatting" }) || match3.day(dateString, { width: "narrow", context: "formatting" });case "EEEE":default:return match3.day(dateString, { width: "wide", context: "formatting" }) || match3.day(dateString, { width: "abbreviated", context: "formatting" }) || match3.day(dateString, { width: "short", context: "formatting" }) || match3.day(dateString, { width: "narrow", context: "formatting" });}} }, { key: "validate", value: function validate(_date, value) {return value >= 0 && value <= 6;} }, { key: "set", value: function set(date, _flags, value, options) {date = setDay(date, value, options);date.setHours(0, 0, 0, 0);return date;} }]);return DayParser;}(Parser);
  4880. // lib/parse/_lib/parsers/LocalDayParser.mjs
  4881. var LocalDayParser = /*#__PURE__*/function (_Parser15) {_inherits(LocalDayParser, _Parser15);function LocalDayParser() {var _this17;_classCallCheck(this, LocalDayParser);for (var _len17 = arguments.length, args = new Array(_len17), _key17 = 0; _key17 < _len17; _key17++) {args[_key17] = arguments[_key17];}_this17 = _callSuper(this, LocalDayParser, [].concat(args));_defineProperty(_assertThisInitialized(_this17), "priority",
  4882. 90);_defineProperty(_assertThisInitialized(_this17), "incompatibleTokens",
  4883. [
  4884. "y",
  4885. "R",
  4886. "u",
  4887. "q",
  4888. "Q",
  4889. "M",
  4890. "L",
  4891. "I",
  4892. "d",
  4893. "D",
  4894. "E",
  4895. "i",
  4896. "c",
  4897. "t",
  4898. "T"]);return _this17;}_createClass(LocalDayParser, [{ key: "parse", value: function parse(dateString, token, match3, options) {var valueCallback = function valueCallback(value) {var wholeWeekDays = Math.floor((value - 1) / 7) * 7;return (value + options.weekStartsOn + 6) % 7 + wholeWeekDays;};switch (token) {case "e":case "ee":return mapValue(parseNDigits(token.length, dateString), valueCallback);case "eo":return mapValue(match3.ordinalNumber(dateString, { unit: "day" }), valueCallback);case "eee":return match3.day(dateString, { width: "abbreviated", context: "formatting" }) || match3.day(dateString, { width: "short", context: "formatting" }) || match3.day(dateString, { width: "narrow", context: "formatting" });case "eeeee":return match3.day(dateString, { width: "narrow", context: "formatting" });case "eeeeee":return match3.day(dateString, { width: "short", context: "formatting" }) || match3.day(dateString, { width: "narrow", context: "formatting" });case "eeee":default:return match3.day(dateString, { width: "wide", context: "formatting" }) || match3.day(dateString, { width: "abbreviated", context: "formatting" }) || match3.day(dateString, { width: "short", context: "formatting" }) || match3.day(dateString, { width: "narrow", context: "formatting" });}} }, { key: "validate", value: function validate(_date, value) {return value >= 0 && value <= 6;} }, { key: "set", value: function set(date, _flags, value, options) {date = setDay(date, value, options);date.setHours(0, 0, 0, 0);return date;} }]);return LocalDayParser;}(Parser);
  4899. // lib/parse/_lib/parsers/StandAloneLocalDayParser.mjs
  4900. var StandAloneLocalDayParser = /*#__PURE__*/function (_Parser16) {_inherits(StandAloneLocalDayParser, _Parser16);function StandAloneLocalDayParser() {var _this18;_classCallCheck(this, StandAloneLocalDayParser);for (var _len18 = arguments.length, args = new Array(_len18), _key18 = 0; _key18 < _len18; _key18++) {args[_key18] = arguments[_key18];}_this18 = _callSuper(this, StandAloneLocalDayParser, [].concat(args));_defineProperty(_assertThisInitialized(_this18), "priority",
  4901. 90);_defineProperty(_assertThisInitialized(_this18), "incompatibleTokens",
  4902. [
  4903. "y",
  4904. "R",
  4905. "u",
  4906. "q",
  4907. "Q",
  4908. "M",
  4909. "L",
  4910. "I",
  4911. "d",
  4912. "D",
  4913. "E",
  4914. "i",
  4915. "e",
  4916. "t",
  4917. "T"]);return _this18;}_createClass(StandAloneLocalDayParser, [{ key: "parse", value: function parse(dateString, token, match3, options) {var valueCallback = function valueCallback(value) {var wholeWeekDays = Math.floor((value - 1) / 7) * 7;return (value + options.weekStartsOn + 6) % 7 + wholeWeekDays;};switch (token) {case "c":case "cc":return mapValue(parseNDigits(token.length, dateString), valueCallback);case "co":return mapValue(match3.ordinalNumber(dateString, { unit: "day" }), valueCallback);case "ccc":return match3.day(dateString, { width: "abbreviated", context: "standalone" }) || match3.day(dateString, { width: "short", context: "standalone" }) || match3.day(dateString, { width: "narrow", context: "standalone" });case "ccccc":return match3.day(dateString, { width: "narrow", context: "standalone" });case "cccccc":return match3.day(dateString, { width: "short", context: "standalone" }) || match3.day(dateString, { width: "narrow", context: "standalone" });case "cccc":default:return match3.day(dateString, { width: "wide", context: "standalone" }) || match3.day(dateString, { width: "abbreviated", context: "standalone" }) || match3.day(dateString, { width: "short", context: "standalone" }) || match3.day(dateString, { width: "narrow", context: "standalone" });}} }, { key: "validate", value: function validate(_date, value) {return value >= 0 && value <= 6;} }, { key: "set", value: function set(date, _flags, value, options) {date = setDay(date, value, options);date.setHours(0, 0, 0, 0);return date;} }]);return StandAloneLocalDayParser;}(Parser);
  4918. // lib/setISODay.mjs
  4919. function setISODay(date, day) {
  4920. var _date = toDate(date);
  4921. var currentDay = getISODay(_date);
  4922. var diff = day - currentDay;
  4923. return addDays(_date, diff);
  4924. }
  4925. // lib/parse/_lib/parsers/ISODayParser.mjs
  4926. var ISODayParser = /*#__PURE__*/function (_Parser17) {_inherits(ISODayParser, _Parser17);function ISODayParser() {var _this19;_classCallCheck(this, ISODayParser);for (var _len19 = arguments.length, args = new Array(_len19), _key19 = 0; _key19 < _len19; _key19++) {args[_key19] = arguments[_key19];}_this19 = _callSuper(this, ISODayParser, [].concat(args));_defineProperty(_assertThisInitialized(_this19), "priority",
  4927. 90);_defineProperty(_assertThisInitialized(_this19), "incompatibleTokens",
  4928. [
  4929. "y",
  4930. "Y",
  4931. "u",
  4932. "q",
  4933. "Q",
  4934. "M",
  4935. "L",
  4936. "w",
  4937. "d",
  4938. "D",
  4939. "E",
  4940. "e",
  4941. "c",
  4942. "t",
  4943. "T"]);return _this19;}_createClass(ISODayParser, [{ key: "parse", value: function parse(dateString, token, match3) {var valueCallback = function valueCallback(value) {if (value === 0) {return 7;}return value;};switch (token) {case "i":case "ii":return parseNDigits(token.length, dateString);case "io":return match3.ordinalNumber(dateString, { unit: "day" });case "iii":return mapValue(match3.day(dateString, { width: "abbreviated", context: "formatting" }) || match3.day(dateString, { width: "short", context: "formatting" }) || match3.day(dateString, { width: "narrow", context: "formatting" }), valueCallback);case "iiiii":return mapValue(match3.day(dateString, { width: "narrow", context: "formatting" }), valueCallback);case "iiiiii":return mapValue(match3.day(dateString, { width: "short", context: "formatting" }) || match3.day(dateString, { width: "narrow", context: "formatting" }), valueCallback);case "iiii":default:return mapValue(match3.day(dateString, { width: "wide", context: "formatting" }) || match3.day(dateString, { width: "abbreviated", context: "formatting" }) || match3.day(dateString, { width: "short", context: "formatting" }) || match3.day(dateString, { width: "narrow", context: "formatting" }), valueCallback);}} }, { key: "validate", value: function validate(_date, value) {return value >= 1 && value <= 7;} }, { key: "set", value: function set(date, _flags, value) {date = setISODay(date, value);date.setHours(0, 0, 0, 0);return date;} }]);return ISODayParser;}(Parser);
  4944. // lib/parse/_lib/parsers/AMPMParser.mjs
  4945. var AMPMParser = /*#__PURE__*/function (_Parser18) {_inherits(AMPMParser, _Parser18);function AMPMParser() {var _this20;_classCallCheck(this, AMPMParser);for (var _len20 = arguments.length, args = new Array(_len20), _key20 = 0; _key20 < _len20; _key20++) {args[_key20] = arguments[_key20];}_this20 = _callSuper(this, AMPMParser, [].concat(args));_defineProperty(_assertThisInitialized(_this20), "priority",
  4946. 80);_defineProperty(_assertThisInitialized(_this20), "incompatibleTokens",
  4947. ["b", "B", "H", "k", "t", "T"]);return _this20;}_createClass(AMPMParser, [{ key: "parse", value: function parse(dateString, token, match3) {switch (token) {case "a":case "aa":case "aaa":return match3.dayPeriod(dateString, { width: "abbreviated", context: "formatting" }) || match3.dayPeriod(dateString, { width: "narrow", context: "formatting" });case "aaaaa":return match3.dayPeriod(dateString, { width: "narrow", context: "formatting" });case "aaaa":default:return match3.dayPeriod(dateString, { width: "wide", context: "formatting" }) || match3.dayPeriod(dateString, { width: "abbreviated", context: "formatting" }) || match3.dayPeriod(dateString, { width: "narrow", context: "formatting" });}} }, { key: "set", value: function set(date, _flags, value) {date.setHours(dayPeriodEnumToHours(value), 0, 0, 0);return date;} }]);return AMPMParser;}(Parser);
  4948. // lib/parse/_lib/parsers/AMPMMidnightParser.mjs
  4949. var AMPMMidnightParser = /*#__PURE__*/function (_Parser19) {_inherits(AMPMMidnightParser, _Parser19);function AMPMMidnightParser() {var _this21;_classCallCheck(this, AMPMMidnightParser);for (var _len21 = arguments.length, args = new Array(_len21), _key21 = 0; _key21 < _len21; _key21++) {args[_key21] = arguments[_key21];}_this21 = _callSuper(this, AMPMMidnightParser, [].concat(args));_defineProperty(_assertThisInitialized(_this21), "priority",
  4950. 80);_defineProperty(_assertThisInitialized(_this21), "incompatibleTokens",
  4951. ["a", "B", "H", "k", "t", "T"]);return _this21;}_createClass(AMPMMidnightParser, [{ key: "parse", value: function parse(dateString, token, match3) {switch (token) {case "b":case "bb":case "bbb":return match3.dayPeriod(dateString, { width: "abbreviated", context: "formatting" }) || match3.dayPeriod(dateString, { width: "narrow", context: "formatting" });case "bbbbb":return match3.dayPeriod(dateString, { width: "narrow", context: "formatting" });case "bbbb":default:return match3.dayPeriod(dateString, { width: "wide", context: "formatting" }) || match3.dayPeriod(dateString, { width: "abbreviated", context: "formatting" }) || match3.dayPeriod(dateString, { width: "narrow", context: "formatting" });}} }, { key: "set", value: function set(date, _flags, value) {date.setHours(dayPeriodEnumToHours(value), 0, 0, 0);return date;} }]);return AMPMMidnightParser;}(Parser);
  4952. // lib/parse/_lib/parsers/DayPeriodParser.mjs
  4953. var DayPeriodParser = /*#__PURE__*/function (_Parser20) {_inherits(DayPeriodParser, _Parser20);function DayPeriodParser() {var _this22;_classCallCheck(this, DayPeriodParser);for (var _len22 = arguments.length, args = new Array(_len22), _key22 = 0; _key22 < _len22; _key22++) {args[_key22] = arguments[_key22];}_this22 = _callSuper(this, DayPeriodParser, [].concat(args));_defineProperty(_assertThisInitialized(_this22), "priority",
  4954. 80);_defineProperty(_assertThisInitialized(_this22), "incompatibleTokens",
  4955. ["a", "b", "t", "T"]);return _this22;}_createClass(DayPeriodParser, [{ key: "parse", value: function parse(dateString, token, match3) {switch (token) {case "B":case "BB":case "BBB":return match3.dayPeriod(dateString, { width: "abbreviated", context: "formatting" }) || match3.dayPeriod(dateString, { width: "narrow", context: "formatting" });case "BBBBB":return match3.dayPeriod(dateString, { width: "narrow", context: "formatting" });case "BBBB":default:return match3.dayPeriod(dateString, { width: "wide", context: "formatting" }) || match3.dayPeriod(dateString, { width: "abbreviated", context: "formatting" }) || match3.dayPeriod(dateString, { width: "narrow", context: "formatting" });}} }, { key: "set", value: function set(date, _flags, value) {date.setHours(dayPeriodEnumToHours(value), 0, 0, 0);return date;} }]);return DayPeriodParser;}(Parser);
  4956. // lib/parse/_lib/parsers/Hour1to12Parser.mjs
  4957. var Hour1to12Parser = /*#__PURE__*/function (_Parser21) {_inherits(Hour1to12Parser, _Parser21);function Hour1to12Parser() {var _this23;_classCallCheck(this, Hour1to12Parser);for (var _len23 = arguments.length, args = new Array(_len23), _key23 = 0; _key23 < _len23; _key23++) {args[_key23] = arguments[_key23];}_this23 = _callSuper(this, Hour1to12Parser, [].concat(args));_defineProperty(_assertThisInitialized(_this23), "priority",
  4958. 70);_defineProperty(_assertThisInitialized(_this23), "incompatibleTokens",
  4959. ["H", "K", "k", "t", "T"]);return _this23;}_createClass(Hour1to12Parser, [{ key: "parse", value: function parse(dateString, token, match3) {switch (token) {case "h":return parseNumericPattern(numericPatterns.hour12h, dateString);case "ho":return match3.ordinalNumber(dateString, { unit: "hour" });default:return parseNDigits(token.length, dateString);}} }, { key: "validate", value: function validate(_date, value) {return value >= 1 && value <= 12;} }, { key: "set", value: function set(date, _flags, value) {var isPM = date.getHours() >= 12;if (isPM && value < 12) {date.setHours(value + 12, 0, 0, 0);} else if (!isPM && value === 12) {date.setHours(0, 0, 0, 0);} else {date.setHours(value, 0, 0, 0);}return date;} }]);return Hour1to12Parser;}(Parser);
  4960. // lib/parse/_lib/parsers/Hour0to23Parser.mjs
  4961. var Hour0to23Parser = /*#__PURE__*/function (_Parser22) {_inherits(Hour0to23Parser, _Parser22);function Hour0to23Parser() {var _this24;_classCallCheck(this, Hour0to23Parser);for (var _len24 = arguments.length, args = new Array(_len24), _key24 = 0; _key24 < _len24; _key24++) {args[_key24] = arguments[_key24];}_this24 = _callSuper(this, Hour0to23Parser, [].concat(args));_defineProperty(_assertThisInitialized(_this24), "priority",
  4962. 70);_defineProperty(_assertThisInitialized(_this24), "incompatibleTokens",
  4963. ["a", "b", "h", "K", "k", "t", "T"]);return _this24;}_createClass(Hour0to23Parser, [{ key: "parse", value: function parse(dateString, token, match3) {switch (token) {case "H":return parseNumericPattern(numericPatterns.hour23h, dateString);case "Ho":return match3.ordinalNumber(dateString, { unit: "hour" });default:return parseNDigits(token.length, dateString);}} }, { key: "validate", value: function validate(_date, value) {return value >= 0 && value <= 23;} }, { key: "set", value: function set(date, _flags, value) {date.setHours(value, 0, 0, 0);return date;} }]);return Hour0to23Parser;}(Parser);
  4964. // lib/parse/_lib/parsers/Hour0To11Parser.mjs
  4965. var Hour0To11Parser = /*#__PURE__*/function (_Parser23) {_inherits(Hour0To11Parser, _Parser23);function Hour0To11Parser() {var _this25;_classCallCheck(this, Hour0To11Parser);for (var _len25 = arguments.length, args = new Array(_len25), _key25 = 0; _key25 < _len25; _key25++) {args[_key25] = arguments[_key25];}_this25 = _callSuper(this, Hour0To11Parser, [].concat(args));_defineProperty(_assertThisInitialized(_this25), "priority",
  4966. 70);_defineProperty(_assertThisInitialized(_this25), "incompatibleTokens",
  4967. ["h", "H", "k", "t", "T"]);return _this25;}_createClass(Hour0To11Parser, [{ key: "parse", value: function parse(dateString, token, match3) {switch (token) {case "K":return parseNumericPattern(numericPatterns.hour11h, dateString);case "Ko":return match3.ordinalNumber(dateString, { unit: "hour" });default:return parseNDigits(token.length, dateString);}} }, { key: "validate", value: function validate(_date, value) {return value >= 0 && value <= 11;} }, { key: "set", value: function set(date, _flags, value) {var isPM = date.getHours() >= 12;if (isPM && value < 12) {date.setHours(value + 12, 0, 0, 0);} else {date.setHours(value, 0, 0, 0);}return date;} }]);return Hour0To11Parser;}(Parser);
  4968. // lib/parse/_lib/parsers/Hour1To24Parser.mjs
  4969. var Hour1To24Parser = /*#__PURE__*/function (_Parser24) {_inherits(Hour1To24Parser, _Parser24);function Hour1To24Parser() {var _this26;_classCallCheck(this, Hour1To24Parser);for (var _len26 = arguments.length, args = new Array(_len26), _key26 = 0; _key26 < _len26; _key26++) {args[_key26] = arguments[_key26];}_this26 = _callSuper(this, Hour1To24Parser, [].concat(args));_defineProperty(_assertThisInitialized(_this26), "priority",
  4970. 70);_defineProperty(_assertThisInitialized(_this26), "incompatibleTokens",
  4971. ["a", "b", "h", "H", "K", "t", "T"]);return _this26;}_createClass(Hour1To24Parser, [{ key: "parse", value: function parse(dateString, token, match3) {switch (token) {case "k":return parseNumericPattern(numericPatterns.hour24h, dateString);case "ko":return match3.ordinalNumber(dateString, { unit: "hour" });default:return parseNDigits(token.length, dateString);}} }, { key: "validate", value: function validate(_date, value) {return value >= 1 && value <= 24;} }, { key: "set", value: function set(date, _flags, value) {var hours = value <= 24 ? value % 24 : value;date.setHours(hours, 0, 0, 0);return date;} }]);return Hour1To24Parser;}(Parser);
  4972. // lib/parse/_lib/parsers/MinuteParser.mjs
  4973. var MinuteParser = /*#__PURE__*/function (_Parser25) {_inherits(MinuteParser, _Parser25);function MinuteParser() {var _this27;_classCallCheck(this, MinuteParser);for (var _len27 = arguments.length, args = new Array(_len27), _key27 = 0; _key27 < _len27; _key27++) {args[_key27] = arguments[_key27];}_this27 = _callSuper(this, MinuteParser, [].concat(args));_defineProperty(_assertThisInitialized(_this27), "priority",
  4974. 60);_defineProperty(_assertThisInitialized(_this27), "incompatibleTokens",
  4975. ["t", "T"]);return _this27;}_createClass(MinuteParser, [{ key: "parse", value: function parse(dateString, token, match3) {switch (token) {case "m":return parseNumericPattern(numericPatterns.minute, dateString);case "mo":return match3.ordinalNumber(dateString, { unit: "minute" });default:return parseNDigits(token.length, dateString);}} }, { key: "validate", value: function validate(_date, value) {return value >= 0 && value <= 59;} }, { key: "set", value: function set(date, _flags, value) {date.setMinutes(value, 0, 0);return date;} }]);return MinuteParser;}(Parser);
  4976. // lib/parse/_lib/parsers/SecondParser.mjs
  4977. var SecondParser = /*#__PURE__*/function (_Parser26) {_inherits(SecondParser, _Parser26);function SecondParser() {var _this28;_classCallCheck(this, SecondParser);for (var _len28 = arguments.length, args = new Array(_len28), _key28 = 0; _key28 < _len28; _key28++) {args[_key28] = arguments[_key28];}_this28 = _callSuper(this, SecondParser, [].concat(args));_defineProperty(_assertThisInitialized(_this28), "priority",
  4978. 50);_defineProperty(_assertThisInitialized(_this28), "incompatibleTokens",
  4979. ["t", "T"]);return _this28;}_createClass(SecondParser, [{ key: "parse", value: function parse(dateString, token, match3) {switch (token) {case "s":return parseNumericPattern(numericPatterns.second, dateString);case "so":return match3.ordinalNumber(dateString, { unit: "second" });default:return parseNDigits(token.length, dateString);}} }, { key: "validate", value: function validate(_date, value) {return value >= 0 && value <= 59;} }, { key: "set", value: function set(date, _flags, value) {date.setSeconds(value, 0);return date;} }]);return SecondParser;}(Parser);
  4980. // lib/parse/_lib/parsers/FractionOfSecondParser.mjs
  4981. var FractionOfSecondParser = /*#__PURE__*/function (_Parser27) {_inherits(FractionOfSecondParser, _Parser27);function FractionOfSecondParser() {var _this29;_classCallCheck(this, FractionOfSecondParser);for (var _len29 = arguments.length, args = new Array(_len29), _key29 = 0; _key29 < _len29; _key29++) {args[_key29] = arguments[_key29];}_this29 = _callSuper(this, FractionOfSecondParser, [].concat(args));_defineProperty(_assertThisInitialized(_this29), "priority",
  4982. 30);_defineProperty(_assertThisInitialized(_this29), "incompatibleTokens",
  4983. ["t", "T"]);return _this29;}_createClass(FractionOfSecondParser, [{ key: "parse", value: function parse(dateString, token) {var valueCallback = function valueCallback(value) {return Math.trunc(value * Math.pow(10, -token.length + 3));};return mapValue(parseNDigits(token.length, dateString), valueCallback);} }, { key: "set", value: function set(date, _flags, value) {date.setMilliseconds(value);return date;} }]);return FractionOfSecondParser;}(Parser);
  4984. // lib/parse/_lib/parsers/ISOTimezoneWithZParser.mjs
  4985. var ISOTimezoneWithZParser = /*#__PURE__*/function (_Parser28) {_inherits(ISOTimezoneWithZParser, _Parser28);function ISOTimezoneWithZParser() {var _this30;_classCallCheck(this, ISOTimezoneWithZParser);for (var _len30 = arguments.length, args = new Array(_len30), _key30 = 0; _key30 < _len30; _key30++) {args[_key30] = arguments[_key30];}_this30 = _callSuper(this, ISOTimezoneWithZParser, [].concat(args));_defineProperty(_assertThisInitialized(_this30), "priority",
  4986. 10);_defineProperty(_assertThisInitialized(_this30), "incompatibleTokens",
  4987. ["t", "T", "x"]);return _this30;}_createClass(ISOTimezoneWithZParser, [{ key: "parse", value: function parse(dateString, token) {switch (token) {case "X":return parseTimezonePattern(timezonePatterns.basicOptionalMinutes, dateString);case "XX":return parseTimezonePattern(timezonePatterns.basic, dateString);case "XXXX":return parseTimezonePattern(timezonePatterns.basicOptionalSeconds, dateString);case "XXXXX":return parseTimezonePattern(timezonePatterns.extendedOptionalSeconds, dateString);case "XXX":default:return parseTimezonePattern(timezonePatterns.extended, dateString);}} }, { key: "set", value: function set(date, flags, value) {if (flags.timestampIsSet) return date;return constructFrom(date, date.getTime() - getTimezoneOffsetInMilliseconds(date) - value);} }]);return ISOTimezoneWithZParser;}(Parser);
  4988. // lib/parse/_lib/parsers/ISOTimezoneParser.mjs
  4989. var ISOTimezoneParser = /*#__PURE__*/function (_Parser29) {_inherits(ISOTimezoneParser, _Parser29);function ISOTimezoneParser() {var _this31;_classCallCheck(this, ISOTimezoneParser);for (var _len31 = arguments.length, args = new Array(_len31), _key31 = 0; _key31 < _len31; _key31++) {args[_key31] = arguments[_key31];}_this31 = _callSuper(this, ISOTimezoneParser, [].concat(args));_defineProperty(_assertThisInitialized(_this31), "priority",
  4990. 10);_defineProperty(_assertThisInitialized(_this31), "incompatibleTokens",
  4991. ["t", "T", "X"]);return _this31;}_createClass(ISOTimezoneParser, [{ key: "parse", value: function parse(dateString, token) {switch (token) {case "x":return parseTimezonePattern(timezonePatterns.basicOptionalMinutes, dateString);case "xx":return parseTimezonePattern(timezonePatterns.basic, dateString);case "xxxx":return parseTimezonePattern(timezonePatterns.basicOptionalSeconds, dateString);case "xxxxx":return parseTimezonePattern(timezonePatterns.extendedOptionalSeconds, dateString);case "xxx":default:return parseTimezonePattern(timezonePatterns.extended, dateString);}} }, { key: "set", value: function set(date, flags, value) {if (flags.timestampIsSet) return date;return constructFrom(date, date.getTime() - getTimezoneOffsetInMilliseconds(date) - value);} }]);return ISOTimezoneParser;}(Parser);
  4992. // lib/parse/_lib/parsers/TimestampSecondsParser.mjs
  4993. var TimestampSecondsParser = /*#__PURE__*/function (_Parser30) {_inherits(TimestampSecondsParser, _Parser30);function TimestampSecondsParser() {var _this32;_classCallCheck(this, TimestampSecondsParser);for (var _len32 = arguments.length, args = new Array(_len32), _key32 = 0; _key32 < _len32; _key32++) {args[_key32] = arguments[_key32];}_this32 = _callSuper(this, TimestampSecondsParser, [].concat(args));_defineProperty(_assertThisInitialized(_this32), "priority",
  4994. 40);_defineProperty(_assertThisInitialized(_this32), "incompatibleTokens",
  4995. "*");return _this32;}_createClass(TimestampSecondsParser, [{ key: "parse", value: function parse(dateString) {return parseAnyDigitsSigned(dateString);} }, { key: "set", value: function set(date, _flags, value) {return [constructFrom(date, value * 1000), { timestampIsSet: true }];} }]);return TimestampSecondsParser;}(Parser);
  4996. // lib/parse/_lib/parsers/TimestampMillisecondsParser.mjs
  4997. var TimestampMillisecondsParser = /*#__PURE__*/function (_Parser31) {_inherits(TimestampMillisecondsParser, _Parser31);function TimestampMillisecondsParser() {var _this33;_classCallCheck(this, TimestampMillisecondsParser);for (var _len33 = arguments.length, args = new Array(_len33), _key33 = 0; _key33 < _len33; _key33++) {args[_key33] = arguments[_key33];}_this33 = _callSuper(this, TimestampMillisecondsParser, [].concat(args));_defineProperty(_assertThisInitialized(_this33), "priority",
  4998. 20);_defineProperty(_assertThisInitialized(_this33), "incompatibleTokens",
  4999. "*");return _this33;}_createClass(TimestampMillisecondsParser, [{ key: "parse", value: function parse(dateString) {return parseAnyDigitsSigned(dateString);} }, { key: "set", value: function set(date, _flags, value) {return [constructFrom(date, value), { timestampIsSet: true }];} }]);return TimestampMillisecondsParser;}(Parser);
  5000. // lib/parse/_lib/parsers.mjs
  5001. var parsers = {
  5002. G: new EraParser(),
  5003. y: new YearParser(),
  5004. Y: new LocalWeekYearParser(),
  5005. R: new ISOWeekYearParser(),
  5006. u: new ExtendedYearParser(),
  5007. Q: new QuarterParser(),
  5008. q: new StandAloneQuarterParser(),
  5009. M: new MonthParser(),
  5010. L: new StandAloneMonthParser(),
  5011. w: new LocalWeekParser(),
  5012. I: new ISOWeekParser(),
  5013. d: new DateParser(),
  5014. D: new DayOfYearParser(),
  5015. E: new DayParser(),
  5016. e: new LocalDayParser(),
  5017. c: new StandAloneLocalDayParser(),
  5018. i: new ISODayParser(),
  5019. a: new AMPMParser(),
  5020. b: new AMPMMidnightParser(),
  5021. B: new DayPeriodParser(),
  5022. h: new Hour1to12Parser(),
  5023. H: new Hour0to23Parser(),
  5024. K: new Hour0To11Parser(),
  5025. k: new Hour1To24Parser(),
  5026. m: new MinuteParser(),
  5027. s: new SecondParser(),
  5028. S: new FractionOfSecondParser(),
  5029. X: new ISOTimezoneWithZParser(),
  5030. x: new ISOTimezoneParser(),
  5031. t: new TimestampSecondsParser(),
  5032. T: new TimestampMillisecondsParser()
  5033. };
  5034. // lib/parse.mjs
  5035. function parse(dateStr, formatStr, referenceDate, options) {var _ref33, _options$locale15, _ref34, _ref35, _ref36, _options$firstWeekCon4, _options$locale16, _defaultOptions14$loc2, _ref37, _ref38, _ref39, _options$weekStartsOn7, _options$locale17, _defaultOptions14$loc3;
  5036. var defaultOptions14 = getDefaultOptions2();
  5037. var locale = (_ref33 = (_options$locale15 = options === null || options === void 0 ? void 0 : options.locale) !== null && _options$locale15 !== void 0 ? _options$locale15 : defaultOptions14.locale) !== null && _ref33 !== void 0 ? _ref33 : enUS;
  5038. var firstWeekContainsDate = (_ref34 = (_ref35 = (_ref36 = (_options$firstWeekCon4 = options === null || options === void 0 ? void 0 : options.firstWeekContainsDate) !== null && _options$firstWeekCon4 !== void 0 ? _options$firstWeekCon4 : options === null || options === void 0 || (_options$locale16 = options.locale) === null || _options$locale16 === void 0 || (_options$locale16 = _options$locale16.options) === null || _options$locale16 === void 0 ? void 0 : _options$locale16.firstWeekContainsDate) !== null && _ref36 !== void 0 ? _ref36 : defaultOptions14.firstWeekContainsDate) !== null && _ref35 !== void 0 ? _ref35 : (_defaultOptions14$loc2 = defaultOptions14.locale) === null || _defaultOptions14$loc2 === void 0 || (_defaultOptions14$loc2 = _defaultOptions14$loc2.options) === null || _defaultOptions14$loc2 === void 0 ? void 0 : _defaultOptions14$loc2.firstWeekContainsDate) !== null && _ref34 !== void 0 ? _ref34 : 1;
  5039. var weekStartsOn = (_ref37 = (_ref38 = (_ref39 = (_options$weekStartsOn7 = options === null || options === void 0 ? void 0 : options.weekStartsOn) !== null && _options$weekStartsOn7 !== void 0 ? _options$weekStartsOn7 : options === null || options === void 0 || (_options$locale17 = options.locale) === null || _options$locale17 === void 0 || (_options$locale17 = _options$locale17.options) === null || _options$locale17 === void 0 ? void 0 : _options$locale17.weekStartsOn) !== null && _ref39 !== void 0 ? _ref39 : defaultOptions14.weekStartsOn) !== null && _ref38 !== void 0 ? _ref38 : (_defaultOptions14$loc3 = defaultOptions14.locale) === null || _defaultOptions14$loc3 === void 0 || (_defaultOptions14$loc3 = _defaultOptions14$loc3.options) === null || _defaultOptions14$loc3 === void 0 ? void 0 : _defaultOptions14$loc3.weekStartsOn) !== null && _ref37 !== void 0 ? _ref37 : 0;
  5040. if (formatStr === "") {
  5041. if (dateStr === "") {
  5042. return toDate(referenceDate);
  5043. } else {
  5044. return constructFrom(referenceDate, NaN);
  5045. }
  5046. }
  5047. var subFnOptions = {
  5048. firstWeekContainsDate: firstWeekContainsDate,
  5049. weekStartsOn: weekStartsOn,
  5050. locale: locale
  5051. };
  5052. var setters = [new DateToSystemTimezoneSetter()];
  5053. var tokens = formatStr.match(longFormattingTokensRegExp2).map(function (substring) {
  5054. var firstCharacter = substring[0];
  5055. if (firstCharacter in longFormatters) {
  5056. var longFormatter = longFormatters[firstCharacter];
  5057. return longFormatter(substring, locale.formatLong);
  5058. }
  5059. return substring;
  5060. }).join("").match(formattingTokensRegExp2);
  5061. var usedTokens = [];var _iterator = _createForOfIteratorHelper(
  5062. tokens),_step;try {var _loop = function _loop() {var token = _step.value;
  5063. if (!(options !== null && options !== void 0 && options.useAdditionalWeekYearTokens) && isProtectedWeekYearToken(token)) {
  5064. warnOrThrowProtectedError(token, formatStr, dateStr);
  5065. }
  5066. if (!(options !== null && options !== void 0 && options.useAdditionalDayOfYearTokens) && isProtectedDayOfYearToken(token)) {
  5067. warnOrThrowProtectedError(token, formatStr, dateStr);
  5068. }
  5069. var firstCharacter = token[0];
  5070. var parser = parsers[firstCharacter];
  5071. if (parser) {
  5072. var incompatibleTokens = parser.incompatibleTokens;
  5073. if (Array.isArray(incompatibleTokens)) {
  5074. var incompatibleToken = usedTokens.find(function (usedToken) {return incompatibleTokens.includes(usedToken.token) || usedToken.token === firstCharacter;});
  5075. if (incompatibleToken) {
  5076. throw new RangeError("The format string mustn't contain `".concat(incompatibleToken.fullToken, "` and `").concat(token, "` at the same time"));
  5077. }
  5078. } else if (parser.incompatibleTokens === "*" && usedTokens.length > 0) {
  5079. throw new RangeError("The format string mustn't contain `".concat(token, "` and any other token at the same time"));
  5080. }
  5081. usedTokens.push({ token: firstCharacter, fullToken: token });
  5082. var parseResult = parser.run(dateStr, token, locale.match, subFnOptions);
  5083. if (!parseResult) {return { v:
  5084. constructFrom(referenceDate, NaN) };
  5085. }
  5086. setters.push(parseResult.setter);
  5087. dateStr = parseResult.rest;
  5088. } else {
  5089. if (firstCharacter.match(unescapedLatinCharacterRegExp2)) {
  5090. throw new RangeError("Format string contains an unescaped latin alphabet character `" + firstCharacter + "`");
  5091. }
  5092. if (token === "''") {
  5093. token = "'";
  5094. } else if (firstCharacter === "'") {
  5095. token = cleanEscapedString2(token);
  5096. }
  5097. if (dateStr.indexOf(token) === 0) {
  5098. dateStr = dateStr.slice(token.length);
  5099. } else {return { v:
  5100. constructFrom(referenceDate, NaN) };
  5101. }
  5102. }
  5103. },_ret;for (_iterator.s(); !(_step = _iterator.n()).done;) {_ret = _loop();if (_ret) return _ret.v;}} catch (err) {_iterator.e(err);} finally {_iterator.f();}
  5104. if (dateStr.length > 0 && notWhitespaceRegExp.test(dateStr)) {
  5105. return constructFrom(referenceDate, NaN);
  5106. }
  5107. var uniquePrioritySetters = setters.map(function (setter) {return setter.priority;}).sort(function (a, b) {return b - a;}).filter(function (priority, index, array) {return array.indexOf(priority) === index;}).map(function (priority) {return setters.filter(function (setter) {return setter.priority === priority;}).sort(function (a, b) {return b.subPriority - a.subPriority;});}).map(function (setterArray) {return setterArray[0];});
  5108. var date = toDate(referenceDate);
  5109. if (isNaN(date.getTime())) {
  5110. return constructFrom(referenceDate, NaN);
  5111. }
  5112. var flags = {};var _iterator2 = _createForOfIteratorHelper(
  5113. uniquePrioritySetters),_step2;try {for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {var setter = _step2.value;
  5114. if (!setter.validate(date, subFnOptions)) {
  5115. return constructFrom(referenceDate, NaN);
  5116. }
  5117. var result = setter.set(date, flags, subFnOptions);
  5118. if (Array.isArray(result)) {
  5119. date = result[0];
  5120. Object.assign(flags, result[1]);
  5121. } else {
  5122. date = result;
  5123. }
  5124. }} catch (err) {_iterator2.e(err);} finally {_iterator2.f();}
  5125. return constructFrom(referenceDate, date);
  5126. }
  5127. var cleanEscapedString2 = function cleanEscapedString2(input) {
  5128. return input.match(escapedStringRegExp2)[1].replace(doubleQuoteRegExp2, "'");
  5129. };
  5130. var formattingTokensRegExp2 = /[yYQqMLwIdDecihHKkms]o|(\w)\1*|''|'(''|[^'])+('|$)|./g;
  5131. var longFormattingTokensRegExp2 = /P+p+|P+|p+|''|'(''|[^'])+('|$)|./g;
  5132. var escapedStringRegExp2 = /^'([^]*?)'?$/;
  5133. var doubleQuoteRegExp2 = /''/g;
  5134. var notWhitespaceRegExp = /\S/;
  5135. var unescapedLatinCharacterRegExp2 = /[a-zA-Z]/;
  5136. // lib/isMatch.mjs
  5137. function isMatch(dateStr, formatStr, options) {
  5138. return isValid(parse(dateStr, formatStr, new Date(), options));
  5139. }
  5140. // lib/fp/isMatch.mjs
  5141. var isMatch3 = convertToFP(isMatch, 2);
  5142. // lib/fp/isMatchWithOptions.mjs
  5143. var _isMatchWithOptions = convertToFP(isMatch, 3);
  5144. // lib/isMonday.mjs
  5145. function isMonday(date) {
  5146. return toDate(date).getDay() === 1;
  5147. }
  5148. // lib/fp/isMonday.mjs
  5149. var isMonday3 = convertToFP(isMonday, 1);
  5150. // lib/fp/isSameDay.mjs
  5151. var isSameDay4 = convertToFP(isSameDay, 2);
  5152. // lib/startOfHour.mjs
  5153. function startOfHour(date) {
  5154. var _date = toDate(date);
  5155. _date.setMinutes(0, 0, 0);
  5156. return _date;
  5157. }
  5158. // lib/isSameHour.mjs
  5159. function isSameHour(dateLeft, dateRight) {
  5160. var dateLeftStartOfHour = startOfHour(dateLeft);
  5161. var dateRightStartOfHour = startOfHour(dateRight);
  5162. return +dateLeftStartOfHour === +dateRightStartOfHour;
  5163. }
  5164. // lib/fp/isSameHour.mjs
  5165. var isSameHour3 = convertToFP(isSameHour, 2);
  5166. // lib/isSameWeek.mjs
  5167. function isSameWeek(dateLeft, dateRight, options) {
  5168. var dateLeftStartOfWeek = startOfWeek(dateLeft, options);
  5169. var dateRightStartOfWeek = startOfWeek(dateRight, options);
  5170. return +dateLeftStartOfWeek === +dateRightStartOfWeek;
  5171. }
  5172. // lib/isSameISOWeek.mjs
  5173. function isSameISOWeek(dateLeft, dateRight) {
  5174. return isSameWeek(dateLeft, dateRight, { weekStartsOn: 1 });
  5175. }
  5176. // lib/fp/isSameISOWeek.mjs
  5177. var isSameISOWeek3 = convertToFP(isSameISOWeek, 2);
  5178. // lib/isSameISOWeekYear.mjs
  5179. function isSameISOWeekYear(dateLeft, dateRight) {
  5180. var dateLeftStartOfYear = startOfISOWeekYear(dateLeft);
  5181. var dateRightStartOfYear = startOfISOWeekYear(dateRight);
  5182. return +dateLeftStartOfYear === +dateRightStartOfYear;
  5183. }
  5184. // lib/fp/isSameISOWeekYear.mjs
  5185. var isSameISOWeekYear3 = convertToFP(isSameISOWeekYear, 2);
  5186. // lib/isSameMinute.mjs
  5187. function isSameMinute(dateLeft, dateRight) {
  5188. var dateLeftStartOfMinute = startOfMinute(dateLeft);
  5189. var dateRightStartOfMinute = startOfMinute(dateRight);
  5190. return +dateLeftStartOfMinute === +dateRightStartOfMinute;
  5191. }
  5192. // lib/fp/isSameMinute.mjs
  5193. var isSameMinute3 = convertToFP(isSameMinute, 2);
  5194. // lib/isSameMonth.mjs
  5195. function isSameMonth(dateLeft, dateRight) {
  5196. var _dateLeft = toDate(dateLeft);
  5197. var _dateRight = toDate(dateRight);
  5198. return _dateLeft.getFullYear() === _dateRight.getFullYear() && _dateLeft.getMonth() === _dateRight.getMonth();
  5199. }
  5200. // lib/fp/isSameMonth.mjs
  5201. var isSameMonth3 = convertToFP(isSameMonth, 2);
  5202. // lib/isSameQuarter.mjs
  5203. function isSameQuarter(dateLeft, dateRight) {
  5204. var dateLeftStartOfQuarter = startOfQuarter(dateLeft);
  5205. var dateRightStartOfQuarter = startOfQuarter(dateRight);
  5206. return +dateLeftStartOfQuarter === +dateRightStartOfQuarter;
  5207. }
  5208. // lib/fp/isSameQuarter.mjs
  5209. var isSameQuarter3 = convertToFP(isSameQuarter, 2);
  5210. // lib/startOfSecond.mjs
  5211. function startOfSecond(date) {
  5212. var _date = toDate(date);
  5213. _date.setMilliseconds(0);
  5214. return _date;
  5215. }
  5216. // lib/isSameSecond.mjs
  5217. function isSameSecond(dateLeft, dateRight) {
  5218. var dateLeftStartOfSecond = startOfSecond(dateLeft);
  5219. var dateRightStartOfSecond = startOfSecond(dateRight);
  5220. return +dateLeftStartOfSecond === +dateRightStartOfSecond;
  5221. }
  5222. // lib/fp/isSameSecond.mjs
  5223. var isSameSecond3 = convertToFP(isSameSecond, 2);
  5224. // lib/fp/isSameWeek.mjs
  5225. var isSameWeek4 = convertToFP(isSameWeek, 2);
  5226. // lib/fp/isSameWeekWithOptions.mjs
  5227. var _isSameWeekWithOptions = convertToFP(isSameWeek, 3);
  5228. // lib/isSameYear.mjs
  5229. function isSameYear(dateLeft, dateRight) {
  5230. var _dateLeft = toDate(dateLeft);
  5231. var _dateRight = toDate(dateRight);
  5232. return _dateLeft.getFullYear() === _dateRight.getFullYear();
  5233. }
  5234. // lib/fp/isSameYear.mjs
  5235. var isSameYear3 = convertToFP(isSameYear, 2);
  5236. // lib/fp/isSaturday.mjs
  5237. var isSaturday4 = convertToFP(isSaturday, 1);
  5238. // lib/fp/isSunday.mjs
  5239. var isSunday4 = convertToFP(isSunday, 1);
  5240. // lib/isThursday.mjs
  5241. function isThursday(date) {
  5242. return toDate(date).getDay() === 4;
  5243. }
  5244. // lib/fp/isThursday.mjs
  5245. var isThursday3 = convertToFP(isThursday, 1);
  5246. // lib/isTuesday.mjs
  5247. function isTuesday(date) {
  5248. return toDate(date).getDay() === 2;
  5249. }
  5250. // lib/fp/isTuesday.mjs
  5251. var isTuesday3 = convertToFP(isTuesday, 1);
  5252. // lib/fp/isValid.mjs
  5253. var isValid9 = convertToFP(isValid, 1);
  5254. // lib/isWednesday.mjs
  5255. function isWednesday(date) {
  5256. return toDate(date).getDay() === 3;
  5257. }
  5258. // lib/fp/isWednesday.mjs
  5259. var isWednesday3 = convertToFP(isWednesday, 1);
  5260. // lib/fp/isWeekend.mjs
  5261. var isWeekend6 = convertToFP(isWeekend, 1);
  5262. // lib/isWithinInterval.mjs
  5263. function isWithinInterval(date, interval5) {
  5264. var time = +toDate(date);
  5265. var _sort9 = [
  5266. +toDate(interval5.start),
  5267. +toDate(interval5.end)].
  5268. sort(function (a, b) {return a - b;}),_sort10 = _slicedToArray(_sort9, 2),startTime = _sort10[0],endTime = _sort10[1];
  5269. return time >= startTime && time <= endTime;
  5270. }
  5271. // lib/fp/isWithinInterval.mjs
  5272. var isWithinInterval3 = convertToFP(isWithinInterval, 2);
  5273. // lib/lastDayOfDecade.mjs
  5274. function lastDayOfDecade(date) {
  5275. var _date = toDate(date);
  5276. var year = _date.getFullYear();
  5277. var decade = 9 + Math.floor(year / 10) * 10;
  5278. _date.setFullYear(decade + 1, 0, 0);
  5279. _date.setHours(0, 0, 0, 0);
  5280. return _date;
  5281. }
  5282. // lib/fp/lastDayOfDecade.mjs
  5283. var lastDayOfDecade3 = convertToFP(lastDayOfDecade, 1);
  5284. // lib/lastDayOfWeek.mjs
  5285. function lastDayOfWeek(date, options) {var _ref40, _ref41, _ref42, _options$weekStartsOn8, _options$locale18, _defaultOptions15$loc;
  5286. var defaultOptions15 = getDefaultOptions();
  5287. var weekStartsOn = (_ref40 = (_ref41 = (_ref42 = (_options$weekStartsOn8 = options === null || options === void 0 ? void 0 : options.weekStartsOn) !== null && _options$weekStartsOn8 !== void 0 ? _options$weekStartsOn8 : options === null || options === void 0 || (_options$locale18 = options.locale) === null || _options$locale18 === void 0 || (_options$locale18 = _options$locale18.options) === null || _options$locale18 === void 0 ? void 0 : _options$locale18.weekStartsOn) !== null && _ref42 !== void 0 ? _ref42 : defaultOptions15.weekStartsOn) !== null && _ref41 !== void 0 ? _ref41 : (_defaultOptions15$loc = defaultOptions15.locale) === null || _defaultOptions15$loc === void 0 || (_defaultOptions15$loc = _defaultOptions15$loc.options) === null || _defaultOptions15$loc === void 0 ? void 0 : _defaultOptions15$loc.weekStartsOn) !== null && _ref40 !== void 0 ? _ref40 : 0;
  5288. var _date = toDate(date);
  5289. var day = _date.getDay();
  5290. var diff = (day < weekStartsOn ? -7 : 0) + 6 - (day - weekStartsOn);
  5291. _date.setHours(0, 0, 0, 0);
  5292. _date.setDate(_date.getDate() + diff);
  5293. return _date;
  5294. }
  5295. // lib/lastDayOfISOWeek.mjs
  5296. function lastDayOfISOWeek(date) {
  5297. return lastDayOfWeek(date, { weekStartsOn: 1 });
  5298. }
  5299. // lib/fp/lastDayOfISOWeek.mjs
  5300. var lastDayOfISOWeek3 = convertToFP(lastDayOfISOWeek, 1);
  5301. // lib/lastDayOfISOWeekYear.mjs
  5302. function lastDayOfISOWeekYear(date) {
  5303. var year = getISOWeekYear(date);
  5304. var fourthOfJanuary = constructFrom(date, 0);
  5305. fourthOfJanuary.setFullYear(year + 1, 0, 4);
  5306. fourthOfJanuary.setHours(0, 0, 0, 0);
  5307. var _date = startOfISOWeek(fourthOfJanuary);
  5308. _date.setDate(_date.getDate() - 1);
  5309. return _date;
  5310. }
  5311. // lib/fp/lastDayOfISOWeekYear.mjs
  5312. var lastDayOfISOWeekYear3 = convertToFP(lastDayOfISOWeekYear, 1);
  5313. // lib/fp/lastDayOfMonth.mjs
  5314. var lastDayOfMonth4 = convertToFP(lastDayOfMonth, 1);
  5315. // lib/lastDayOfQuarter.mjs
  5316. function lastDayOfQuarter(date) {
  5317. var _date = toDate(date);
  5318. var currentMonth = _date.getMonth();
  5319. var month = currentMonth - currentMonth % 3 + 3;
  5320. _date.setMonth(month, 0);
  5321. _date.setHours(0, 0, 0, 0);
  5322. return _date;
  5323. }
  5324. // lib/fp/lastDayOfQuarter.mjs
  5325. var lastDayOfQuarter3 = convertToFP(lastDayOfQuarter, 1);
  5326. // lib/fp/lastDayOfWeek.mjs
  5327. var lastDayOfWeek4 = convertToFP(lastDayOfWeek, 1);
  5328. // lib/fp/lastDayOfWeekWithOptions.mjs
  5329. var _lastDayOfWeekWithOptions = convertToFP(lastDayOfWeek, 2);
  5330. // lib/lastDayOfYear.mjs
  5331. function lastDayOfYear(date) {
  5332. var _date = toDate(date);
  5333. var year = _date.getFullYear();
  5334. _date.setFullYear(year + 1, 0, 0);
  5335. _date.setHours(0, 0, 0, 0);
  5336. return _date;
  5337. }
  5338. // lib/fp/lastDayOfYear.mjs
  5339. var lastDayOfYear3 = convertToFP(lastDayOfYear, 1);
  5340. // lib/lightFormat.mjs
  5341. function lightFormat(date, formatStr) {
  5342. var _date = toDate(date);
  5343. if (!isValid(_date)) {
  5344. throw new RangeError("Invalid time value");
  5345. }
  5346. var tokens = formatStr.match(formattingTokensRegExp3);
  5347. if (!tokens)
  5348. return "";
  5349. var result = tokens.map(function (substring) {
  5350. if (substring === "''") {
  5351. return "'";
  5352. }
  5353. var firstCharacter = substring[0];
  5354. if (firstCharacter === "'") {
  5355. return cleanEscapedString3(substring);
  5356. }
  5357. var formatter = lightFormatters[firstCharacter];
  5358. if (formatter) {
  5359. return formatter(_date, substring);
  5360. }
  5361. if (firstCharacter.match(unescapedLatinCharacterRegExp3)) {
  5362. throw new RangeError("Format string contains an unescaped latin alphabet character `" + firstCharacter + "`");
  5363. }
  5364. return substring;
  5365. }).join("");
  5366. return result;
  5367. }
  5368. var cleanEscapedString3 = function cleanEscapedString3(input) {
  5369. var matches = input.match(escapedStringRegExp3);
  5370. if (!matches) {
  5371. return input;
  5372. }
  5373. return matches[1].replace(doubleQuoteRegExp3, "'");
  5374. };
  5375. var formattingTokensRegExp3 = /(\w)\1*|''|'(''|[^'])+('|$)|./g;
  5376. var escapedStringRegExp3 = /^'([^]*?)'?$/;
  5377. var doubleQuoteRegExp3 = /''/g;
  5378. var unescapedLatinCharacterRegExp3 = /[a-zA-Z]/;
  5379. // lib/fp/lightFormat.mjs
  5380. var lightFormat3 = convertToFP(lightFormat, 2);
  5381. // lib/fp/max.mjs
  5382. var max4 = convertToFP(max, 1);
  5383. // lib/milliseconds.mjs
  5384. function milliseconds(_ref43)
  5385. {var years = _ref43.years,months2 = _ref43.months,weeks = _ref43.weeks,days2 = _ref43.days,hours = _ref43.hours,minutes = _ref43.minutes,seconds = _ref43.seconds;
  5386. var totalDays = 0;
  5387. if (years)
  5388. totalDays += years * daysInYear;
  5389. if (months2)
  5390. totalDays += months2 * (daysInYear / 12);
  5391. if (weeks)
  5392. totalDays += weeks * 7;
  5393. if (days2)
  5394. totalDays += days2;
  5395. var totalSeconds = totalDays * 24 * 60 * 60;
  5396. if (hours)
  5397. totalSeconds += hours * 60 * 60;
  5398. if (minutes)
  5399. totalSeconds += minutes * 60;
  5400. if (seconds)
  5401. totalSeconds += seconds;
  5402. return Math.trunc(totalSeconds * 1000);
  5403. }
  5404. // lib/fp/milliseconds.mjs
  5405. var milliseconds3 = convertToFP(milliseconds, 1);
  5406. // lib/millisecondsToHours.mjs
  5407. function millisecondsToHours(milliseconds4) {
  5408. var hours = milliseconds4 / millisecondsInHour;
  5409. return Math.trunc(hours);
  5410. }
  5411. // lib/fp/millisecondsToHours.mjs
  5412. var millisecondsToHours3 = convertToFP(millisecondsToHours, 1);
  5413. // lib/millisecondsToMinutes.mjs
  5414. function millisecondsToMinutes(milliseconds4) {
  5415. var minutes = milliseconds4 / millisecondsInMinute;
  5416. return Math.trunc(minutes);
  5417. }
  5418. // lib/fp/millisecondsToMinutes.mjs
  5419. var millisecondsToMinutes3 = convertToFP(millisecondsToMinutes, 1);
  5420. // lib/millisecondsToSeconds.mjs
  5421. function millisecondsToSeconds(milliseconds4) {
  5422. var seconds = milliseconds4 / millisecondsInSecond;
  5423. return Math.trunc(seconds);
  5424. }
  5425. // lib/fp/millisecondsToSeconds.mjs
  5426. var millisecondsToSeconds3 = convertToFP(millisecondsToSeconds, 1);
  5427. // lib/fp/min.mjs
  5428. var min4 = convertToFP(min, 1);
  5429. // lib/minutesToHours.mjs
  5430. function minutesToHours(minutes) {
  5431. var hours = minutes / minutesInHour;
  5432. return Math.trunc(hours);
  5433. }
  5434. // lib/fp/minutesToHours.mjs
  5435. var minutesToHours3 = convertToFP(minutesToHours, 1);
  5436. // lib/minutesToMilliseconds.mjs
  5437. function minutesToMilliseconds(minutes) {
  5438. return Math.trunc(minutes * millisecondsInMinute);
  5439. }
  5440. // lib/fp/minutesToMilliseconds.mjs
  5441. var minutesToMilliseconds3 = convertToFP(minutesToMilliseconds, 1);
  5442. // lib/minutesToSeconds.mjs
  5443. function minutesToSeconds(minutes) {
  5444. return Math.trunc(minutes * secondsInMinute);
  5445. }
  5446. // lib/fp/minutesToSeconds.mjs
  5447. var minutesToSeconds3 = convertToFP(minutesToSeconds, 1);
  5448. // lib/monthsToQuarters.mjs
  5449. function monthsToQuarters(months2) {
  5450. var quarters = months2 / monthsInQuarter;
  5451. return Math.trunc(quarters);
  5452. }
  5453. // lib/fp/monthsToQuarters.mjs
  5454. var monthsToQuarters3 = convertToFP(monthsToQuarters, 1);
  5455. // lib/monthsToYears.mjs
  5456. function monthsToYears(months2) {
  5457. var years = months2 / monthsInYear;
  5458. return Math.trunc(years);
  5459. }
  5460. // lib/fp/monthsToYears.mjs
  5461. var monthsToYears3 = convertToFP(monthsToYears, 1);
  5462. // lib/nextDay.mjs
  5463. function nextDay(date, day) {
  5464. var delta = day - getDay(date);
  5465. if (delta <= 0)
  5466. delta += 7;
  5467. return addDays(date, delta);
  5468. }
  5469. // lib/fp/nextDay.mjs
  5470. var nextDay3 = convertToFP(nextDay, 2);
  5471. // lib/nextFriday.mjs
  5472. function nextFriday(date) {
  5473. return nextDay(date, 5);
  5474. }
  5475. // lib/fp/nextFriday.mjs
  5476. var nextFriday3 = convertToFP(nextFriday, 1);
  5477. // lib/nextMonday.mjs
  5478. function nextMonday(date) {
  5479. return nextDay(date, 1);
  5480. }
  5481. // lib/fp/nextMonday.mjs
  5482. var nextMonday3 = convertToFP(nextMonday, 1);
  5483. // lib/nextSaturday.mjs
  5484. function nextSaturday(date) {
  5485. return nextDay(date, 6);
  5486. }
  5487. // lib/fp/nextSaturday.mjs
  5488. var nextSaturday3 = convertToFP(nextSaturday, 1);
  5489. // lib/nextSunday.mjs
  5490. function nextSunday(date) {
  5491. return nextDay(date, 0);
  5492. }
  5493. // lib/fp/nextSunday.mjs
  5494. var nextSunday3 = convertToFP(nextSunday, 1);
  5495. // lib/nextThursday.mjs
  5496. function nextThursday(date) {
  5497. return nextDay(date, 4);
  5498. }
  5499. // lib/fp/nextThursday.mjs
  5500. var nextThursday3 = convertToFP(nextThursday, 1);
  5501. // lib/nextTuesday.mjs
  5502. function nextTuesday(date) {
  5503. return nextDay(date, 2);
  5504. }
  5505. // lib/fp/nextTuesday.mjs
  5506. var nextTuesday3 = convertToFP(nextTuesday, 1);
  5507. // lib/nextWednesday.mjs
  5508. function nextWednesday(date) {
  5509. return nextDay(date, 3);
  5510. }
  5511. // lib/fp/nextWednesday.mjs
  5512. var nextWednesday3 = convertToFP(nextWednesday, 1);
  5513. // lib/fp/parse.mjs
  5514. var parse4 = convertToFP(parse, 3);
  5515. // lib/parseISO.mjs
  5516. function parseISO(argument, options) {var _options$additionalDi;
  5517. var additionalDigits = (_options$additionalDi = options === null || options === void 0 ? void 0 : options.additionalDigits) !== null && _options$additionalDi !== void 0 ? _options$additionalDi : 2;
  5518. var dateStrings = splitDateString(argument);
  5519. var date;
  5520. if (dateStrings.date) {
  5521. var parseYearResult = parseYear(dateStrings.date, additionalDigits);
  5522. date = parseDate(parseYearResult.restDateString, parseYearResult.year);
  5523. }
  5524. if (!date || isNaN(date.getTime())) {
  5525. return new Date(NaN);
  5526. }
  5527. var timestamp = date.getTime();
  5528. var time = 0;
  5529. var offset;
  5530. if (dateStrings.time) {
  5531. time = parseTime(dateStrings.time);
  5532. if (isNaN(time)) {
  5533. return new Date(NaN);
  5534. }
  5535. }
  5536. if (dateStrings.timezone) {
  5537. offset = parseTimezone(dateStrings.timezone);
  5538. if (isNaN(offset)) {
  5539. return new Date(NaN);
  5540. }
  5541. } else {
  5542. var dirtyDate = new Date(timestamp + time);
  5543. var result = new Date(0);
  5544. result.setFullYear(dirtyDate.getUTCFullYear(), dirtyDate.getUTCMonth(), dirtyDate.getUTCDate());
  5545. result.setHours(dirtyDate.getUTCHours(), dirtyDate.getUTCMinutes(), dirtyDate.getUTCSeconds(), dirtyDate.getUTCMilliseconds());
  5546. return result;
  5547. }
  5548. return new Date(timestamp + time + offset);
  5549. }
  5550. var splitDateString = function splitDateString(dateString) {
  5551. var dateStrings = {};
  5552. var array = dateString.split(patterns.dateTimeDelimiter);
  5553. var timeString;
  5554. if (array.length > 2) {
  5555. return dateStrings;
  5556. }
  5557. if (/:/.test(array[0])) {
  5558. timeString = array[0];
  5559. } else {
  5560. dateStrings.date = array[0];
  5561. timeString = array[1];
  5562. if (patterns.timeZoneDelimiter.test(dateStrings.date)) {
  5563. dateStrings.date = dateString.split(patterns.timeZoneDelimiter)[0];
  5564. timeString = dateString.substr(dateStrings.date.length, dateString.length);
  5565. }
  5566. }
  5567. if (timeString) {
  5568. var token = patterns.timezone.exec(timeString);
  5569. if (token) {
  5570. dateStrings.time = timeString.replace(token[1], "");
  5571. dateStrings.timezone = token[1];
  5572. } else {
  5573. dateStrings.time = timeString;
  5574. }
  5575. }
  5576. return dateStrings;
  5577. };
  5578. var parseYear = function parseYear(dateString, additionalDigits) {
  5579. var regex = new RegExp("^(?:(\\d{4}|[+-]\\d{" + (4 + additionalDigits) + "})|(\\d{2}|[+-]\\d{" + (2 + additionalDigits) + "})$)");
  5580. var captures = dateString.match(regex);
  5581. if (!captures)
  5582. return { year: NaN, restDateString: "" };
  5583. var year = captures[1] ? parseInt(captures[1]) : null;
  5584. var century = captures[2] ? parseInt(captures[2]) : null;
  5585. return {
  5586. year: century === null ? year : century * 100,
  5587. restDateString: dateString.slice((captures[1] || captures[2]).length)
  5588. };
  5589. };
  5590. var parseDate = function parseDate(dateString, year) {
  5591. if (year === null)
  5592. return new Date(NaN);
  5593. var captures = dateString.match(dateRegex);
  5594. if (!captures)
  5595. return new Date(NaN);
  5596. var isWeekDate = !!captures[4];
  5597. var dayOfYear = parseDateUnit(captures[1]);
  5598. var month = parseDateUnit(captures[2]) - 1;
  5599. var day = parseDateUnit(captures[3]);
  5600. var week = parseDateUnit(captures[4]);
  5601. var dayOfWeek = parseDateUnit(captures[5]) - 1;
  5602. if (isWeekDate) {
  5603. if (!validateWeekDate(year, week, dayOfWeek)) {
  5604. return new Date(NaN);
  5605. }
  5606. return dayOfISOWeekYear(year, week, dayOfWeek);
  5607. } else {
  5608. var date = new Date(0);
  5609. if (!validateDate(year, month, day) || !validateDayOfYearDate(year, dayOfYear)) {
  5610. return new Date(NaN);
  5611. }
  5612. date.setUTCFullYear(year, month, Math.max(dayOfYear, day));
  5613. return date;
  5614. }
  5615. };
  5616. var parseDateUnit = function parseDateUnit(value) {
  5617. return value ? parseInt(value) : 1;
  5618. };
  5619. var parseTime = function parseTime(timeString) {
  5620. var captures = timeString.match(timeRegex);
  5621. if (!captures)
  5622. return NaN;
  5623. var hours = parseTimeUnit(captures[1]);
  5624. var minutes = parseTimeUnit(captures[2]);
  5625. var seconds = parseTimeUnit(captures[3]);
  5626. if (!validateTime(hours, minutes, seconds)) {
  5627. return NaN;
  5628. }
  5629. return hours * millisecondsInHour + minutes * millisecondsInMinute + seconds * 1000;
  5630. };
  5631. var parseTimeUnit = function parseTimeUnit(value) {
  5632. return value && parseFloat(value.replace(",", ".")) || 0;
  5633. };
  5634. var parseTimezone = function parseTimezone(timezoneString) {
  5635. if (timezoneString === "Z")
  5636. return 0;
  5637. var captures = timezoneString.match(timezoneRegex);
  5638. if (!captures)
  5639. return 0;
  5640. var sign = captures[1] === "+" ? -1 : 1;
  5641. var hours = parseInt(captures[2]);
  5642. var minutes = captures[3] && parseInt(captures[3]) || 0;
  5643. if (!validateTimezone(hours, minutes)) {
  5644. return NaN;
  5645. }
  5646. return sign * (hours * millisecondsInHour + minutes * millisecondsInMinute);
  5647. };
  5648. var dayOfISOWeekYear = function dayOfISOWeekYear(isoWeekYear, week, day) {
  5649. var date = new Date(0);
  5650. date.setUTCFullYear(isoWeekYear, 0, 4);
  5651. var fourthOfJanuaryDay = date.getUTCDay() || 7;
  5652. var diff = (week - 1) * 7 + day + 1 - fourthOfJanuaryDay;
  5653. date.setUTCDate(date.getUTCDate() + diff);
  5654. return date;
  5655. };
  5656. var isLeapYearIndex2 = function isLeapYearIndex2(year) {
  5657. return year % 400 === 0 || year % 4 === 0 && year % 100 !== 0;
  5658. };
  5659. var validateDate = function validateDate(year, month, date) {
  5660. return month >= 0 && month <= 11 && date >= 1 && date <= (daysInMonths[month] || (isLeapYearIndex2(year) ? 29 : 28));
  5661. };
  5662. var validateDayOfYearDate = function validateDayOfYearDate(year, dayOfYear) {
  5663. return dayOfYear >= 1 && dayOfYear <= (isLeapYearIndex2(year) ? 366 : 365);
  5664. };
  5665. var validateWeekDate = function validateWeekDate(_year, week, day) {
  5666. return week >= 1 && week <= 53 && day >= 0 && day <= 6;
  5667. };
  5668. var validateTime = function validateTime(hours, minutes, seconds) {
  5669. if (hours === 24) {
  5670. return minutes === 0 && seconds === 0;
  5671. }
  5672. return seconds >= 0 && seconds < 60 && minutes >= 0 && minutes < 60 && hours >= 0 && hours < 25;
  5673. };
  5674. var validateTimezone = function validateTimezone(_hours, minutes) {
  5675. return minutes >= 0 && minutes <= 59;
  5676. };
  5677. var patterns = {
  5678. dateTimeDelimiter: /[T ]/,
  5679. timeZoneDelimiter: /[Z ]/i,
  5680. timezone: /([Z+-].*)$/
  5681. };
  5682. var dateRegex = /^-?(?:(\d{3})|(\d{2})(?:-?(\d{2}))?|W(\d{2})(?:-?(\d{1}))?|)$/;
  5683. var timeRegex = /^(\d{2}(?:[.,]\d*)?)(?::?(\d{2}(?:[.,]\d*)?))?(?::?(\d{2}(?:[.,]\d*)?))?$/;
  5684. var timezoneRegex = /^([+-])(\d{2})(?::?(\d{2}))?$/;
  5685. var daysInMonths = [31, null, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
  5686. // lib/fp/parseISO.mjs
  5687. var parseISO3 = convertToFP(parseISO, 1);
  5688. // lib/fp/parseISOWithOptions.mjs
  5689. var _parseISOWithOptions = convertToFP(parseISO, 2);
  5690. // lib/parseJSON.mjs
  5691. function parseJSON(dateStr) {
  5692. var parts = dateStr.match(/(\d{4})-(\d{2})-(\d{2})[T ](\d{2}):(\d{2}):(\d{2})(?:\.(\d{0,7}))?(?:Z|(.)(\d{2}):?(\d{2})?)?/);
  5693. if (parts) {
  5694. return new Date(Date.UTC(+parts[1], +parts[2] - 1, +parts[3], +parts[4] - (+parts[9] || 0) * (parts[8] == "-" ? -1 : 1), +parts[5] - (+parts[10] || 0) * (parts[8] == "-" ? -1 : 1), +parts[6], +((parts[7] || "0") + "00").substring(0, 3)));
  5695. }
  5696. return new Date(NaN);
  5697. }
  5698. // lib/fp/parseJSON.mjs
  5699. var parseJSON3 = convertToFP(parseJSON, 1);
  5700. // lib/fp/parseWithOptions.mjs
  5701. var _parseWithOptions = convertToFP(parse, 4);
  5702. // lib/subDays.mjs
  5703. function subDays(date, amount) {
  5704. return addDays(date, -amount);
  5705. }
  5706. // lib/previousDay.mjs
  5707. function previousDay(date, day) {
  5708. var delta = getDay(date) - day;
  5709. if (delta <= 0)
  5710. delta += 7;
  5711. return subDays(date, delta);
  5712. }
  5713. // lib/fp/previousDay.mjs
  5714. var previousDay3 = convertToFP(previousDay, 2);
  5715. // lib/previousFriday.mjs
  5716. function previousFriday(date) {
  5717. return previousDay(date, 5);
  5718. }
  5719. // lib/fp/previousFriday.mjs
  5720. var previousFriday3 = convertToFP(previousFriday, 1);
  5721. // lib/previousMonday.mjs
  5722. function previousMonday(date) {
  5723. return previousDay(date, 1);
  5724. }
  5725. // lib/fp/previousMonday.mjs
  5726. var previousMonday3 = convertToFP(previousMonday, 1);
  5727. // lib/previousSaturday.mjs
  5728. function previousSaturday(date) {
  5729. return previousDay(date, 6);
  5730. }
  5731. // lib/fp/previousSaturday.mjs
  5732. var previousSaturday3 = convertToFP(previousSaturday, 1);
  5733. // lib/previousSunday.mjs
  5734. function previousSunday(date) {
  5735. return previousDay(date, 0);
  5736. }
  5737. // lib/fp/previousSunday.mjs
  5738. var previousSunday3 = convertToFP(previousSunday, 1);
  5739. // lib/previousThursday.mjs
  5740. function previousThursday(date) {
  5741. return previousDay(date, 4);
  5742. }
  5743. // lib/fp/previousThursday.mjs
  5744. var previousThursday3 = convertToFP(previousThursday, 1);
  5745. // lib/previousTuesday.mjs
  5746. function previousTuesday(date) {
  5747. return previousDay(date, 2);
  5748. }
  5749. // lib/fp/previousTuesday.mjs
  5750. var previousTuesday3 = convertToFP(previousTuesday, 1);
  5751. // lib/previousWednesday.mjs
  5752. function previousWednesday(date) {
  5753. return previousDay(date, 3);
  5754. }
  5755. // lib/fp/previousWednesday.mjs
  5756. var previousWednesday3 = convertToFP(previousWednesday, 1);
  5757. // lib/quartersToMonths.mjs
  5758. function quartersToMonths(quarters) {
  5759. return Math.trunc(quarters * monthsInQuarter);
  5760. }
  5761. // lib/fp/quartersToMonths.mjs
  5762. var quartersToMonths3 = convertToFP(quartersToMonths, 1);
  5763. // lib/quartersToYears.mjs
  5764. function quartersToYears(quarters) {
  5765. var years = quarters / quartersInYear;
  5766. return Math.trunc(years);
  5767. }
  5768. // lib/fp/quartersToYears.mjs
  5769. var quartersToYears3 = convertToFP(quartersToYears, 1);
  5770. // lib/roundToNearestHours.mjs
  5771. function roundToNearestHours(date, options) {var _options$nearestTo, _options$roundingMeth2;
  5772. var nearestTo = (_options$nearestTo = options === null || options === void 0 ? void 0 : options.nearestTo) !== null && _options$nearestTo !== void 0 ? _options$nearestTo : 1;
  5773. if (nearestTo < 1 || nearestTo > 12)
  5774. return constructFrom(date, NaN);
  5775. var _date = toDate(date);
  5776. var fractionalMinutes = _date.getMinutes() / 60;
  5777. var fractionalSeconds = _date.getSeconds() / 60 / 60;
  5778. var fractionalMilliseconds = _date.getMilliseconds() / 1000 / 60 / 60;
  5779. var hours = _date.getHours() + fractionalMinutes + fractionalSeconds + fractionalMilliseconds;
  5780. var method = (_options$roundingMeth2 = options === null || options === void 0 ? void 0 : options.roundingMethod) !== null && _options$roundingMeth2 !== void 0 ? _options$roundingMeth2 : "round";
  5781. var roundingMethod = getRoundingMethod(method);
  5782. var roundedHours = roundingMethod(hours / nearestTo) * nearestTo;
  5783. var result = constructFrom(date, _date);
  5784. result.setHours(roundedHours, 0, 0, 0);
  5785. return result;
  5786. }
  5787. // lib/fp/roundToNearestHours.mjs
  5788. var roundToNearestHours3 = convertToFP(roundToNearestHours, 1);
  5789. // lib/fp/roundToNearestHoursWithOptions.mjs
  5790. var _roundToNearestHoursWithOptions = convertToFP(roundToNearestHours, 2);
  5791. // lib/roundToNearestMinutes.mjs
  5792. function roundToNearestMinutes(date, options) {var _options$nearestTo2, _options$roundingMeth3;
  5793. var nearestTo = (_options$nearestTo2 = options === null || options === void 0 ? void 0 : options.nearestTo) !== null && _options$nearestTo2 !== void 0 ? _options$nearestTo2 : 1;
  5794. if (nearestTo < 1 || nearestTo > 30)
  5795. return constructFrom(date, NaN);
  5796. var _date = toDate(date);
  5797. var fractionalSeconds = _date.getSeconds() / 60;
  5798. var fractionalMilliseconds = _date.getMilliseconds() / 1000 / 60;
  5799. var minutes = _date.getMinutes() + fractionalSeconds + fractionalMilliseconds;
  5800. var method = (_options$roundingMeth3 = options === null || options === void 0 ? void 0 : options.roundingMethod) !== null && _options$roundingMeth3 !== void 0 ? _options$roundingMeth3 : "round";
  5801. var roundingMethod = getRoundingMethod(method);
  5802. var roundedMinutes = roundingMethod(minutes / nearestTo) * nearestTo;
  5803. var result = constructFrom(date, _date);
  5804. result.setMinutes(roundedMinutes, 0, 0);
  5805. return result;
  5806. }
  5807. // lib/fp/roundToNearestMinutes.mjs
  5808. var roundToNearestMinutes3 = convertToFP(roundToNearestMinutes, 1);
  5809. // lib/fp/roundToNearestMinutesWithOptions.mjs
  5810. var _roundToNearestMinutesWithOptions = convertToFP(roundToNearestMinutes, 2);
  5811. // lib/secondsToHours.mjs
  5812. function secondsToHours(seconds) {
  5813. var hours = seconds / secondsInHour;
  5814. return Math.trunc(hours);
  5815. }
  5816. // lib/fp/secondsToHours.mjs
  5817. var secondsToHours3 = convertToFP(secondsToHours, 1);
  5818. // lib/secondsToMilliseconds.mjs
  5819. function secondsToMilliseconds(seconds) {
  5820. return seconds * millisecondsInSecond;
  5821. }
  5822. // lib/fp/secondsToMilliseconds.mjs
  5823. var secondsToMilliseconds3 = convertToFP(secondsToMilliseconds, 1);
  5824. // lib/secondsToMinutes.mjs
  5825. function secondsToMinutes(seconds) {
  5826. var minutes = seconds / secondsInMinute;
  5827. return Math.trunc(minutes);
  5828. }
  5829. // lib/fp/secondsToMinutes.mjs
  5830. var secondsToMinutes3 = convertToFP(secondsToMinutes, 1);
  5831. // lib/setMonth.mjs
  5832. function setMonth(date, month) {
  5833. var _date = toDate(date);
  5834. var year = _date.getFullYear();
  5835. var day = _date.getDate();
  5836. var dateWithDesiredMonth = constructFrom(date, 0);
  5837. dateWithDesiredMonth.setFullYear(year, month, 15);
  5838. dateWithDesiredMonth.setHours(0, 0, 0, 0);
  5839. var daysInMonth = getDaysInMonth(dateWithDesiredMonth);
  5840. _date.setMonth(month, Math.min(day, daysInMonth));
  5841. return _date;
  5842. }
  5843. // lib/set.mjs
  5844. function set(date, values) {
  5845. var _date = toDate(date);
  5846. if (isNaN(+_date)) {
  5847. return constructFrom(date, NaN);
  5848. }
  5849. if (values.year != null) {
  5850. _date.setFullYear(values.year);
  5851. }
  5852. if (values.month != null) {
  5853. _date = setMonth(_date, values.month);
  5854. }
  5855. if (values.date != null) {
  5856. _date.setDate(values.date);
  5857. }
  5858. if (values.hours != null) {
  5859. _date.setHours(values.hours);
  5860. }
  5861. if (values.minutes != null) {
  5862. _date.setMinutes(values.minutes);
  5863. }
  5864. if (values.seconds != null) {
  5865. _date.setSeconds(values.seconds);
  5866. }
  5867. if (values.milliseconds != null) {
  5868. _date.setMilliseconds(values.milliseconds);
  5869. }
  5870. return _date;
  5871. }
  5872. // lib/fp/set.mjs
  5873. var set3 = convertToFP(set, 2);
  5874. // lib/setDate.mjs
  5875. function setDate(date, dayOfMonth) {
  5876. var _date = toDate(date);
  5877. _date.setDate(dayOfMonth);
  5878. return _date;
  5879. }
  5880. // lib/fp/setDate.mjs
  5881. var setDate3 = convertToFP(setDate, 2);
  5882. // lib/fp/setDay.mjs
  5883. var setDay6 = convertToFP(setDay, 2);
  5884. // lib/setDayOfYear.mjs
  5885. function setDayOfYear(date, dayOfYear) {
  5886. var _date = toDate(date);
  5887. _date.setMonth(0);
  5888. _date.setDate(dayOfYear);
  5889. return _date;
  5890. }
  5891. // lib/fp/setDayOfYear.mjs
  5892. var setDayOfYear3 = convertToFP(setDayOfYear, 2);
  5893. // lib/fp/setDayWithOptions.mjs
  5894. var _setDayWithOptions = convertToFP(setDay, 3);
  5895. // lib/setHours.mjs
  5896. function setHours(date, hours) {
  5897. var _date = toDate(date);
  5898. _date.setHours(hours);
  5899. return _date;
  5900. }
  5901. // lib/fp/setHours.mjs
  5902. var setHours3 = convertToFP(setHours, 2);
  5903. // lib/fp/setISODay.mjs
  5904. var setISODay4 = convertToFP(setISODay, 2);
  5905. // lib/fp/setISOWeek.mjs
  5906. var setISOWeek4 = convertToFP(setISOWeek, 2);
  5907. // lib/fp/setISOWeekYear.mjs
  5908. var setISOWeekYear4 = convertToFP(setISOWeekYear, 2);
  5909. // lib/setMilliseconds.mjs
  5910. function setMilliseconds(date, milliseconds4) {
  5911. var _date = toDate(date);
  5912. _date.setMilliseconds(milliseconds4);
  5913. return _date;
  5914. }
  5915. // lib/fp/setMilliseconds.mjs
  5916. var setMilliseconds3 = convertToFP(setMilliseconds, 2);
  5917. // lib/setMinutes.mjs
  5918. function setMinutes(date, minutes) {
  5919. var _date = toDate(date);
  5920. _date.setMinutes(minutes);
  5921. return _date;
  5922. }
  5923. // lib/fp/setMinutes.mjs
  5924. var setMinutes3 = convertToFP(setMinutes, 2);
  5925. // lib/fp/setMonth.mjs
  5926. var setMonth4 = convertToFP(setMonth, 2);
  5927. // lib/setQuarter.mjs
  5928. function setQuarter(date, quarter) {
  5929. var _date = toDate(date);
  5930. var oldQuarter = Math.trunc(_date.getMonth() / 3) + 1;
  5931. var diff = quarter - oldQuarter;
  5932. return setMonth(_date, _date.getMonth() + diff * 3);
  5933. }
  5934. // lib/fp/setQuarter.mjs
  5935. var setQuarter3 = convertToFP(setQuarter, 2);
  5936. // lib/setSeconds.mjs
  5937. function setSeconds(date, seconds) {
  5938. var _date = toDate(date);
  5939. _date.setSeconds(seconds);
  5940. return _date;
  5941. }
  5942. // lib/fp/setSeconds.mjs
  5943. var setSeconds3 = convertToFP(setSeconds, 2);
  5944. // lib/fp/setWeek.mjs
  5945. var setWeek4 = convertToFP(setWeek, 2);
  5946. // lib/fp/setWeekWithOptions.mjs
  5947. var _setWeekWithOptions = convertToFP(setWeek, 3);
  5948. // lib/setWeekYear.mjs
  5949. function setWeekYear(date, weekYear, options) {var _ref44, _ref45, _ref46, _options$firstWeekCon5, _options$locale19, _defaultOptions16$loc;
  5950. var defaultOptions16 = getDefaultOptions();
  5951. var firstWeekContainsDate = (_ref44 = (_ref45 = (_ref46 = (_options$firstWeekCon5 = options === null || options === void 0 ? void 0 : options.firstWeekContainsDate) !== null && _options$firstWeekCon5 !== void 0 ? _options$firstWeekCon5 : options === null || options === void 0 || (_options$locale19 = options.locale) === null || _options$locale19 === void 0 || (_options$locale19 = _options$locale19.options) === null || _options$locale19 === void 0 ? void 0 : _options$locale19.firstWeekContainsDate) !== null && _ref46 !== void 0 ? _ref46 : defaultOptions16.firstWeekContainsDate) !== null && _ref45 !== void 0 ? _ref45 : (_defaultOptions16$loc = defaultOptions16.locale) === null || _defaultOptions16$loc === void 0 || (_defaultOptions16$loc = _defaultOptions16$loc.options) === null || _defaultOptions16$loc === void 0 ? void 0 : _defaultOptions16$loc.firstWeekContainsDate) !== null && _ref44 !== void 0 ? _ref44 : 1;
  5952. var _date = toDate(date);
  5953. var diff = differenceInCalendarDays(_date, startOfWeekYear(_date, options));
  5954. var firstWeek = constructFrom(date, 0);
  5955. firstWeek.setFullYear(weekYear, 0, firstWeekContainsDate);
  5956. firstWeek.setHours(0, 0, 0, 0);
  5957. _date = startOfWeekYear(firstWeek, options);
  5958. _date.setDate(_date.getDate() + diff);
  5959. return _date;
  5960. }
  5961. // lib/fp/setWeekYear.mjs
  5962. var setWeekYear3 = convertToFP(setWeekYear, 2);
  5963. // lib/fp/setWeekYearWithOptions.mjs
  5964. var _setWeekYearWithOptions = convertToFP(setWeekYear, 3);
  5965. // lib/setYear.mjs
  5966. function setYear(date, year) {
  5967. var _date = toDate(date);
  5968. if (isNaN(+_date)) {
  5969. return constructFrom(date, NaN);
  5970. }
  5971. _date.setFullYear(year);
  5972. return _date;
  5973. }
  5974. // lib/fp/setYear.mjs
  5975. var setYear3 = convertToFP(setYear, 2);
  5976. // lib/fp/startOfDay.mjs
  5977. var startOfDay5 = convertToFP(startOfDay, 1);
  5978. // lib/startOfDecade.mjs
  5979. function startOfDecade(date) {
  5980. var _date = toDate(date);
  5981. var year = _date.getFullYear();
  5982. var decade = Math.floor(year / 10) * 10;
  5983. _date.setFullYear(decade, 0, 1);
  5984. _date.setHours(0, 0, 0, 0);
  5985. return _date;
  5986. }
  5987. // lib/fp/startOfDecade.mjs
  5988. var startOfDecade3 = convertToFP(startOfDecade, 1);
  5989. // lib/fp/startOfHour.mjs
  5990. var startOfHour4 = convertToFP(startOfHour, 1);
  5991. // lib/fp/startOfISOWeek.mjs
  5992. var startOfISOWeek11 = convertToFP(startOfISOWeek, 1);
  5993. // lib/fp/startOfISOWeekYear.mjs
  5994. var startOfISOWeekYear7 = convertToFP(startOfISOWeekYear, 1);
  5995. // lib/fp/startOfMinute.mjs
  5996. var startOfMinute5 = convertToFP(startOfMinute, 1);
  5997. // lib/fp/startOfMonth.mjs
  5998. var startOfMonth6 = convertToFP(startOfMonth, 1);
  5999. // lib/fp/startOfQuarter.mjs
  6000. var startOfQuarter5 = convertToFP(startOfQuarter, 1);
  6001. // lib/fp/startOfSecond.mjs
  6002. var startOfSecond4 = convertToFP(startOfSecond, 1);
  6003. // lib/fp/startOfWeek.mjs
  6004. var startOfWeek12 = convertToFP(startOfWeek, 1);
  6005. // lib/fp/startOfWeekWithOptions.mjs
  6006. var _startOfWeekWithOptions = convertToFP(startOfWeek, 2);
  6007. // lib/fp/startOfWeekYear.mjs
  6008. var startOfWeekYear5 = convertToFP(startOfWeekYear, 1);
  6009. // lib/fp/startOfWeekYearWithOptions.mjs
  6010. var _startOfWeekYearWithOptions = convertToFP(startOfWeekYear, 2);
  6011. // lib/fp/startOfYear.mjs
  6012. var startOfYear5 = convertToFP(startOfYear, 1);
  6013. // lib/subMonths.mjs
  6014. function subMonths(date, amount) {
  6015. return addMonths(date, -amount);
  6016. }
  6017. // lib/sub.mjs
  6018. function sub(date, duration) {
  6019. var _duration$years3 =
  6020. duration.years,years = _duration$years3 === void 0 ? 0 : _duration$years3,_duration$months3 = duration.months,months2 = _duration$months3 === void 0 ? 0 : _duration$months3,_duration$weeks2 = duration.weeks,weeks = _duration$weeks2 === void 0 ? 0 : _duration$weeks2,_duration$days3 = duration.days,days2 = _duration$days3 === void 0 ? 0 : _duration$days3,_duration$hours3 = duration.hours,hours = _duration$hours3 === void 0 ? 0 : _duration$hours3,_duration$minutes3 = duration.minutes,minutes = _duration$minutes3 === void 0 ? 0 : _duration$minutes3,_duration$seconds3 = duration.seconds,seconds = _duration$seconds3 === void 0 ? 0 : _duration$seconds3;
  6021. var dateWithoutMonths = subMonths(date, months2 + years * 12);
  6022. var dateWithoutDays = subDays(dateWithoutMonths, days2 + weeks * 7);
  6023. var minutestoSub = minutes + hours * 60;
  6024. var secondstoSub = seconds + minutestoSub * 60;
  6025. var mstoSub = secondstoSub * 1000;
  6026. var finalDate = constructFrom(date, dateWithoutDays.getTime() - mstoSub);
  6027. return finalDate;
  6028. }
  6029. // lib/fp/sub.mjs
  6030. var sub3 = convertToFP(sub, 2);
  6031. // lib/subBusinessDays.mjs
  6032. function subBusinessDays(date, amount) {
  6033. return addBusinessDays(date, -amount);
  6034. }
  6035. // lib/fp/subBusinessDays.mjs
  6036. var subBusinessDays3 = convertToFP(subBusinessDays, 2);
  6037. // lib/fp/subDays.mjs
  6038. var subDays5 = convertToFP(subDays, 2);
  6039. // lib/subHours.mjs
  6040. function subHours(date, amount) {
  6041. return addHours(date, -amount);
  6042. }
  6043. // lib/fp/subHours.mjs
  6044. var subHours3 = convertToFP(subHours, 2);
  6045. // lib/fp/subISOWeekYears.mjs
  6046. var subISOWeekYears4 = convertToFP(subISOWeekYears, 2);
  6047. // lib/subMilliseconds.mjs
  6048. function subMilliseconds(date, amount) {
  6049. return addMilliseconds(date, -amount);
  6050. }
  6051. // lib/fp/subMilliseconds.mjs
  6052. var subMilliseconds3 = convertToFP(subMilliseconds, 2);
  6053. // lib/subMinutes.mjs
  6054. function subMinutes(date, amount) {
  6055. return addMinutes(date, -amount);
  6056. }
  6057. // lib/fp/subMinutes.mjs
  6058. var subMinutes3 = convertToFP(subMinutes, 2);
  6059. // lib/fp/subMonths.mjs
  6060. var subMonths4 = convertToFP(subMonths, 2);
  6061. // lib/subQuarters.mjs
  6062. function subQuarters(date, amount) {
  6063. return addQuarters(date, -amount);
  6064. }
  6065. // lib/fp/subQuarters.mjs
  6066. var subQuarters3 = convertToFP(subQuarters, 2);
  6067. // lib/subSeconds.mjs
  6068. function subSeconds(date, amount) {
  6069. return addSeconds(date, -amount);
  6070. }
  6071. // lib/fp/subSeconds.mjs
  6072. var subSeconds3 = convertToFP(subSeconds, 2);
  6073. // lib/subWeeks.mjs
  6074. function subWeeks(date, amount) {
  6075. return addWeeks(date, -amount);
  6076. }
  6077. // lib/fp/subWeeks.mjs
  6078. var subWeeks3 = convertToFP(subWeeks, 2);
  6079. // lib/subYears.mjs
  6080. function subYears(date, amount) {
  6081. return addYears(date, -amount);
  6082. }
  6083. // lib/fp/subYears.mjs
  6084. var subYears3 = convertToFP(subYears, 2);
  6085. // lib/fp/toDate.mjs
  6086. var toDate127 = convertToFP(toDate, 1);
  6087. // lib/fp/transpose.mjs
  6088. var transpose4 = convertToFP(transpose, 2);
  6089. // lib/weeksToDays.mjs
  6090. function weeksToDays(weeks) {
  6091. return Math.trunc(weeks * daysInWeek);
  6092. }
  6093. // lib/fp/weeksToDays.mjs
  6094. var weeksToDays3 = convertToFP(weeksToDays, 1);
  6095. // lib/yearsToDays.mjs
  6096. function yearsToDays(years) {
  6097. return Math.trunc(years * daysInYear);
  6098. }
  6099. // lib/fp/yearsToDays.mjs
  6100. var yearsToDays3 = convertToFP(yearsToDays, 1);
  6101. // lib/yearsToMonths.mjs
  6102. function yearsToMonths(years) {
  6103. return Math.trunc(years * monthsInYear);
  6104. }
  6105. // lib/fp/yearsToMonths.mjs
  6106. var yearsToMonths3 = convertToFP(yearsToMonths, 1);
  6107. // lib/yearsToQuarters.mjs
  6108. function yearsToQuarters(years) {
  6109. return Math.trunc(years * quartersInYear);
  6110. }
  6111. // lib/fp/yearsToQuarters.mjs
  6112. var yearsToQuarters3 = convertToFP(yearsToQuarters, 1);
  6113. // lib/fp/cdn.js
  6114. window.dateFns = _objectSpread(_objectSpread({},
  6115. window.dateFns), {}, {
  6116. fp: exports_fp });
  6117. //# debugId=32E3B9540398E9D364756e2164756e21
  6118. })();
  6119. //# sourceMappingURL=cdn.js.map