app.js 368 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799380038013802380338043805380638073808380938103811381238133814381538163817381838193820382138223823382438253826382738283829383038313832383338343835383638373838383938403841384238433844384538463847384838493850385138523853385438553856385738583859386038613862386338643865386638673868386938703871387238733874387538763877387838793880388138823883388438853886388738883889389038913892389338943895389638973898389939003901390239033904390539063907390839093910391139123913391439153916391739183919392039213922392339243925392639273928392939303931393239333934393539363937393839393940394139423943394439453946394739483949395039513952395339543955395639573958395939603961396239633964396539663967396839693970397139723973397439753976397739783979398039813982398339843985398639873988398939903991399239933994399539963997399839994000400140024003400440054006400740084009401040114012401340144015401640174018401940204021402240234024402540264027402840294030403140324033403440354036403740384039404040414042404340444045404640474048404940504051405240534054405540564057405840594060406140624063406440654066406740684069407040714072407340744075407640774078407940804081408240834084408540864087408840894090409140924093409440954096409740984099410041014102410341044105410641074108410941104111411241134114411541164117411841194120412141224123412441254126412741284129413041314132413341344135413641374138413941404141414241434144414541464147414841494150415141524153415441554156415741584159416041614162416341644165416641674168416941704171417241734174417541764177417841794180418141824183418441854186418741884189419041914192419341944195419641974198419942004201420242034204420542064207420842094210421142124213421442154216421742184219422042214222422342244225422642274228422942304231423242334234423542364237423842394240424142424243424442454246424742484249425042514252425342544255425642574258425942604261426242634264426542664267426842694270427142724273427442754276427742784279428042814282428342844285428642874288428942904291429242934294429542964297429842994300430143024303430443054306430743084309431043114312431343144315431643174318431943204321432243234324432543264327432843294330433143324333433443354336433743384339434043414342434343444345434643474348434943504351435243534354435543564357435843594360436143624363436443654366436743684369437043714372437343744375437643774378437943804381438243834384438543864387438843894390439143924393439443954396439743984399440044014402440344044405440644074408440944104411441244134414441544164417441844194420442144224423442444254426442744284429443044314432443344344435443644374438443944404441444244434444444544464447444844494450445144524453445444554456445744584459446044614462446344644465446644674468446944704471447244734474447544764477447844794480448144824483448444854486448744884489449044914492449344944495449644974498449945004501450245034504450545064507450845094510451145124513451445154516451745184519452045214522452345244525452645274528452945304531453245334534453545364537453845394540454145424543454445454546454745484549455045514552455345544555455645574558455945604561456245634564456545664567456845694570457145724573457445754576457745784579458045814582458345844585458645874588458945904591459245934594459545964597459845994600460146024603460446054606460746084609461046114612461346144615461646174618461946204621462246234624462546264627462846294630463146324633463446354636463746384639464046414642464346444645464646474648464946504651465246534654465546564657465846594660466146624663466446654666466746684669467046714672467346744675467646774678467946804681468246834684468546864687468846894690469146924693469446954696469746984699470047014702470347044705470647074708470947104711471247134714471547164717471847194720472147224723472447254726472747284729473047314732473347344735473647374738473947404741474247434744474547464747474847494750475147524753475447554756475747584759476047614762476347644765476647674768476947704771477247734774477547764777477847794780478147824783478447854786478747884789479047914792479347944795479647974798479948004801480248034804480548064807480848094810481148124813481448154816481748184819482048214822482348244825482648274828482948304831483248334834483548364837483848394840484148424843484448454846484748484849485048514852485348544855485648574858485948604861486248634864486548664867486848694870487148724873487448754876487748784879488048814882488348844885488648874888488948904891489248934894489548964897489848994900490149024903490449054906490749084909491049114912491349144915491649174918491949204921492249234924492549264927492849294930493149324933493449354936493749384939494049414942494349444945494649474948494949504951495249534954495549564957495849594960496149624963496449654966496749684969497049714972497349744975497649774978497949804981498249834984498549864987498849894990499149924993499449954996499749984999500050015002500350045005500650075008500950105011501250135014501550165017501850195020502150225023502450255026502750285029503050315032503350345035503650375038503950405041504250435044504550465047504850495050505150525053505450555056505750585059506050615062506350645065506650675068506950705071507250735074507550765077507850795080508150825083508450855086508750885089509050915092509350945095509650975098509951005101510251035104510551065107510851095110511151125113511451155116511751185119512051215122512351245125512651275128512951305131513251335134513551365137513851395140514151425143514451455146514751485149515051515152515351545155515651575158515951605161516251635164516551665167516851695170517151725173517451755176517751785179518051815182518351845185518651875188518951905191519251935194519551965197519851995200520152025203520452055206520752085209521052115212521352145215521652175218521952205221522252235224522552265227522852295230523152325233523452355236523752385239524052415242524352445245524652475248524952505251525252535254525552565257525852595260526152625263526452655266526752685269527052715272527352745275527652775278527952805281528252835284528552865287528852895290529152925293529452955296529752985299530053015302530353045305530653075308530953105311531253135314531553165317531853195320532153225323532453255326532753285329533053315332533353345335533653375338533953405341534253435344534553465347534853495350535153525353535453555356535753585359536053615362536353645365536653675368536953705371537253735374537553765377537853795380538153825383538453855386538753885389539053915392539353945395539653975398539954005401540254035404540554065407540854095410541154125413541454155416541754185419542054215422542354245425542654275428542954305431543254335434543554365437543854395440544154425443544454455446544754485449545054515452545354545455545654575458545954605461546254635464546554665467546854695470547154725473547454755476547754785479548054815482548354845485548654875488548954905491549254935494549554965497549854995500550155025503550455055506550755085509551055115512551355145515551655175518551955205521552255235524552555265527552855295530553155325533553455355536553755385539554055415542554355445545554655475548554955505551555255535554555555565557555855595560556155625563556455655566556755685569557055715572557355745575557655775578557955805581558255835584558555865587558855895590559155925593559455955596559755985599560056015602560356045605560656075608560956105611561256135614561556165617561856195620562156225623562456255626562756285629563056315632563356345635563656375638563956405641564256435644564556465647564856495650565156525653565456555656565756585659566056615662566356645665566656675668566956705671567256735674567556765677567856795680568156825683568456855686568756885689569056915692569356945695569656975698569957005701570257035704570557065707570857095710571157125713571457155716571757185719572057215722572357245725572657275728572957305731573257335734573557365737573857395740574157425743574457455746574757485749575057515752575357545755575657575758575957605761576257635764576557665767576857695770577157725773577457755776577757785779578057815782578357845785578657875788578957905791579257935794579557965797579857995800580158025803580458055806580758085809581058115812581358145815581658175818581958205821582258235824582558265827582858295830583158325833583458355836583758385839584058415842584358445845584658475848584958505851585258535854585558565857585858595860586158625863586458655866586758685869587058715872587358745875587658775878587958805881588258835884588558865887588858895890589158925893589458955896589758985899590059015902590359045905590659075908590959105911591259135914591559165917591859195920592159225923592459255926592759285929593059315932593359345935593659375938593959405941594259435944594559465947594859495950595159525953595459555956595759585959596059615962596359645965596659675968596959705971597259735974597559765977597859795980598159825983598459855986598759885989599059915992599359945995599659975998599960006001600260036004600560066007600860096010601160126013601460156016601760186019602060216022602360246025602660276028602960306031603260336034603560366037603860396040604160426043604460456046604760486049605060516052605360546055605660576058605960606061606260636064606560666067606860696070607160726073607460756076607760786079608060816082608360846085608660876088608960906091609260936094609560966097609860996100610161026103610461056106610761086109611061116112611361146115611661176118611961206121612261236124612561266127612861296130613161326133613461356136613761386139614061416142614361446145614661476148614961506151615261536154615561566157615861596160616161626163616461656166616761686169617061716172617361746175617661776178617961806181618261836184618561866187618861896190619161926193619461956196619761986199620062016202620362046205620662076208620962106211621262136214621562166217621862196220622162226223622462256226622762286229623062316232623362346235623662376238623962406241624262436244624562466247624862496250625162526253625462556256625762586259626062616262626362646265626662676268626962706271627262736274627562766277627862796280628162826283628462856286628762886289629062916292629362946295629662976298629963006301630263036304630563066307630863096310631163126313631463156316631763186319632063216322632363246325632663276328632963306331633263336334633563366337633863396340634163426343634463456346634763486349635063516352635363546355635663576358635963606361636263636364636563666367636863696370637163726373637463756376637763786379638063816382638363846385638663876388638963906391639263936394639563966397639863996400640164026403640464056406640764086409641064116412641364146415641664176418641964206421642264236424642564266427642864296430643164326433643464356436643764386439644064416442644364446445644664476448644964506451645264536454645564566457645864596460646164626463646464656466646764686469647064716472647364746475647664776478647964806481648264836484648564866487648864896490649164926493649464956496649764986499650065016502650365046505650665076508650965106511651265136514651565166517651865196520652165226523652465256526652765286529653065316532653365346535653665376538653965406541654265436544654565466547654865496550655165526553655465556556655765586559656065616562656365646565656665676568656965706571657265736574657565766577657865796580658165826583658465856586658765886589659065916592659365946595659665976598659966006601660266036604660566066607660866096610661166126613661466156616661766186619662066216622662366246625662666276628662966306631663266336634663566366637663866396640664166426643664466456646664766486649665066516652665366546655665666576658665966606661666266636664666566666667666866696670667166726673667466756676667766786679668066816682668366846685668666876688668966906691669266936694669566966697669866996700670167026703670467056706670767086709671067116712671367146715671667176718671967206721672267236724672567266727672867296730673167326733673467356736673767386739674067416742674367446745674667476748674967506751675267536754675567566757675867596760676167626763676467656766676767686769677067716772677367746775677667776778677967806781678267836784678567866787678867896790679167926793679467956796679767986799680068016802680368046805680668076808680968106811681268136814681568166817681868196820682168226823682468256826682768286829683068316832683368346835683668376838683968406841684268436844684568466847684868496850685168526853685468556856685768586859686068616862686368646865686668676868686968706871687268736874687568766877687868796880688168826883688468856886688768886889689068916892689368946895689668976898689969006901690269036904690569066907690869096910691169126913691469156916691769186919692069216922692369246925692669276928692969306931693269336934693569366937693869396940694169426943694469456946694769486949695069516952695369546955695669576958695969606961696269636964696569666967696869696970697169726973697469756976697769786979698069816982698369846985698669876988698969906991699269936994699569966997699869997000700170027003700470057006700770087009701070117012701370147015701670177018701970207021702270237024702570267027702870297030703170327033703470357036703770387039704070417042704370447045704670477048704970507051705270537054705570567057705870597060706170627063706470657066706770687069707070717072707370747075707670777078707970807081708270837084708570867087708870897090709170927093709470957096709770987099710071017102710371047105710671077108710971107111711271137114711571167117711871197120712171227123712471257126712771287129713071317132713371347135713671377138713971407141714271437144714571467147714871497150715171527153715471557156715771587159716071617162716371647165716671677168716971707171717271737174717571767177717871797180718171827183718471857186718771887189719071917192719371947195719671977198719972007201720272037204720572067207720872097210721172127213721472157216721772187219722072217222722372247225722672277228722972307231723272337234723572367237723872397240724172427243724472457246724772487249725072517252725372547255725672577258725972607261726272637264726572667267726872697270727172727273727472757276727772787279728072817282728372847285728672877288728972907291729272937294729572967297729872997300730173027303730473057306730773087309731073117312731373147315731673177318731973207321732273237324732573267327732873297330733173327333733473357336733773387339734073417342734373447345734673477348734973507351735273537354735573567357735873597360736173627363736473657366736773687369737073717372737373747375737673777378737973807381738273837384738573867387738873897390739173927393739473957396739773987399740074017402740374047405740674077408740974107411741274137414741574167417741874197420742174227423742474257426742774287429743074317432743374347435743674377438743974407441744274437444744574467447744874497450745174527453745474557456745774587459746074617462746374647465746674677468746974707471747274737474747574767477747874797480748174827483748474857486748774887489749074917492749374947495749674977498749975007501750275037504750575067507750875097510751175127513751475157516751775187519752075217522752375247525752675277528752975307531753275337534753575367537753875397540754175427543754475457546754775487549755075517552755375547555755675577558755975607561756275637564756575667567756875697570757175727573757475757576757775787579758075817582758375847585758675877588758975907591759275937594759575967597759875997600760176027603760476057606760776087609761076117612761376147615761676177618761976207621762276237624762576267627762876297630763176327633763476357636763776387639764076417642764376447645764676477648764976507651765276537654765576567657765876597660766176627663766476657666766776687669767076717672767376747675767676777678767976807681768276837684768576867687768876897690769176927693769476957696769776987699770077017702770377047705770677077708770977107711771277137714771577167717771877197720772177227723772477257726772777287729773077317732773377347735773677377738773977407741774277437744774577467747774877497750775177527753775477557756775777587759776077617762776377647765776677677768776977707771777277737774777577767777777877797780778177827783778477857786778777887789779077917792779377947795779677977798779978007801780278037804780578067807780878097810781178127813781478157816781778187819782078217822782378247825782678277828782978307831783278337834783578367837783878397840784178427843784478457846784778487849785078517852785378547855785678577858785978607861786278637864786578667867786878697870787178727873787478757876787778787879788078817882788378847885788678877888788978907891789278937894789578967897789878997900790179027903790479057906790779087909791079117912791379147915791679177918791979207921792279237924792579267927792879297930793179327933793479357936793779387939794079417942794379447945794679477948794979507951795279537954795579567957795879597960796179627963796479657966796779687969797079717972797379747975797679777978797979807981798279837984798579867987798879897990799179927993799479957996799779987999800080018002800380048005800680078008800980108011801280138014801580168017801880198020802180228023802480258026802780288029803080318032803380348035803680378038803980408041804280438044804580468047804880498050805180528053805480558056805780588059806080618062806380648065806680678068806980708071807280738074807580768077807880798080808180828083808480858086808780888089809080918092809380948095809680978098809981008101810281038104810581068107810881098110811181128113811481158116811781188119812081218122812381248125812681278128812981308131813281338134813581368137813881398140814181428143814481458146814781488149815081518152815381548155815681578158815981608161816281638164816581668167816881698170817181728173817481758176817781788179818081818182818381848185818681878188818981908191819281938194819581968197819881998200820182028203820482058206820782088209821082118212821382148215821682178218821982208221822282238224822582268227822882298230823182328233823482358236823782388239824082418242824382448245824682478248824982508251825282538254825582568257825882598260826182628263826482658266826782688269827082718272827382748275827682778278827982808281828282838284828582868287828882898290829182928293829482958296829782988299830083018302830383048305830683078308830983108311831283138314831583168317831883198320832183228323832483258326832783288329833083318332833383348335833683378338833983408341834283438344834583468347834883498350835183528353835483558356835783588359836083618362836383648365836683678368836983708371837283738374837583768377837883798380838183828383838483858386838783888389839083918392839383948395839683978398839984008401840284038404840584068407840884098410841184128413841484158416841784188419842084218422842384248425842684278428842984308431843284338434843584368437843884398440844184428443844484458446844784488449845084518452845384548455845684578458845984608461846284638464846584668467846884698470847184728473847484758476847784788479848084818482848384848485848684878488848984908491849284938494849584968497849884998500850185028503850485058506850785088509851085118512851385148515851685178518851985208521852285238524852585268527852885298530853185328533853485358536853785388539854085418542854385448545854685478548854985508551855285538554855585568557855885598560856185628563856485658566856785688569857085718572857385748575857685778578857985808581858285838584858585868587858885898590859185928593859485958596859785988599860086018602860386048605860686078608860986108611861286138614861586168617861886198620862186228623862486258626862786288629863086318632863386348635863686378638863986408641864286438644864586468647864886498650865186528653865486558656865786588659866086618662866386648665866686678668866986708671867286738674867586768677867886798680868186828683868486858686868786888689869086918692869386948695869686978698869987008701870287038704870587068707870887098710871187128713871487158716871787188719872087218722872387248725872687278728872987308731873287338734873587368737873887398740874187428743874487458746874787488749875087518752875387548755875687578758875987608761876287638764876587668767876887698770877187728773877487758776877787788779878087818782878387848785878687878788878987908791879287938794879587968797879887998800880188028803880488058806880788088809881088118812881388148815881688178818881988208821882288238824882588268827882888298830883188328833883488358836883788388839884088418842884388448845884688478848884988508851885288538854885588568857885888598860886188628863886488658866886788688869887088718872887388748875887688778878887988808881888288838884888588868887888888898890889188928893889488958896889788988899890089018902890389048905890689078908890989108911891289138914891589168917891889198920892189228923892489258926892789288929893089318932893389348935893689378938893989408941894289438944894589468947894889498950895189528953895489558956895789588959896089618962896389648965896689678968896989708971897289738974897589768977897889798980898189828983898489858986898789888989899089918992899389948995899689978998899990009001900290039004900590069007900890099010901190129013901490159016901790189019902090219022902390249025902690279028902990309031903290339034903590369037903890399040904190429043904490459046904790489049905090519052905390549055905690579058905990609061906290639064906590669067906890699070907190729073907490759076907790789079908090819082908390849085908690879088908990909091909290939094909590969097909890999100910191029103910491059106910791089109911091119112911391149115911691179118911991209121912291239124912591269127912891299130913191329133913491359136913791389139914091419142914391449145914691479148914991509151915291539154915591569157915891599160916191629163916491659166916791689169917091719172917391749175917691779178917991809181918291839184918591869187918891899190919191929193919491959196919791989199920092019202920392049205920692079208920992109211921292139214921592169217921892199220922192229223922492259226922792289229923092319232923392349235923692379238923992409241924292439244924592469247924892499250925192529253925492559256925792589259926092619262926392649265926692679268926992709271927292739274927592769277927892799280928192829283928492859286928792889289929092919292929392949295929692979298929993009301930293039304930593069307930893099310931193129313931493159316931793189319932093219322932393249325932693279328932993309331933293339334933593369337933893399340934193429343934493459346934793489349935093519352935393549355935693579358935993609361936293639364936593669367936893699370937193729373937493759376937793789379938093819382938393849385938693879388938993909391939293939394939593969397939893999400940194029403940494059406940794089409941094119412941394149415941694179418941994209421942294239424942594269427942894299430943194329433943494359436943794389439944094419442944394449445944694479448944994509451945294539454945594569457945894599460946194629463946494659466946794689469947094719472947394749475947694779478947994809481948294839484948594869487948894899490949194929493949494959496949794989499950095019502950395049505950695079508950995109511951295139514951595169517951895199520952195229523952495259526952795289529953095319532953395349535953695379538953995409541954295439544954595469547954895499550955195529553955495559556955795589559956095619562956395649565956695679568956995709571957295739574957595769577957895799580958195829583958495859586958795889589959095919592959395949595959695979598959996009601960296039604960596069607960896099610961196129613961496159616961796189619962096219622962396249625962696279628962996309631963296339634963596369637963896399640964196429643964496459646964796489649965096519652965396549655965696579658965996609661966296639664966596669667966896699670967196729673967496759676967796789679968096819682968396849685968696879688968996909691969296939694969596969697969896999700970197029703970497059706970797089709971097119712971397149715971697179718971997209721972297239724972597269727972897299730973197329733973497359736973797389739974097419742974397449745974697479748974997509751975297539754975597569757975897599760976197629763976497659766976797689769977097719772977397749775977697779778977997809781978297839784978597869787978897899790979197929793979497959796979797989799980098019802980398049805980698079808980998109811981298139814981598169817981898199820982198229823982498259826982798289829983098319832983398349835983698379838983998409841984298439844984598469847984898499850985198529853985498559856985798589859986098619862986398649865986698679868986998709871987298739874987598769877987898799880988198829883988498859886988798889889989098919892989398949895989698979898989999009901990299039904990599069907990899099910991199129913991499159916991799189919992099219922992399249925992699279928992999309931993299339934993599369937993899399940994199429943994499459946994799489949995099519952995399549955995699579958995999609961996299639964996599669967996899699970997199729973997499759976997799789979998099819982998399849985998699879988998999909991999299939994999599969997999899991000010001100021000310004100051000610007100081000910010100111001210013100141001510016100171001810019100201002110022100231002410025100261002710028100291003010031100321003310034100351003610037100381003910040100411004210043100441004510046100471004810049100501005110052100531005410055100561005710058100591006010061100621006310064100651006610067100681006910070100711007210073100741007510076100771007810079100801008110082100831008410085100861008710088100891009010091100921009310094100951009610097100981009910100101011010210103101041010510106101071010810109101101011110112101131011410115101161011710118101191012010121101221012310124101251012610127101281012910130101311013210133101341013510136101371013810139101401014110142101431014410145101461014710148101491015010151101521015310154101551015610157101581015910160101611016210163101641016510166101671016810169101701017110172101731017410175101761017710178101791018010181101821018310184101851018610187101881018910190101911019210193101941019510196101971019810199102001020110202102031020410205102061020710208102091021010211102121021310214102151021610217102181021910220102211022210223102241022510226102271022810229102301023110232102331023410235102361023710238102391024010241102421024310244102451024610247102481024910250102511025210253102541025510256102571025810259102601026110262102631026410265102661026710268102691027010271102721027310274102751027610277102781027910280102811028210283102841028510286102871028810289102901029110292102931029410295102961029710298102991030010301103021030310304103051030610307103081030910310103111031210313103141031510316103171031810319103201032110322103231032410325103261032710328103291033010331103321033310334103351033610337103381033910340103411034210343103441034510346103471034810349103501035110352103531035410355103561035710358103591036010361103621036310364103651036610367103681036910370103711037210373103741037510376103771037810379103801038110382103831038410385103861038710388103891039010391103921039310394103951039610397103981039910400104011040210403104041040510406104071040810409104101041110412104131041410415104161041710418104191042010421104221042310424104251042610427104281042910430104311043210433104341043510436104371043810439104401044110442104431044410445104461044710448104491045010451104521045310454104551045610457104581045910460104611046210463104641046510466104671046810469104701047110472104731047410475104761047710478104791048010481104821048310484104851048610487104881048910490104911049210493104941049510496104971049810499105001050110502105031050410505105061050710508105091051010511105121051310514105151051610517105181051910520105211052210523105241052510526105271052810529105301053110532105331053410535105361053710538105391054010541105421054310544105451054610547105481054910550105511055210553105541055510556105571055810559105601056110562105631056410565105661056710568105691057010571105721057310574105751057610577105781057910580105811058210583105841058510586105871058810589105901059110592105931059410595105961059710598105991060010601106021060310604106051060610607106081060910610106111061210613106141061510616106171061810619106201062110622106231062410625106261062710628106291063010631106321063310634106351063610637106381063910640106411064210643106441064510646106471064810649106501065110652106531065410655106561065710658106591066010661106621066310664106651066610667106681066910670106711067210673106741067510676106771067810679106801068110682106831068410685106861068710688106891069010691106921069310694106951069610697106981069910700107011070210703107041070510706107071070810709107101071110712107131071410715107161071710718107191072010721107221072310724107251072610727107281072910730107311073210733107341073510736107371073810739107401074110742107431074410745107461074710748107491075010751107521075310754107551075610757107581075910760107611076210763107641076510766107671076810769107701077110772107731077410775107761077710778107791078010781107821078310784107851078610787107881078910790107911079210793107941079510796107971079810799108001080110802108031080410805108061080710808108091081010811108121081310814108151081610817108181081910820108211082210823108241082510826108271082810829108301083110832108331083410835108361083710838108391084010841108421084310844108451084610847108481084910850108511085210853108541085510856108571085810859108601086110862108631086410865108661086710868108691087010871108721087310874108751087610877108781087910880108811088210883108841088510886108871088810889108901089110892108931089410895108961089710898108991090010901109021090310904109051090610907109081090910910109111091210913109141091510916109171091810919109201092110922109231092410925109261092710928109291093010931109321093310934109351093610937109381093910940109411094210943109441094510946109471094810949109501095110952109531095410955109561095710958109591096010961109621096310964109651096610967109681096910970109711097210973109741097510976109771097810979109801098110982109831098410985109861098710988109891099010991109921099310994109951099610997109981099911000110011100211003110041100511006110071100811009110101101111012110131101411015110161101711018110191102011021110221102311024110251102611027110281102911030110311103211033110341103511036110371103811039110401104111042110431104411045110461104711048110491105011051110521105311054110551105611057110581105911060110611106211063110641106511066
  1. /******/ (() => { // webpackBootstrap
  2. /******/ var __webpack_modules__ = ({
  3. /***/ "./node_modules/@popperjs/core/lib/createPopper.js":
  4. /*!*********************************************************!*\
  5. !*** ./node_modules/@popperjs/core/lib/createPopper.js ***!
  6. \*********************************************************/
  7. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  8. "use strict";
  9. __webpack_require__.r(__webpack_exports__);
  10. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  11. /* harmony export */ "createPopper": () => (/* binding */ createPopper),
  12. /* harmony export */ "detectOverflow": () => (/* reexport safe */ _utils_detectOverflow_js__WEBPACK_IMPORTED_MODULE_13__["default"]),
  13. /* harmony export */ "popperGenerator": () => (/* binding */ popperGenerator)
  14. /* harmony export */ });
  15. /* harmony import */ var _dom_utils_getCompositeRect_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./dom-utils/getCompositeRect.js */ "./node_modules/@popperjs/core/lib/dom-utils/getCompositeRect.js");
  16. /* harmony import */ var _dom_utils_getLayoutRect_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./dom-utils/getLayoutRect.js */ "./node_modules/@popperjs/core/lib/dom-utils/getLayoutRect.js");
  17. /* harmony import */ var _dom_utils_listScrollParents_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./dom-utils/listScrollParents.js */ "./node_modules/@popperjs/core/lib/dom-utils/listScrollParents.js");
  18. /* harmony import */ var _dom_utils_getOffsetParent_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./dom-utils/getOffsetParent.js */ "./node_modules/@popperjs/core/lib/dom-utils/getOffsetParent.js");
  19. /* harmony import */ var _dom_utils_getComputedStyle_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./dom-utils/getComputedStyle.js */ "./node_modules/@popperjs/core/lib/dom-utils/getComputedStyle.js");
  20. /* harmony import */ var _utils_orderModifiers_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./utils/orderModifiers.js */ "./node_modules/@popperjs/core/lib/utils/orderModifiers.js");
  21. /* harmony import */ var _utils_debounce_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./utils/debounce.js */ "./node_modules/@popperjs/core/lib/utils/debounce.js");
  22. /* harmony import */ var _utils_validateModifiers_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./utils/validateModifiers.js */ "./node_modules/@popperjs/core/lib/utils/validateModifiers.js");
  23. /* harmony import */ var _utils_uniqueBy_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./utils/uniqueBy.js */ "./node_modules/@popperjs/core/lib/utils/uniqueBy.js");
  24. /* harmony import */ var _utils_getBasePlacement_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./utils/getBasePlacement.js */ "./node_modules/@popperjs/core/lib/utils/getBasePlacement.js");
  25. /* harmony import */ var _utils_mergeByName_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./utils/mergeByName.js */ "./node_modules/@popperjs/core/lib/utils/mergeByName.js");
  26. /* harmony import */ var _utils_detectOverflow_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ./utils/detectOverflow.js */ "./node_modules/@popperjs/core/lib/utils/detectOverflow.js");
  27. /* harmony import */ var _dom_utils_instanceOf_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./dom-utils/instanceOf.js */ "./node_modules/@popperjs/core/lib/dom-utils/instanceOf.js");
  28. /* harmony import */ var _enums_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./enums.js */ "./node_modules/@popperjs/core/lib/enums.js");
  29. var INVALID_ELEMENT_ERROR = 'Popper: Invalid reference or popper argument provided. They must be either a DOM element or virtual element.';
  30. var INFINITE_LOOP_ERROR = 'Popper: An infinite loop in the modifiers cycle has been detected! The cycle has been interrupted to prevent a browser crash.';
  31. var DEFAULT_OPTIONS = {
  32. placement: 'bottom',
  33. modifiers: [],
  34. strategy: 'absolute'
  35. };
  36. function areValidElements() {
  37. for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
  38. args[_key] = arguments[_key];
  39. }
  40. return !args.some(function (element) {
  41. return !(element && typeof element.getBoundingClientRect === 'function');
  42. });
  43. }
  44. function popperGenerator(generatorOptions) {
  45. if (generatorOptions === void 0) {
  46. generatorOptions = {};
  47. }
  48. var _generatorOptions = generatorOptions,
  49. _generatorOptions$def = _generatorOptions.defaultModifiers,
  50. defaultModifiers = _generatorOptions$def === void 0 ? [] : _generatorOptions$def,
  51. _generatorOptions$def2 = _generatorOptions.defaultOptions,
  52. defaultOptions = _generatorOptions$def2 === void 0 ? DEFAULT_OPTIONS : _generatorOptions$def2;
  53. return function createPopper(reference, popper, options) {
  54. if (options === void 0) {
  55. options = defaultOptions;
  56. }
  57. var state = {
  58. placement: 'bottom',
  59. orderedModifiers: [],
  60. options: Object.assign({}, DEFAULT_OPTIONS, defaultOptions),
  61. modifiersData: {},
  62. elements: {
  63. reference: reference,
  64. popper: popper
  65. },
  66. attributes: {},
  67. styles: {}
  68. };
  69. var effectCleanupFns = [];
  70. var isDestroyed = false;
  71. var instance = {
  72. state: state,
  73. setOptions: function setOptions(setOptionsAction) {
  74. var options = typeof setOptionsAction === 'function' ? setOptionsAction(state.options) : setOptionsAction;
  75. cleanupModifierEffects();
  76. state.options = Object.assign({}, defaultOptions, state.options, options);
  77. state.scrollParents = {
  78. reference: (0,_dom_utils_instanceOf_js__WEBPACK_IMPORTED_MODULE_0__.isElement)(reference) ? (0,_dom_utils_listScrollParents_js__WEBPACK_IMPORTED_MODULE_1__["default"])(reference) : reference.contextElement ? (0,_dom_utils_listScrollParents_js__WEBPACK_IMPORTED_MODULE_1__["default"])(reference.contextElement) : [],
  79. popper: (0,_dom_utils_listScrollParents_js__WEBPACK_IMPORTED_MODULE_1__["default"])(popper)
  80. }; // Orders the modifiers based on their dependencies and `phase`
  81. // properties
  82. var orderedModifiers = (0,_utils_orderModifiers_js__WEBPACK_IMPORTED_MODULE_2__["default"])((0,_utils_mergeByName_js__WEBPACK_IMPORTED_MODULE_3__["default"])([].concat(defaultModifiers, state.options.modifiers))); // Strip out disabled modifiers
  83. state.orderedModifiers = orderedModifiers.filter(function (m) {
  84. return m.enabled;
  85. }); // Validate the provided modifiers so that the consumer will get warned
  86. // if one of the modifiers is invalid for any reason
  87. if (true) {
  88. var modifiers = (0,_utils_uniqueBy_js__WEBPACK_IMPORTED_MODULE_4__["default"])([].concat(orderedModifiers, state.options.modifiers), function (_ref) {
  89. var name = _ref.name;
  90. return name;
  91. });
  92. (0,_utils_validateModifiers_js__WEBPACK_IMPORTED_MODULE_5__["default"])(modifiers);
  93. if ((0,_utils_getBasePlacement_js__WEBPACK_IMPORTED_MODULE_6__["default"])(state.options.placement) === _enums_js__WEBPACK_IMPORTED_MODULE_7__.auto) {
  94. var flipModifier = state.orderedModifiers.find(function (_ref2) {
  95. var name = _ref2.name;
  96. return name === 'flip';
  97. });
  98. if (!flipModifier) {
  99. console.error(['Popper: "auto" placements require the "flip" modifier be', 'present and enabled to work.'].join(' '));
  100. }
  101. }
  102. var _getComputedStyle = (0,_dom_utils_getComputedStyle_js__WEBPACK_IMPORTED_MODULE_8__["default"])(popper),
  103. marginTop = _getComputedStyle.marginTop,
  104. marginRight = _getComputedStyle.marginRight,
  105. marginBottom = _getComputedStyle.marginBottom,
  106. marginLeft = _getComputedStyle.marginLeft; // We no longer take into account `margins` on the popper, and it can
  107. // cause bugs with positioning, so we'll warn the consumer
  108. if ([marginTop, marginRight, marginBottom, marginLeft].some(function (margin) {
  109. return parseFloat(margin);
  110. })) {
  111. console.warn(['Popper: CSS "margin" styles cannot be used to apply padding', 'between the popper and its reference element or boundary.', 'To replicate margin, use the `offset` modifier, as well as', 'the `padding` option in the `preventOverflow` and `flip`', 'modifiers.'].join(' '));
  112. }
  113. }
  114. runModifierEffects();
  115. return instance.update();
  116. },
  117. // Sync update – it will always be executed, even if not necessary. This
  118. // is useful for low frequency updates where sync behavior simplifies the
  119. // logic.
  120. // For high frequency updates (e.g. `resize` and `scroll` events), always
  121. // prefer the async Popper#update method
  122. forceUpdate: function forceUpdate() {
  123. if (isDestroyed) {
  124. return;
  125. }
  126. var _state$elements = state.elements,
  127. reference = _state$elements.reference,
  128. popper = _state$elements.popper; // Don't proceed if `reference` or `popper` are not valid elements
  129. // anymore
  130. if (!areValidElements(reference, popper)) {
  131. if (true) {
  132. console.error(INVALID_ELEMENT_ERROR);
  133. }
  134. return;
  135. } // Store the reference and popper rects to be read by modifiers
  136. state.rects = {
  137. reference: (0,_dom_utils_getCompositeRect_js__WEBPACK_IMPORTED_MODULE_9__["default"])(reference, (0,_dom_utils_getOffsetParent_js__WEBPACK_IMPORTED_MODULE_10__["default"])(popper), state.options.strategy === 'fixed'),
  138. popper: (0,_dom_utils_getLayoutRect_js__WEBPACK_IMPORTED_MODULE_11__["default"])(popper)
  139. }; // Modifiers have the ability to reset the current update cycle. The
  140. // most common use case for this is the `flip` modifier changing the
  141. // placement, which then needs to re-run all the modifiers, because the
  142. // logic was previously ran for the previous placement and is therefore
  143. // stale/incorrect
  144. state.reset = false;
  145. state.placement = state.options.placement; // On each update cycle, the `modifiersData` property for each modifier
  146. // is filled with the initial data specified by the modifier. This means
  147. // it doesn't persist and is fresh on each update.
  148. // To ensure persistent data, use `${name}#persistent`
  149. state.orderedModifiers.forEach(function (modifier) {
  150. return state.modifiersData[modifier.name] = Object.assign({}, modifier.data);
  151. });
  152. var __debug_loops__ = 0;
  153. for (var index = 0; index < state.orderedModifiers.length; index++) {
  154. if (true) {
  155. __debug_loops__ += 1;
  156. if (__debug_loops__ > 100) {
  157. console.error(INFINITE_LOOP_ERROR);
  158. break;
  159. }
  160. }
  161. if (state.reset === true) {
  162. state.reset = false;
  163. index = -1;
  164. continue;
  165. }
  166. var _state$orderedModifie = state.orderedModifiers[index],
  167. fn = _state$orderedModifie.fn,
  168. _state$orderedModifie2 = _state$orderedModifie.options,
  169. _options = _state$orderedModifie2 === void 0 ? {} : _state$orderedModifie2,
  170. name = _state$orderedModifie.name;
  171. if (typeof fn === 'function') {
  172. state = fn({
  173. state: state,
  174. options: _options,
  175. name: name,
  176. instance: instance
  177. }) || state;
  178. }
  179. }
  180. },
  181. // Async and optimistically optimized update – it will not be executed if
  182. // not necessary (debounced to run at most once-per-tick)
  183. update: (0,_utils_debounce_js__WEBPACK_IMPORTED_MODULE_12__["default"])(function () {
  184. return new Promise(function (resolve) {
  185. instance.forceUpdate();
  186. resolve(state);
  187. });
  188. }),
  189. destroy: function destroy() {
  190. cleanupModifierEffects();
  191. isDestroyed = true;
  192. }
  193. };
  194. if (!areValidElements(reference, popper)) {
  195. if (true) {
  196. console.error(INVALID_ELEMENT_ERROR);
  197. }
  198. return instance;
  199. }
  200. instance.setOptions(options).then(function (state) {
  201. if (!isDestroyed && options.onFirstUpdate) {
  202. options.onFirstUpdate(state);
  203. }
  204. }); // Modifiers have the ability to execute arbitrary code before the first
  205. // update cycle runs. They will be executed in the same order as the update
  206. // cycle. This is useful when a modifier adds some persistent data that
  207. // other modifiers need to use, but the modifier is run after the dependent
  208. // one.
  209. function runModifierEffects() {
  210. state.orderedModifiers.forEach(function (_ref3) {
  211. var name = _ref3.name,
  212. _ref3$options = _ref3.options,
  213. options = _ref3$options === void 0 ? {} : _ref3$options,
  214. effect = _ref3.effect;
  215. if (typeof effect === 'function') {
  216. var cleanupFn = effect({
  217. state: state,
  218. name: name,
  219. instance: instance,
  220. options: options
  221. });
  222. var noopFn = function noopFn() {};
  223. effectCleanupFns.push(cleanupFn || noopFn);
  224. }
  225. });
  226. }
  227. function cleanupModifierEffects() {
  228. effectCleanupFns.forEach(function (fn) {
  229. return fn();
  230. });
  231. effectCleanupFns = [];
  232. }
  233. return instance;
  234. };
  235. }
  236. var createPopper = /*#__PURE__*/popperGenerator(); // eslint-disable-next-line import/no-unused-modules
  237. /***/ }),
  238. /***/ "./node_modules/@popperjs/core/lib/dom-utils/contains.js":
  239. /*!***************************************************************!*\
  240. !*** ./node_modules/@popperjs/core/lib/dom-utils/contains.js ***!
  241. \***************************************************************/
  242. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  243. "use strict";
  244. __webpack_require__.r(__webpack_exports__);
  245. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  246. /* harmony export */ "default": () => (/* binding */ contains)
  247. /* harmony export */ });
  248. /* harmony import */ var _instanceOf_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./instanceOf.js */ "./node_modules/@popperjs/core/lib/dom-utils/instanceOf.js");
  249. function contains(parent, child) {
  250. var rootNode = child.getRootNode && child.getRootNode(); // First, attempt with faster native method
  251. if (parent.contains(child)) {
  252. return true;
  253. } // then fallback to custom implementation with Shadow DOM support
  254. else if (rootNode && (0,_instanceOf_js__WEBPACK_IMPORTED_MODULE_0__.isShadowRoot)(rootNode)) {
  255. var next = child;
  256. do {
  257. if (next && parent.isSameNode(next)) {
  258. return true;
  259. } // $FlowFixMe[prop-missing]: need a better way to handle this...
  260. next = next.parentNode || next.host;
  261. } while (next);
  262. } // Give up, the result is false
  263. return false;
  264. }
  265. /***/ }),
  266. /***/ "./node_modules/@popperjs/core/lib/dom-utils/getBoundingClientRect.js":
  267. /*!****************************************************************************!*\
  268. !*** ./node_modules/@popperjs/core/lib/dom-utils/getBoundingClientRect.js ***!
  269. \****************************************************************************/
  270. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  271. "use strict";
  272. __webpack_require__.r(__webpack_exports__);
  273. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  274. /* harmony export */ "default": () => (/* binding */ getBoundingClientRect)
  275. /* harmony export */ });
  276. /* harmony import */ var _instanceOf_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./instanceOf.js */ "./node_modules/@popperjs/core/lib/dom-utils/instanceOf.js");
  277. /* harmony import */ var _utils_math_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils/math.js */ "./node_modules/@popperjs/core/lib/utils/math.js");
  278. /* harmony import */ var _getWindow_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./getWindow.js */ "./node_modules/@popperjs/core/lib/dom-utils/getWindow.js");
  279. /* harmony import */ var _isLayoutViewport_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./isLayoutViewport.js */ "./node_modules/@popperjs/core/lib/dom-utils/isLayoutViewport.js");
  280. function getBoundingClientRect(element, includeScale, isFixedStrategy) {
  281. if (includeScale === void 0) {
  282. includeScale = false;
  283. }
  284. if (isFixedStrategy === void 0) {
  285. isFixedStrategy = false;
  286. }
  287. var clientRect = element.getBoundingClientRect();
  288. var scaleX = 1;
  289. var scaleY = 1;
  290. if (includeScale && (0,_instanceOf_js__WEBPACK_IMPORTED_MODULE_0__.isHTMLElement)(element)) {
  291. scaleX = element.offsetWidth > 0 ? (0,_utils_math_js__WEBPACK_IMPORTED_MODULE_1__.round)(clientRect.width) / element.offsetWidth || 1 : 1;
  292. scaleY = element.offsetHeight > 0 ? (0,_utils_math_js__WEBPACK_IMPORTED_MODULE_1__.round)(clientRect.height) / element.offsetHeight || 1 : 1;
  293. }
  294. var _ref = (0,_instanceOf_js__WEBPACK_IMPORTED_MODULE_0__.isElement)(element) ? (0,_getWindow_js__WEBPACK_IMPORTED_MODULE_2__["default"])(element) : window,
  295. visualViewport = _ref.visualViewport;
  296. var addVisualOffsets = !(0,_isLayoutViewport_js__WEBPACK_IMPORTED_MODULE_3__["default"])() && isFixedStrategy;
  297. var x = (clientRect.left + (addVisualOffsets && visualViewport ? visualViewport.offsetLeft : 0)) / scaleX;
  298. var y = (clientRect.top + (addVisualOffsets && visualViewport ? visualViewport.offsetTop : 0)) / scaleY;
  299. var width = clientRect.width / scaleX;
  300. var height = clientRect.height / scaleY;
  301. return {
  302. width: width,
  303. height: height,
  304. top: y,
  305. right: x + width,
  306. bottom: y + height,
  307. left: x,
  308. x: x,
  309. y: y
  310. };
  311. }
  312. /***/ }),
  313. /***/ "./node_modules/@popperjs/core/lib/dom-utils/getClippingRect.js":
  314. /*!**********************************************************************!*\
  315. !*** ./node_modules/@popperjs/core/lib/dom-utils/getClippingRect.js ***!
  316. \**********************************************************************/
  317. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  318. "use strict";
  319. __webpack_require__.r(__webpack_exports__);
  320. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  321. /* harmony export */ "default": () => (/* binding */ getClippingRect)
  322. /* harmony export */ });
  323. /* harmony import */ var _enums_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../enums.js */ "./node_modules/@popperjs/core/lib/enums.js");
  324. /* harmony import */ var _getViewportRect_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./getViewportRect.js */ "./node_modules/@popperjs/core/lib/dom-utils/getViewportRect.js");
  325. /* harmony import */ var _getDocumentRect_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./getDocumentRect.js */ "./node_modules/@popperjs/core/lib/dom-utils/getDocumentRect.js");
  326. /* harmony import */ var _listScrollParents_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./listScrollParents.js */ "./node_modules/@popperjs/core/lib/dom-utils/listScrollParents.js");
  327. /* harmony import */ var _getOffsetParent_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./getOffsetParent.js */ "./node_modules/@popperjs/core/lib/dom-utils/getOffsetParent.js");
  328. /* harmony import */ var _getDocumentElement_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./getDocumentElement.js */ "./node_modules/@popperjs/core/lib/dom-utils/getDocumentElement.js");
  329. /* harmony import */ var _getComputedStyle_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./getComputedStyle.js */ "./node_modules/@popperjs/core/lib/dom-utils/getComputedStyle.js");
  330. /* harmony import */ var _instanceOf_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./instanceOf.js */ "./node_modules/@popperjs/core/lib/dom-utils/instanceOf.js");
  331. /* harmony import */ var _getBoundingClientRect_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getBoundingClientRect.js */ "./node_modules/@popperjs/core/lib/dom-utils/getBoundingClientRect.js");
  332. /* harmony import */ var _getParentNode_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./getParentNode.js */ "./node_modules/@popperjs/core/lib/dom-utils/getParentNode.js");
  333. /* harmony import */ var _contains_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./contains.js */ "./node_modules/@popperjs/core/lib/dom-utils/contains.js");
  334. /* harmony import */ var _getNodeName_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./getNodeName.js */ "./node_modules/@popperjs/core/lib/dom-utils/getNodeName.js");
  335. /* harmony import */ var _utils_rectToClientRect_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../utils/rectToClientRect.js */ "./node_modules/@popperjs/core/lib/utils/rectToClientRect.js");
  336. /* harmony import */ var _utils_math_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../utils/math.js */ "./node_modules/@popperjs/core/lib/utils/math.js");
  337. function getInnerBoundingClientRect(element, strategy) {
  338. var rect = (0,_getBoundingClientRect_js__WEBPACK_IMPORTED_MODULE_0__["default"])(element, false, strategy === 'fixed');
  339. rect.top = rect.top + element.clientTop;
  340. rect.left = rect.left + element.clientLeft;
  341. rect.bottom = rect.top + element.clientHeight;
  342. rect.right = rect.left + element.clientWidth;
  343. rect.width = element.clientWidth;
  344. rect.height = element.clientHeight;
  345. rect.x = rect.left;
  346. rect.y = rect.top;
  347. return rect;
  348. }
  349. function getClientRectFromMixedType(element, clippingParent, strategy) {
  350. return clippingParent === _enums_js__WEBPACK_IMPORTED_MODULE_1__.viewport ? (0,_utils_rectToClientRect_js__WEBPACK_IMPORTED_MODULE_2__["default"])((0,_getViewportRect_js__WEBPACK_IMPORTED_MODULE_3__["default"])(element, strategy)) : (0,_instanceOf_js__WEBPACK_IMPORTED_MODULE_4__.isElement)(clippingParent) ? getInnerBoundingClientRect(clippingParent, strategy) : (0,_utils_rectToClientRect_js__WEBPACK_IMPORTED_MODULE_2__["default"])((0,_getDocumentRect_js__WEBPACK_IMPORTED_MODULE_5__["default"])((0,_getDocumentElement_js__WEBPACK_IMPORTED_MODULE_6__["default"])(element)));
  351. } // A "clipping parent" is an overflowable container with the characteristic of
  352. // clipping (or hiding) overflowing elements with a position different from
  353. // `initial`
  354. function getClippingParents(element) {
  355. var clippingParents = (0,_listScrollParents_js__WEBPACK_IMPORTED_MODULE_7__["default"])((0,_getParentNode_js__WEBPACK_IMPORTED_MODULE_8__["default"])(element));
  356. var canEscapeClipping = ['absolute', 'fixed'].indexOf((0,_getComputedStyle_js__WEBPACK_IMPORTED_MODULE_9__["default"])(element).position) >= 0;
  357. var clipperElement = canEscapeClipping && (0,_instanceOf_js__WEBPACK_IMPORTED_MODULE_4__.isHTMLElement)(element) ? (0,_getOffsetParent_js__WEBPACK_IMPORTED_MODULE_10__["default"])(element) : element;
  358. if (!(0,_instanceOf_js__WEBPACK_IMPORTED_MODULE_4__.isElement)(clipperElement)) {
  359. return [];
  360. } // $FlowFixMe[incompatible-return]: https://github.com/facebook/flow/issues/1414
  361. return clippingParents.filter(function (clippingParent) {
  362. return (0,_instanceOf_js__WEBPACK_IMPORTED_MODULE_4__.isElement)(clippingParent) && (0,_contains_js__WEBPACK_IMPORTED_MODULE_11__["default"])(clippingParent, clipperElement) && (0,_getNodeName_js__WEBPACK_IMPORTED_MODULE_12__["default"])(clippingParent) !== 'body';
  363. });
  364. } // Gets the maximum area that the element is visible in due to any number of
  365. // clipping parents
  366. function getClippingRect(element, boundary, rootBoundary, strategy) {
  367. var mainClippingParents = boundary === 'clippingParents' ? getClippingParents(element) : [].concat(boundary);
  368. var clippingParents = [].concat(mainClippingParents, [rootBoundary]);
  369. var firstClippingParent = clippingParents[0];
  370. var clippingRect = clippingParents.reduce(function (accRect, clippingParent) {
  371. var rect = getClientRectFromMixedType(element, clippingParent, strategy);
  372. accRect.top = (0,_utils_math_js__WEBPACK_IMPORTED_MODULE_13__.max)(rect.top, accRect.top);
  373. accRect.right = (0,_utils_math_js__WEBPACK_IMPORTED_MODULE_13__.min)(rect.right, accRect.right);
  374. accRect.bottom = (0,_utils_math_js__WEBPACK_IMPORTED_MODULE_13__.min)(rect.bottom, accRect.bottom);
  375. accRect.left = (0,_utils_math_js__WEBPACK_IMPORTED_MODULE_13__.max)(rect.left, accRect.left);
  376. return accRect;
  377. }, getClientRectFromMixedType(element, firstClippingParent, strategy));
  378. clippingRect.width = clippingRect.right - clippingRect.left;
  379. clippingRect.height = clippingRect.bottom - clippingRect.top;
  380. clippingRect.x = clippingRect.left;
  381. clippingRect.y = clippingRect.top;
  382. return clippingRect;
  383. }
  384. /***/ }),
  385. /***/ "./node_modules/@popperjs/core/lib/dom-utils/getCompositeRect.js":
  386. /*!***********************************************************************!*\
  387. !*** ./node_modules/@popperjs/core/lib/dom-utils/getCompositeRect.js ***!
  388. \***********************************************************************/
  389. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  390. "use strict";
  391. __webpack_require__.r(__webpack_exports__);
  392. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  393. /* harmony export */ "default": () => (/* binding */ getCompositeRect)
  394. /* harmony export */ });
  395. /* harmony import */ var _getBoundingClientRect_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./getBoundingClientRect.js */ "./node_modules/@popperjs/core/lib/dom-utils/getBoundingClientRect.js");
  396. /* harmony import */ var _getNodeScroll_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./getNodeScroll.js */ "./node_modules/@popperjs/core/lib/dom-utils/getNodeScroll.js");
  397. /* harmony import */ var _getNodeName_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./getNodeName.js */ "./node_modules/@popperjs/core/lib/dom-utils/getNodeName.js");
  398. /* harmony import */ var _instanceOf_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./instanceOf.js */ "./node_modules/@popperjs/core/lib/dom-utils/instanceOf.js");
  399. /* harmony import */ var _getWindowScrollBarX_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./getWindowScrollBarX.js */ "./node_modules/@popperjs/core/lib/dom-utils/getWindowScrollBarX.js");
  400. /* harmony import */ var _getDocumentElement_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./getDocumentElement.js */ "./node_modules/@popperjs/core/lib/dom-utils/getDocumentElement.js");
  401. /* harmony import */ var _isScrollParent_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./isScrollParent.js */ "./node_modules/@popperjs/core/lib/dom-utils/isScrollParent.js");
  402. /* harmony import */ var _utils_math_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils/math.js */ "./node_modules/@popperjs/core/lib/utils/math.js");
  403. function isElementScaled(element) {
  404. var rect = element.getBoundingClientRect();
  405. var scaleX = (0,_utils_math_js__WEBPACK_IMPORTED_MODULE_0__.round)(rect.width) / element.offsetWidth || 1;
  406. var scaleY = (0,_utils_math_js__WEBPACK_IMPORTED_MODULE_0__.round)(rect.height) / element.offsetHeight || 1;
  407. return scaleX !== 1 || scaleY !== 1;
  408. } // Returns the composite rect of an element relative to its offsetParent.
  409. // Composite means it takes into account transforms as well as layout.
  410. function getCompositeRect(elementOrVirtualElement, offsetParent, isFixed) {
  411. if (isFixed === void 0) {
  412. isFixed = false;
  413. }
  414. var isOffsetParentAnElement = (0,_instanceOf_js__WEBPACK_IMPORTED_MODULE_1__.isHTMLElement)(offsetParent);
  415. var offsetParentIsScaled = (0,_instanceOf_js__WEBPACK_IMPORTED_MODULE_1__.isHTMLElement)(offsetParent) && isElementScaled(offsetParent);
  416. var documentElement = (0,_getDocumentElement_js__WEBPACK_IMPORTED_MODULE_2__["default"])(offsetParent);
  417. var rect = (0,_getBoundingClientRect_js__WEBPACK_IMPORTED_MODULE_3__["default"])(elementOrVirtualElement, offsetParentIsScaled, isFixed);
  418. var scroll = {
  419. scrollLeft: 0,
  420. scrollTop: 0
  421. };
  422. var offsets = {
  423. x: 0,
  424. y: 0
  425. };
  426. if (isOffsetParentAnElement || !isOffsetParentAnElement && !isFixed) {
  427. if ((0,_getNodeName_js__WEBPACK_IMPORTED_MODULE_4__["default"])(offsetParent) !== 'body' || // https://github.com/popperjs/popper-core/issues/1078
  428. (0,_isScrollParent_js__WEBPACK_IMPORTED_MODULE_5__["default"])(documentElement)) {
  429. scroll = (0,_getNodeScroll_js__WEBPACK_IMPORTED_MODULE_6__["default"])(offsetParent);
  430. }
  431. if ((0,_instanceOf_js__WEBPACK_IMPORTED_MODULE_1__.isHTMLElement)(offsetParent)) {
  432. offsets = (0,_getBoundingClientRect_js__WEBPACK_IMPORTED_MODULE_3__["default"])(offsetParent, true);
  433. offsets.x += offsetParent.clientLeft;
  434. offsets.y += offsetParent.clientTop;
  435. } else if (documentElement) {
  436. offsets.x = (0,_getWindowScrollBarX_js__WEBPACK_IMPORTED_MODULE_7__["default"])(documentElement);
  437. }
  438. }
  439. return {
  440. x: rect.left + scroll.scrollLeft - offsets.x,
  441. y: rect.top + scroll.scrollTop - offsets.y,
  442. width: rect.width,
  443. height: rect.height
  444. };
  445. }
  446. /***/ }),
  447. /***/ "./node_modules/@popperjs/core/lib/dom-utils/getComputedStyle.js":
  448. /*!***********************************************************************!*\
  449. !*** ./node_modules/@popperjs/core/lib/dom-utils/getComputedStyle.js ***!
  450. \***********************************************************************/
  451. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  452. "use strict";
  453. __webpack_require__.r(__webpack_exports__);
  454. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  455. /* harmony export */ "default": () => (/* binding */ getComputedStyle)
  456. /* harmony export */ });
  457. /* harmony import */ var _getWindow_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getWindow.js */ "./node_modules/@popperjs/core/lib/dom-utils/getWindow.js");
  458. function getComputedStyle(element) {
  459. return (0,_getWindow_js__WEBPACK_IMPORTED_MODULE_0__["default"])(element).getComputedStyle(element);
  460. }
  461. /***/ }),
  462. /***/ "./node_modules/@popperjs/core/lib/dom-utils/getDocumentElement.js":
  463. /*!*************************************************************************!*\
  464. !*** ./node_modules/@popperjs/core/lib/dom-utils/getDocumentElement.js ***!
  465. \*************************************************************************/
  466. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  467. "use strict";
  468. __webpack_require__.r(__webpack_exports__);
  469. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  470. /* harmony export */ "default": () => (/* binding */ getDocumentElement)
  471. /* harmony export */ });
  472. /* harmony import */ var _instanceOf_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./instanceOf.js */ "./node_modules/@popperjs/core/lib/dom-utils/instanceOf.js");
  473. function getDocumentElement(element) {
  474. // $FlowFixMe[incompatible-return]: assume body is always available
  475. return (((0,_instanceOf_js__WEBPACK_IMPORTED_MODULE_0__.isElement)(element) ? element.ownerDocument : // $FlowFixMe[prop-missing]
  476. element.document) || window.document).documentElement;
  477. }
  478. /***/ }),
  479. /***/ "./node_modules/@popperjs/core/lib/dom-utils/getDocumentRect.js":
  480. /*!**********************************************************************!*\
  481. !*** ./node_modules/@popperjs/core/lib/dom-utils/getDocumentRect.js ***!
  482. \**********************************************************************/
  483. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  484. "use strict";
  485. __webpack_require__.r(__webpack_exports__);
  486. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  487. /* harmony export */ "default": () => (/* binding */ getDocumentRect)
  488. /* harmony export */ });
  489. /* harmony import */ var _getDocumentElement_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getDocumentElement.js */ "./node_modules/@popperjs/core/lib/dom-utils/getDocumentElement.js");
  490. /* harmony import */ var _getComputedStyle_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./getComputedStyle.js */ "./node_modules/@popperjs/core/lib/dom-utils/getComputedStyle.js");
  491. /* harmony import */ var _getWindowScrollBarX_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./getWindowScrollBarX.js */ "./node_modules/@popperjs/core/lib/dom-utils/getWindowScrollBarX.js");
  492. /* harmony import */ var _getWindowScroll_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./getWindowScroll.js */ "./node_modules/@popperjs/core/lib/dom-utils/getWindowScroll.js");
  493. /* harmony import */ var _utils_math_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../utils/math.js */ "./node_modules/@popperjs/core/lib/utils/math.js");
  494. // Gets the entire size of the scrollable document area, even extending outside
  495. // of the `<html>` and `<body>` rect bounds if horizontally scrollable
  496. function getDocumentRect(element) {
  497. var _element$ownerDocumen;
  498. var html = (0,_getDocumentElement_js__WEBPACK_IMPORTED_MODULE_0__["default"])(element);
  499. var winScroll = (0,_getWindowScroll_js__WEBPACK_IMPORTED_MODULE_1__["default"])(element);
  500. var body = (_element$ownerDocumen = element.ownerDocument) == null ? void 0 : _element$ownerDocumen.body;
  501. var width = (0,_utils_math_js__WEBPACK_IMPORTED_MODULE_2__.max)(html.scrollWidth, html.clientWidth, body ? body.scrollWidth : 0, body ? body.clientWidth : 0);
  502. var height = (0,_utils_math_js__WEBPACK_IMPORTED_MODULE_2__.max)(html.scrollHeight, html.clientHeight, body ? body.scrollHeight : 0, body ? body.clientHeight : 0);
  503. var x = -winScroll.scrollLeft + (0,_getWindowScrollBarX_js__WEBPACK_IMPORTED_MODULE_3__["default"])(element);
  504. var y = -winScroll.scrollTop;
  505. if ((0,_getComputedStyle_js__WEBPACK_IMPORTED_MODULE_4__["default"])(body || html).direction === 'rtl') {
  506. x += (0,_utils_math_js__WEBPACK_IMPORTED_MODULE_2__.max)(html.clientWidth, body ? body.clientWidth : 0) - width;
  507. }
  508. return {
  509. width: width,
  510. height: height,
  511. x: x,
  512. y: y
  513. };
  514. }
  515. /***/ }),
  516. /***/ "./node_modules/@popperjs/core/lib/dom-utils/getHTMLElementScroll.js":
  517. /*!***************************************************************************!*\
  518. !*** ./node_modules/@popperjs/core/lib/dom-utils/getHTMLElementScroll.js ***!
  519. \***************************************************************************/
  520. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  521. "use strict";
  522. __webpack_require__.r(__webpack_exports__);
  523. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  524. /* harmony export */ "default": () => (/* binding */ getHTMLElementScroll)
  525. /* harmony export */ });
  526. function getHTMLElementScroll(element) {
  527. return {
  528. scrollLeft: element.scrollLeft,
  529. scrollTop: element.scrollTop
  530. };
  531. }
  532. /***/ }),
  533. /***/ "./node_modules/@popperjs/core/lib/dom-utils/getLayoutRect.js":
  534. /*!********************************************************************!*\
  535. !*** ./node_modules/@popperjs/core/lib/dom-utils/getLayoutRect.js ***!
  536. \********************************************************************/
  537. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  538. "use strict";
  539. __webpack_require__.r(__webpack_exports__);
  540. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  541. /* harmony export */ "default": () => (/* binding */ getLayoutRect)
  542. /* harmony export */ });
  543. /* harmony import */ var _getBoundingClientRect_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getBoundingClientRect.js */ "./node_modules/@popperjs/core/lib/dom-utils/getBoundingClientRect.js");
  544. // Returns the layout rect of an element relative to its offsetParent. Layout
  545. // means it doesn't take into account transforms.
  546. function getLayoutRect(element) {
  547. var clientRect = (0,_getBoundingClientRect_js__WEBPACK_IMPORTED_MODULE_0__["default"])(element); // Use the clientRect sizes if it's not been transformed.
  548. // Fixes https://github.com/popperjs/popper-core/issues/1223
  549. var width = element.offsetWidth;
  550. var height = element.offsetHeight;
  551. if (Math.abs(clientRect.width - width) <= 1) {
  552. width = clientRect.width;
  553. }
  554. if (Math.abs(clientRect.height - height) <= 1) {
  555. height = clientRect.height;
  556. }
  557. return {
  558. x: element.offsetLeft,
  559. y: element.offsetTop,
  560. width: width,
  561. height: height
  562. };
  563. }
  564. /***/ }),
  565. /***/ "./node_modules/@popperjs/core/lib/dom-utils/getNodeName.js":
  566. /*!******************************************************************!*\
  567. !*** ./node_modules/@popperjs/core/lib/dom-utils/getNodeName.js ***!
  568. \******************************************************************/
  569. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  570. "use strict";
  571. __webpack_require__.r(__webpack_exports__);
  572. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  573. /* harmony export */ "default": () => (/* binding */ getNodeName)
  574. /* harmony export */ });
  575. function getNodeName(element) {
  576. return element ? (element.nodeName || '').toLowerCase() : null;
  577. }
  578. /***/ }),
  579. /***/ "./node_modules/@popperjs/core/lib/dom-utils/getNodeScroll.js":
  580. /*!********************************************************************!*\
  581. !*** ./node_modules/@popperjs/core/lib/dom-utils/getNodeScroll.js ***!
  582. \********************************************************************/
  583. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  584. "use strict";
  585. __webpack_require__.r(__webpack_exports__);
  586. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  587. /* harmony export */ "default": () => (/* binding */ getNodeScroll)
  588. /* harmony export */ });
  589. /* harmony import */ var _getWindowScroll_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./getWindowScroll.js */ "./node_modules/@popperjs/core/lib/dom-utils/getWindowScroll.js");
  590. /* harmony import */ var _getWindow_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getWindow.js */ "./node_modules/@popperjs/core/lib/dom-utils/getWindow.js");
  591. /* harmony import */ var _instanceOf_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./instanceOf.js */ "./node_modules/@popperjs/core/lib/dom-utils/instanceOf.js");
  592. /* harmony import */ var _getHTMLElementScroll_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./getHTMLElementScroll.js */ "./node_modules/@popperjs/core/lib/dom-utils/getHTMLElementScroll.js");
  593. function getNodeScroll(node) {
  594. if (node === (0,_getWindow_js__WEBPACK_IMPORTED_MODULE_0__["default"])(node) || !(0,_instanceOf_js__WEBPACK_IMPORTED_MODULE_1__.isHTMLElement)(node)) {
  595. return (0,_getWindowScroll_js__WEBPACK_IMPORTED_MODULE_2__["default"])(node);
  596. } else {
  597. return (0,_getHTMLElementScroll_js__WEBPACK_IMPORTED_MODULE_3__["default"])(node);
  598. }
  599. }
  600. /***/ }),
  601. /***/ "./node_modules/@popperjs/core/lib/dom-utils/getOffsetParent.js":
  602. /*!**********************************************************************!*\
  603. !*** ./node_modules/@popperjs/core/lib/dom-utils/getOffsetParent.js ***!
  604. \**********************************************************************/
  605. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  606. "use strict";
  607. __webpack_require__.r(__webpack_exports__);
  608. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  609. /* harmony export */ "default": () => (/* binding */ getOffsetParent)
  610. /* harmony export */ });
  611. /* harmony import */ var _getWindow_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./getWindow.js */ "./node_modules/@popperjs/core/lib/dom-utils/getWindow.js");
  612. /* harmony import */ var _getNodeName_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./getNodeName.js */ "./node_modules/@popperjs/core/lib/dom-utils/getNodeName.js");
  613. /* harmony import */ var _getComputedStyle_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./getComputedStyle.js */ "./node_modules/@popperjs/core/lib/dom-utils/getComputedStyle.js");
  614. /* harmony import */ var _instanceOf_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./instanceOf.js */ "./node_modules/@popperjs/core/lib/dom-utils/instanceOf.js");
  615. /* harmony import */ var _isTableElement_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./isTableElement.js */ "./node_modules/@popperjs/core/lib/dom-utils/isTableElement.js");
  616. /* harmony import */ var _getParentNode_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./getParentNode.js */ "./node_modules/@popperjs/core/lib/dom-utils/getParentNode.js");
  617. /* harmony import */ var _utils_userAgent_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../utils/userAgent.js */ "./node_modules/@popperjs/core/lib/utils/userAgent.js");
  618. function getTrueOffsetParent(element) {
  619. if (!(0,_instanceOf_js__WEBPACK_IMPORTED_MODULE_0__.isHTMLElement)(element) || // https://github.com/popperjs/popper-core/issues/837
  620. (0,_getComputedStyle_js__WEBPACK_IMPORTED_MODULE_1__["default"])(element).position === 'fixed') {
  621. return null;
  622. }
  623. return element.offsetParent;
  624. } // `.offsetParent` reports `null` for fixed elements, while absolute elements
  625. // return the containing block
  626. function getContainingBlock(element) {
  627. var isFirefox = /firefox/i.test((0,_utils_userAgent_js__WEBPACK_IMPORTED_MODULE_2__["default"])());
  628. var isIE = /Trident/i.test((0,_utils_userAgent_js__WEBPACK_IMPORTED_MODULE_2__["default"])());
  629. if (isIE && (0,_instanceOf_js__WEBPACK_IMPORTED_MODULE_0__.isHTMLElement)(element)) {
  630. // In IE 9, 10 and 11 fixed elements containing block is always established by the viewport
  631. var elementCss = (0,_getComputedStyle_js__WEBPACK_IMPORTED_MODULE_1__["default"])(element);
  632. if (elementCss.position === 'fixed') {
  633. return null;
  634. }
  635. }
  636. var currentNode = (0,_getParentNode_js__WEBPACK_IMPORTED_MODULE_3__["default"])(element);
  637. if ((0,_instanceOf_js__WEBPACK_IMPORTED_MODULE_0__.isShadowRoot)(currentNode)) {
  638. currentNode = currentNode.host;
  639. }
  640. while ((0,_instanceOf_js__WEBPACK_IMPORTED_MODULE_0__.isHTMLElement)(currentNode) && ['html', 'body'].indexOf((0,_getNodeName_js__WEBPACK_IMPORTED_MODULE_4__["default"])(currentNode)) < 0) {
  641. var css = (0,_getComputedStyle_js__WEBPACK_IMPORTED_MODULE_1__["default"])(currentNode); // This is non-exhaustive but covers the most common CSS properties that
  642. // create a containing block.
  643. // https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block
  644. if (css.transform !== 'none' || css.perspective !== 'none' || css.contain === 'paint' || ['transform', 'perspective'].indexOf(css.willChange) !== -1 || isFirefox && css.willChange === 'filter' || isFirefox && css.filter && css.filter !== 'none') {
  645. return currentNode;
  646. } else {
  647. currentNode = currentNode.parentNode;
  648. }
  649. }
  650. return null;
  651. } // Gets the closest ancestor positioned element. Handles some edge cases,
  652. // such as table ancestors and cross browser bugs.
  653. function getOffsetParent(element) {
  654. var window = (0,_getWindow_js__WEBPACK_IMPORTED_MODULE_5__["default"])(element);
  655. var offsetParent = getTrueOffsetParent(element);
  656. while (offsetParent && (0,_isTableElement_js__WEBPACK_IMPORTED_MODULE_6__["default"])(offsetParent) && (0,_getComputedStyle_js__WEBPACK_IMPORTED_MODULE_1__["default"])(offsetParent).position === 'static') {
  657. offsetParent = getTrueOffsetParent(offsetParent);
  658. }
  659. if (offsetParent && ((0,_getNodeName_js__WEBPACK_IMPORTED_MODULE_4__["default"])(offsetParent) === 'html' || (0,_getNodeName_js__WEBPACK_IMPORTED_MODULE_4__["default"])(offsetParent) === 'body' && (0,_getComputedStyle_js__WEBPACK_IMPORTED_MODULE_1__["default"])(offsetParent).position === 'static')) {
  660. return window;
  661. }
  662. return offsetParent || getContainingBlock(element) || window;
  663. }
  664. /***/ }),
  665. /***/ "./node_modules/@popperjs/core/lib/dom-utils/getParentNode.js":
  666. /*!********************************************************************!*\
  667. !*** ./node_modules/@popperjs/core/lib/dom-utils/getParentNode.js ***!
  668. \********************************************************************/
  669. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  670. "use strict";
  671. __webpack_require__.r(__webpack_exports__);
  672. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  673. /* harmony export */ "default": () => (/* binding */ getParentNode)
  674. /* harmony export */ });
  675. /* harmony import */ var _getNodeName_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getNodeName.js */ "./node_modules/@popperjs/core/lib/dom-utils/getNodeName.js");
  676. /* harmony import */ var _getDocumentElement_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./getDocumentElement.js */ "./node_modules/@popperjs/core/lib/dom-utils/getDocumentElement.js");
  677. /* harmony import */ var _instanceOf_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./instanceOf.js */ "./node_modules/@popperjs/core/lib/dom-utils/instanceOf.js");
  678. function getParentNode(element) {
  679. if ((0,_getNodeName_js__WEBPACK_IMPORTED_MODULE_0__["default"])(element) === 'html') {
  680. return element;
  681. }
  682. return (// this is a quicker (but less type safe) way to save quite some bytes from the bundle
  683. // $FlowFixMe[incompatible-return]
  684. // $FlowFixMe[prop-missing]
  685. element.assignedSlot || // step into the shadow DOM of the parent of a slotted node
  686. element.parentNode || ( // DOM Element detected
  687. (0,_instanceOf_js__WEBPACK_IMPORTED_MODULE_1__.isShadowRoot)(element) ? element.host : null) || // ShadowRoot detected
  688. // $FlowFixMe[incompatible-call]: HTMLElement is a Node
  689. (0,_getDocumentElement_js__WEBPACK_IMPORTED_MODULE_2__["default"])(element) // fallback
  690. );
  691. }
  692. /***/ }),
  693. /***/ "./node_modules/@popperjs/core/lib/dom-utils/getScrollParent.js":
  694. /*!**********************************************************************!*\
  695. !*** ./node_modules/@popperjs/core/lib/dom-utils/getScrollParent.js ***!
  696. \**********************************************************************/
  697. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  698. "use strict";
  699. __webpack_require__.r(__webpack_exports__);
  700. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  701. /* harmony export */ "default": () => (/* binding */ getScrollParent)
  702. /* harmony export */ });
  703. /* harmony import */ var _getParentNode_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./getParentNode.js */ "./node_modules/@popperjs/core/lib/dom-utils/getParentNode.js");
  704. /* harmony import */ var _isScrollParent_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./isScrollParent.js */ "./node_modules/@popperjs/core/lib/dom-utils/isScrollParent.js");
  705. /* harmony import */ var _getNodeName_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getNodeName.js */ "./node_modules/@popperjs/core/lib/dom-utils/getNodeName.js");
  706. /* harmony import */ var _instanceOf_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./instanceOf.js */ "./node_modules/@popperjs/core/lib/dom-utils/instanceOf.js");
  707. function getScrollParent(node) {
  708. if (['html', 'body', '#document'].indexOf((0,_getNodeName_js__WEBPACK_IMPORTED_MODULE_0__["default"])(node)) >= 0) {
  709. // $FlowFixMe[incompatible-return]: assume body is always available
  710. return node.ownerDocument.body;
  711. }
  712. if ((0,_instanceOf_js__WEBPACK_IMPORTED_MODULE_1__.isHTMLElement)(node) && (0,_isScrollParent_js__WEBPACK_IMPORTED_MODULE_2__["default"])(node)) {
  713. return node;
  714. }
  715. return getScrollParent((0,_getParentNode_js__WEBPACK_IMPORTED_MODULE_3__["default"])(node));
  716. }
  717. /***/ }),
  718. /***/ "./node_modules/@popperjs/core/lib/dom-utils/getViewportRect.js":
  719. /*!**********************************************************************!*\
  720. !*** ./node_modules/@popperjs/core/lib/dom-utils/getViewportRect.js ***!
  721. \**********************************************************************/
  722. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  723. "use strict";
  724. __webpack_require__.r(__webpack_exports__);
  725. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  726. /* harmony export */ "default": () => (/* binding */ getViewportRect)
  727. /* harmony export */ });
  728. /* harmony import */ var _getWindow_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getWindow.js */ "./node_modules/@popperjs/core/lib/dom-utils/getWindow.js");
  729. /* harmony import */ var _getDocumentElement_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./getDocumentElement.js */ "./node_modules/@popperjs/core/lib/dom-utils/getDocumentElement.js");
  730. /* harmony import */ var _getWindowScrollBarX_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./getWindowScrollBarX.js */ "./node_modules/@popperjs/core/lib/dom-utils/getWindowScrollBarX.js");
  731. /* harmony import */ var _isLayoutViewport_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./isLayoutViewport.js */ "./node_modules/@popperjs/core/lib/dom-utils/isLayoutViewport.js");
  732. function getViewportRect(element, strategy) {
  733. var win = (0,_getWindow_js__WEBPACK_IMPORTED_MODULE_0__["default"])(element);
  734. var html = (0,_getDocumentElement_js__WEBPACK_IMPORTED_MODULE_1__["default"])(element);
  735. var visualViewport = win.visualViewport;
  736. var width = html.clientWidth;
  737. var height = html.clientHeight;
  738. var x = 0;
  739. var y = 0;
  740. if (visualViewport) {
  741. width = visualViewport.width;
  742. height = visualViewport.height;
  743. var layoutViewport = (0,_isLayoutViewport_js__WEBPACK_IMPORTED_MODULE_2__["default"])();
  744. if (layoutViewport || !layoutViewport && strategy === 'fixed') {
  745. x = visualViewport.offsetLeft;
  746. y = visualViewport.offsetTop;
  747. }
  748. }
  749. return {
  750. width: width,
  751. height: height,
  752. x: x + (0,_getWindowScrollBarX_js__WEBPACK_IMPORTED_MODULE_3__["default"])(element),
  753. y: y
  754. };
  755. }
  756. /***/ }),
  757. /***/ "./node_modules/@popperjs/core/lib/dom-utils/getWindow.js":
  758. /*!****************************************************************!*\
  759. !*** ./node_modules/@popperjs/core/lib/dom-utils/getWindow.js ***!
  760. \****************************************************************/
  761. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  762. "use strict";
  763. __webpack_require__.r(__webpack_exports__);
  764. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  765. /* harmony export */ "default": () => (/* binding */ getWindow)
  766. /* harmony export */ });
  767. function getWindow(node) {
  768. if (node == null) {
  769. return window;
  770. }
  771. if (node.toString() !== '[object Window]') {
  772. var ownerDocument = node.ownerDocument;
  773. return ownerDocument ? ownerDocument.defaultView || window : window;
  774. }
  775. return node;
  776. }
  777. /***/ }),
  778. /***/ "./node_modules/@popperjs/core/lib/dom-utils/getWindowScroll.js":
  779. /*!**********************************************************************!*\
  780. !*** ./node_modules/@popperjs/core/lib/dom-utils/getWindowScroll.js ***!
  781. \**********************************************************************/
  782. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  783. "use strict";
  784. __webpack_require__.r(__webpack_exports__);
  785. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  786. /* harmony export */ "default": () => (/* binding */ getWindowScroll)
  787. /* harmony export */ });
  788. /* harmony import */ var _getWindow_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getWindow.js */ "./node_modules/@popperjs/core/lib/dom-utils/getWindow.js");
  789. function getWindowScroll(node) {
  790. var win = (0,_getWindow_js__WEBPACK_IMPORTED_MODULE_0__["default"])(node);
  791. var scrollLeft = win.pageXOffset;
  792. var scrollTop = win.pageYOffset;
  793. return {
  794. scrollLeft: scrollLeft,
  795. scrollTop: scrollTop
  796. };
  797. }
  798. /***/ }),
  799. /***/ "./node_modules/@popperjs/core/lib/dom-utils/getWindowScrollBarX.js":
  800. /*!**************************************************************************!*\
  801. !*** ./node_modules/@popperjs/core/lib/dom-utils/getWindowScrollBarX.js ***!
  802. \**************************************************************************/
  803. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  804. "use strict";
  805. __webpack_require__.r(__webpack_exports__);
  806. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  807. /* harmony export */ "default": () => (/* binding */ getWindowScrollBarX)
  808. /* harmony export */ });
  809. /* harmony import */ var _getBoundingClientRect_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getBoundingClientRect.js */ "./node_modules/@popperjs/core/lib/dom-utils/getBoundingClientRect.js");
  810. /* harmony import */ var _getDocumentElement_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./getDocumentElement.js */ "./node_modules/@popperjs/core/lib/dom-utils/getDocumentElement.js");
  811. /* harmony import */ var _getWindowScroll_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./getWindowScroll.js */ "./node_modules/@popperjs/core/lib/dom-utils/getWindowScroll.js");
  812. function getWindowScrollBarX(element) {
  813. // If <html> has a CSS width greater than the viewport, then this will be
  814. // incorrect for RTL.
  815. // Popper 1 is broken in this case and never had a bug report so let's assume
  816. // it's not an issue. I don't think anyone ever specifies width on <html>
  817. // anyway.
  818. // Browsers where the left scrollbar doesn't cause an issue report `0` for
  819. // this (e.g. Edge 2019, IE11, Safari)
  820. return (0,_getBoundingClientRect_js__WEBPACK_IMPORTED_MODULE_0__["default"])((0,_getDocumentElement_js__WEBPACK_IMPORTED_MODULE_1__["default"])(element)).left + (0,_getWindowScroll_js__WEBPACK_IMPORTED_MODULE_2__["default"])(element).scrollLeft;
  821. }
  822. /***/ }),
  823. /***/ "./node_modules/@popperjs/core/lib/dom-utils/instanceOf.js":
  824. /*!*****************************************************************!*\
  825. !*** ./node_modules/@popperjs/core/lib/dom-utils/instanceOf.js ***!
  826. \*****************************************************************/
  827. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  828. "use strict";
  829. __webpack_require__.r(__webpack_exports__);
  830. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  831. /* harmony export */ "isElement": () => (/* binding */ isElement),
  832. /* harmony export */ "isHTMLElement": () => (/* binding */ isHTMLElement),
  833. /* harmony export */ "isShadowRoot": () => (/* binding */ isShadowRoot)
  834. /* harmony export */ });
  835. /* harmony import */ var _getWindow_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getWindow.js */ "./node_modules/@popperjs/core/lib/dom-utils/getWindow.js");
  836. function isElement(node) {
  837. var OwnElement = (0,_getWindow_js__WEBPACK_IMPORTED_MODULE_0__["default"])(node).Element;
  838. return node instanceof OwnElement || node instanceof Element;
  839. }
  840. function isHTMLElement(node) {
  841. var OwnElement = (0,_getWindow_js__WEBPACK_IMPORTED_MODULE_0__["default"])(node).HTMLElement;
  842. return node instanceof OwnElement || node instanceof HTMLElement;
  843. }
  844. function isShadowRoot(node) {
  845. // IE 11 has no ShadowRoot
  846. if (typeof ShadowRoot === 'undefined') {
  847. return false;
  848. }
  849. var OwnElement = (0,_getWindow_js__WEBPACK_IMPORTED_MODULE_0__["default"])(node).ShadowRoot;
  850. return node instanceof OwnElement || node instanceof ShadowRoot;
  851. }
  852. /***/ }),
  853. /***/ "./node_modules/@popperjs/core/lib/dom-utils/isLayoutViewport.js":
  854. /*!***********************************************************************!*\
  855. !*** ./node_modules/@popperjs/core/lib/dom-utils/isLayoutViewport.js ***!
  856. \***********************************************************************/
  857. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  858. "use strict";
  859. __webpack_require__.r(__webpack_exports__);
  860. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  861. /* harmony export */ "default": () => (/* binding */ isLayoutViewport)
  862. /* harmony export */ });
  863. /* harmony import */ var _utils_userAgent_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils/userAgent.js */ "./node_modules/@popperjs/core/lib/utils/userAgent.js");
  864. function isLayoutViewport() {
  865. return !/^((?!chrome|android).)*safari/i.test((0,_utils_userAgent_js__WEBPACK_IMPORTED_MODULE_0__["default"])());
  866. }
  867. /***/ }),
  868. /***/ "./node_modules/@popperjs/core/lib/dom-utils/isScrollParent.js":
  869. /*!*********************************************************************!*\
  870. !*** ./node_modules/@popperjs/core/lib/dom-utils/isScrollParent.js ***!
  871. \*********************************************************************/
  872. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  873. "use strict";
  874. __webpack_require__.r(__webpack_exports__);
  875. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  876. /* harmony export */ "default": () => (/* binding */ isScrollParent)
  877. /* harmony export */ });
  878. /* harmony import */ var _getComputedStyle_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getComputedStyle.js */ "./node_modules/@popperjs/core/lib/dom-utils/getComputedStyle.js");
  879. function isScrollParent(element) {
  880. // Firefox wants us to check `-x` and `-y` variations as well
  881. var _getComputedStyle = (0,_getComputedStyle_js__WEBPACK_IMPORTED_MODULE_0__["default"])(element),
  882. overflow = _getComputedStyle.overflow,
  883. overflowX = _getComputedStyle.overflowX,
  884. overflowY = _getComputedStyle.overflowY;
  885. return /auto|scroll|overlay|hidden/.test(overflow + overflowY + overflowX);
  886. }
  887. /***/ }),
  888. /***/ "./node_modules/@popperjs/core/lib/dom-utils/isTableElement.js":
  889. /*!*********************************************************************!*\
  890. !*** ./node_modules/@popperjs/core/lib/dom-utils/isTableElement.js ***!
  891. \*********************************************************************/
  892. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  893. "use strict";
  894. __webpack_require__.r(__webpack_exports__);
  895. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  896. /* harmony export */ "default": () => (/* binding */ isTableElement)
  897. /* harmony export */ });
  898. /* harmony import */ var _getNodeName_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getNodeName.js */ "./node_modules/@popperjs/core/lib/dom-utils/getNodeName.js");
  899. function isTableElement(element) {
  900. return ['table', 'td', 'th'].indexOf((0,_getNodeName_js__WEBPACK_IMPORTED_MODULE_0__["default"])(element)) >= 0;
  901. }
  902. /***/ }),
  903. /***/ "./node_modules/@popperjs/core/lib/dom-utils/listScrollParents.js":
  904. /*!************************************************************************!*\
  905. !*** ./node_modules/@popperjs/core/lib/dom-utils/listScrollParents.js ***!
  906. \************************************************************************/
  907. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  908. "use strict";
  909. __webpack_require__.r(__webpack_exports__);
  910. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  911. /* harmony export */ "default": () => (/* binding */ listScrollParents)
  912. /* harmony export */ });
  913. /* harmony import */ var _getScrollParent_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getScrollParent.js */ "./node_modules/@popperjs/core/lib/dom-utils/getScrollParent.js");
  914. /* harmony import */ var _getParentNode_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./getParentNode.js */ "./node_modules/@popperjs/core/lib/dom-utils/getParentNode.js");
  915. /* harmony import */ var _getWindow_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./getWindow.js */ "./node_modules/@popperjs/core/lib/dom-utils/getWindow.js");
  916. /* harmony import */ var _isScrollParent_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./isScrollParent.js */ "./node_modules/@popperjs/core/lib/dom-utils/isScrollParent.js");
  917. /*
  918. given a DOM element, return the list of all scroll parents, up the list of ancesors
  919. until we get to the top window object. This list is what we attach scroll listeners
  920. to, because if any of these parent elements scroll, we'll need to re-calculate the
  921. reference element's position.
  922. */
  923. function listScrollParents(element, list) {
  924. var _element$ownerDocumen;
  925. if (list === void 0) {
  926. list = [];
  927. }
  928. var scrollParent = (0,_getScrollParent_js__WEBPACK_IMPORTED_MODULE_0__["default"])(element);
  929. var isBody = scrollParent === ((_element$ownerDocumen = element.ownerDocument) == null ? void 0 : _element$ownerDocumen.body);
  930. var win = (0,_getWindow_js__WEBPACK_IMPORTED_MODULE_1__["default"])(scrollParent);
  931. var target = isBody ? [win].concat(win.visualViewport || [], (0,_isScrollParent_js__WEBPACK_IMPORTED_MODULE_2__["default"])(scrollParent) ? scrollParent : []) : scrollParent;
  932. var updatedList = list.concat(target);
  933. return isBody ? updatedList : // $FlowFixMe[incompatible-call]: isBody tells us target will be an HTMLElement here
  934. updatedList.concat(listScrollParents((0,_getParentNode_js__WEBPACK_IMPORTED_MODULE_3__["default"])(target)));
  935. }
  936. /***/ }),
  937. /***/ "./node_modules/@popperjs/core/lib/enums.js":
  938. /*!**************************************************!*\
  939. !*** ./node_modules/@popperjs/core/lib/enums.js ***!
  940. \**************************************************/
  941. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  942. "use strict";
  943. __webpack_require__.r(__webpack_exports__);
  944. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  945. /* harmony export */ "afterMain": () => (/* binding */ afterMain),
  946. /* harmony export */ "afterRead": () => (/* binding */ afterRead),
  947. /* harmony export */ "afterWrite": () => (/* binding */ afterWrite),
  948. /* harmony export */ "auto": () => (/* binding */ auto),
  949. /* harmony export */ "basePlacements": () => (/* binding */ basePlacements),
  950. /* harmony export */ "beforeMain": () => (/* binding */ beforeMain),
  951. /* harmony export */ "beforeRead": () => (/* binding */ beforeRead),
  952. /* harmony export */ "beforeWrite": () => (/* binding */ beforeWrite),
  953. /* harmony export */ "bottom": () => (/* binding */ bottom),
  954. /* harmony export */ "clippingParents": () => (/* binding */ clippingParents),
  955. /* harmony export */ "end": () => (/* binding */ end),
  956. /* harmony export */ "left": () => (/* binding */ left),
  957. /* harmony export */ "main": () => (/* binding */ main),
  958. /* harmony export */ "modifierPhases": () => (/* binding */ modifierPhases),
  959. /* harmony export */ "placements": () => (/* binding */ placements),
  960. /* harmony export */ "popper": () => (/* binding */ popper),
  961. /* harmony export */ "read": () => (/* binding */ read),
  962. /* harmony export */ "reference": () => (/* binding */ reference),
  963. /* harmony export */ "right": () => (/* binding */ right),
  964. /* harmony export */ "start": () => (/* binding */ start),
  965. /* harmony export */ "top": () => (/* binding */ top),
  966. /* harmony export */ "variationPlacements": () => (/* binding */ variationPlacements),
  967. /* harmony export */ "viewport": () => (/* binding */ viewport),
  968. /* harmony export */ "write": () => (/* binding */ write)
  969. /* harmony export */ });
  970. var top = 'top';
  971. var bottom = 'bottom';
  972. var right = 'right';
  973. var left = 'left';
  974. var auto = 'auto';
  975. var basePlacements = [top, bottom, right, left];
  976. var start = 'start';
  977. var end = 'end';
  978. var clippingParents = 'clippingParents';
  979. var viewport = 'viewport';
  980. var popper = 'popper';
  981. var reference = 'reference';
  982. var variationPlacements = /*#__PURE__*/basePlacements.reduce(function (acc, placement) {
  983. return acc.concat([placement + "-" + start, placement + "-" + end]);
  984. }, []);
  985. var placements = /*#__PURE__*/[].concat(basePlacements, [auto]).reduce(function (acc, placement) {
  986. return acc.concat([placement, placement + "-" + start, placement + "-" + end]);
  987. }, []); // modifiers that need to read the DOM
  988. var beforeRead = 'beforeRead';
  989. var read = 'read';
  990. var afterRead = 'afterRead'; // pure-logic modifiers
  991. var beforeMain = 'beforeMain';
  992. var main = 'main';
  993. var afterMain = 'afterMain'; // modifier with the purpose to write to the DOM (or write into a framework state)
  994. var beforeWrite = 'beforeWrite';
  995. var write = 'write';
  996. var afterWrite = 'afterWrite';
  997. var modifierPhases = [beforeRead, read, afterRead, beforeMain, main, afterMain, beforeWrite, write, afterWrite];
  998. /***/ }),
  999. /***/ "./node_modules/@popperjs/core/lib/index.js":
  1000. /*!**************************************************!*\
  1001. !*** ./node_modules/@popperjs/core/lib/index.js ***!
  1002. \**************************************************/
  1003. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  1004. "use strict";
  1005. __webpack_require__.r(__webpack_exports__);
  1006. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  1007. /* harmony export */ "afterMain": () => (/* reexport safe */ _enums_js__WEBPACK_IMPORTED_MODULE_0__.afterMain),
  1008. /* harmony export */ "afterRead": () => (/* reexport safe */ _enums_js__WEBPACK_IMPORTED_MODULE_0__.afterRead),
  1009. /* harmony export */ "afterWrite": () => (/* reexport safe */ _enums_js__WEBPACK_IMPORTED_MODULE_0__.afterWrite),
  1010. /* harmony export */ "applyStyles": () => (/* reexport safe */ _modifiers_index_js__WEBPACK_IMPORTED_MODULE_1__.applyStyles),
  1011. /* harmony export */ "arrow": () => (/* reexport safe */ _modifiers_index_js__WEBPACK_IMPORTED_MODULE_1__.arrow),
  1012. /* harmony export */ "auto": () => (/* reexport safe */ _enums_js__WEBPACK_IMPORTED_MODULE_0__.auto),
  1013. /* harmony export */ "basePlacements": () => (/* reexport safe */ _enums_js__WEBPACK_IMPORTED_MODULE_0__.basePlacements),
  1014. /* harmony export */ "beforeMain": () => (/* reexport safe */ _enums_js__WEBPACK_IMPORTED_MODULE_0__.beforeMain),
  1015. /* harmony export */ "beforeRead": () => (/* reexport safe */ _enums_js__WEBPACK_IMPORTED_MODULE_0__.beforeRead),
  1016. /* harmony export */ "beforeWrite": () => (/* reexport safe */ _enums_js__WEBPACK_IMPORTED_MODULE_0__.beforeWrite),
  1017. /* harmony export */ "bottom": () => (/* reexport safe */ _enums_js__WEBPACK_IMPORTED_MODULE_0__.bottom),
  1018. /* harmony export */ "clippingParents": () => (/* reexport safe */ _enums_js__WEBPACK_IMPORTED_MODULE_0__.clippingParents),
  1019. /* harmony export */ "computeStyles": () => (/* reexport safe */ _modifiers_index_js__WEBPACK_IMPORTED_MODULE_1__.computeStyles),
  1020. /* harmony export */ "createPopper": () => (/* reexport safe */ _popper_js__WEBPACK_IMPORTED_MODULE_4__.createPopper),
  1021. /* harmony export */ "createPopperBase": () => (/* reexport safe */ _createPopper_js__WEBPACK_IMPORTED_MODULE_2__.createPopper),
  1022. /* harmony export */ "createPopperLite": () => (/* reexport safe */ _popper_lite_js__WEBPACK_IMPORTED_MODULE_5__.createPopper),
  1023. /* harmony export */ "detectOverflow": () => (/* reexport safe */ _createPopper_js__WEBPACK_IMPORTED_MODULE_3__["default"]),
  1024. /* harmony export */ "end": () => (/* reexport safe */ _enums_js__WEBPACK_IMPORTED_MODULE_0__.end),
  1025. /* harmony export */ "eventListeners": () => (/* reexport safe */ _modifiers_index_js__WEBPACK_IMPORTED_MODULE_1__.eventListeners),
  1026. /* harmony export */ "flip": () => (/* reexport safe */ _modifiers_index_js__WEBPACK_IMPORTED_MODULE_1__.flip),
  1027. /* harmony export */ "hide": () => (/* reexport safe */ _modifiers_index_js__WEBPACK_IMPORTED_MODULE_1__.hide),
  1028. /* harmony export */ "left": () => (/* reexport safe */ _enums_js__WEBPACK_IMPORTED_MODULE_0__.left),
  1029. /* harmony export */ "main": () => (/* reexport safe */ _enums_js__WEBPACK_IMPORTED_MODULE_0__.main),
  1030. /* harmony export */ "modifierPhases": () => (/* reexport safe */ _enums_js__WEBPACK_IMPORTED_MODULE_0__.modifierPhases),
  1031. /* harmony export */ "offset": () => (/* reexport safe */ _modifiers_index_js__WEBPACK_IMPORTED_MODULE_1__.offset),
  1032. /* harmony export */ "placements": () => (/* reexport safe */ _enums_js__WEBPACK_IMPORTED_MODULE_0__.placements),
  1033. /* harmony export */ "popper": () => (/* reexport safe */ _enums_js__WEBPACK_IMPORTED_MODULE_0__.popper),
  1034. /* harmony export */ "popperGenerator": () => (/* reexport safe */ _createPopper_js__WEBPACK_IMPORTED_MODULE_2__.popperGenerator),
  1035. /* harmony export */ "popperOffsets": () => (/* reexport safe */ _modifiers_index_js__WEBPACK_IMPORTED_MODULE_1__.popperOffsets),
  1036. /* harmony export */ "preventOverflow": () => (/* reexport safe */ _modifiers_index_js__WEBPACK_IMPORTED_MODULE_1__.preventOverflow),
  1037. /* harmony export */ "read": () => (/* reexport safe */ _enums_js__WEBPACK_IMPORTED_MODULE_0__.read),
  1038. /* harmony export */ "reference": () => (/* reexport safe */ _enums_js__WEBPACK_IMPORTED_MODULE_0__.reference),
  1039. /* harmony export */ "right": () => (/* reexport safe */ _enums_js__WEBPACK_IMPORTED_MODULE_0__.right),
  1040. /* harmony export */ "start": () => (/* reexport safe */ _enums_js__WEBPACK_IMPORTED_MODULE_0__.start),
  1041. /* harmony export */ "top": () => (/* reexport safe */ _enums_js__WEBPACK_IMPORTED_MODULE_0__.top),
  1042. /* harmony export */ "variationPlacements": () => (/* reexport safe */ _enums_js__WEBPACK_IMPORTED_MODULE_0__.variationPlacements),
  1043. /* harmony export */ "viewport": () => (/* reexport safe */ _enums_js__WEBPACK_IMPORTED_MODULE_0__.viewport),
  1044. /* harmony export */ "write": () => (/* reexport safe */ _enums_js__WEBPACK_IMPORTED_MODULE_0__.write)
  1045. /* harmony export */ });
  1046. /* harmony import */ var _enums_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./enums.js */ "./node_modules/@popperjs/core/lib/enums.js");
  1047. /* harmony import */ var _modifiers_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./modifiers/index.js */ "./node_modules/@popperjs/core/lib/modifiers/index.js");
  1048. /* harmony import */ var _createPopper_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./createPopper.js */ "./node_modules/@popperjs/core/lib/createPopper.js");
  1049. /* harmony import */ var _createPopper_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./createPopper.js */ "./node_modules/@popperjs/core/lib/utils/detectOverflow.js");
  1050. /* harmony import */ var _popper_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./popper.js */ "./node_modules/@popperjs/core/lib/popper.js");
  1051. /* harmony import */ var _popper_lite_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./popper-lite.js */ "./node_modules/@popperjs/core/lib/popper-lite.js");
  1052. // eslint-disable-next-line import/no-unused-modules
  1053. // eslint-disable-next-line import/no-unused-modules
  1054. // eslint-disable-next-line import/no-unused-modules
  1055. /***/ }),
  1056. /***/ "./node_modules/@popperjs/core/lib/modifiers/applyStyles.js":
  1057. /*!******************************************************************!*\
  1058. !*** ./node_modules/@popperjs/core/lib/modifiers/applyStyles.js ***!
  1059. \******************************************************************/
  1060. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  1061. "use strict";
  1062. __webpack_require__.r(__webpack_exports__);
  1063. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  1064. /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
  1065. /* harmony export */ });
  1066. /* harmony import */ var _dom_utils_getNodeName_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../dom-utils/getNodeName.js */ "./node_modules/@popperjs/core/lib/dom-utils/getNodeName.js");
  1067. /* harmony import */ var _dom_utils_instanceOf_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../dom-utils/instanceOf.js */ "./node_modules/@popperjs/core/lib/dom-utils/instanceOf.js");
  1068. // This modifier takes the styles prepared by the `computeStyles` modifier
  1069. // and applies them to the HTMLElements such as popper and arrow
  1070. function applyStyles(_ref) {
  1071. var state = _ref.state;
  1072. Object.keys(state.elements).forEach(function (name) {
  1073. var style = state.styles[name] || {};
  1074. var attributes = state.attributes[name] || {};
  1075. var element = state.elements[name]; // arrow is optional + virtual elements
  1076. if (!(0,_dom_utils_instanceOf_js__WEBPACK_IMPORTED_MODULE_0__.isHTMLElement)(element) || !(0,_dom_utils_getNodeName_js__WEBPACK_IMPORTED_MODULE_1__["default"])(element)) {
  1077. return;
  1078. } // Flow doesn't support to extend this property, but it's the most
  1079. // effective way to apply styles to an HTMLElement
  1080. // $FlowFixMe[cannot-write]
  1081. Object.assign(element.style, style);
  1082. Object.keys(attributes).forEach(function (name) {
  1083. var value = attributes[name];
  1084. if (value === false) {
  1085. element.removeAttribute(name);
  1086. } else {
  1087. element.setAttribute(name, value === true ? '' : value);
  1088. }
  1089. });
  1090. });
  1091. }
  1092. function effect(_ref2) {
  1093. var state = _ref2.state;
  1094. var initialStyles = {
  1095. popper: {
  1096. position: state.options.strategy,
  1097. left: '0',
  1098. top: '0',
  1099. margin: '0'
  1100. },
  1101. arrow: {
  1102. position: 'absolute'
  1103. },
  1104. reference: {}
  1105. };
  1106. Object.assign(state.elements.popper.style, initialStyles.popper);
  1107. state.styles = initialStyles;
  1108. if (state.elements.arrow) {
  1109. Object.assign(state.elements.arrow.style, initialStyles.arrow);
  1110. }
  1111. return function () {
  1112. Object.keys(state.elements).forEach(function (name) {
  1113. var element = state.elements[name];
  1114. var attributes = state.attributes[name] || {};
  1115. var styleProperties = Object.keys(state.styles.hasOwnProperty(name) ? state.styles[name] : initialStyles[name]); // Set all values to an empty string to unset them
  1116. var style = styleProperties.reduce(function (style, property) {
  1117. style[property] = '';
  1118. return style;
  1119. }, {}); // arrow is optional + virtual elements
  1120. if (!(0,_dom_utils_instanceOf_js__WEBPACK_IMPORTED_MODULE_0__.isHTMLElement)(element) || !(0,_dom_utils_getNodeName_js__WEBPACK_IMPORTED_MODULE_1__["default"])(element)) {
  1121. return;
  1122. }
  1123. Object.assign(element.style, style);
  1124. Object.keys(attributes).forEach(function (attribute) {
  1125. element.removeAttribute(attribute);
  1126. });
  1127. });
  1128. };
  1129. } // eslint-disable-next-line import/no-unused-modules
  1130. /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({
  1131. name: 'applyStyles',
  1132. enabled: true,
  1133. phase: 'write',
  1134. fn: applyStyles,
  1135. effect: effect,
  1136. requires: ['computeStyles']
  1137. });
  1138. /***/ }),
  1139. /***/ "./node_modules/@popperjs/core/lib/modifiers/arrow.js":
  1140. /*!************************************************************!*\
  1141. !*** ./node_modules/@popperjs/core/lib/modifiers/arrow.js ***!
  1142. \************************************************************/
  1143. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  1144. "use strict";
  1145. __webpack_require__.r(__webpack_exports__);
  1146. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  1147. /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
  1148. /* harmony export */ });
  1149. /* harmony import */ var _utils_getBasePlacement_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../utils/getBasePlacement.js */ "./node_modules/@popperjs/core/lib/utils/getBasePlacement.js");
  1150. /* harmony import */ var _dom_utils_getLayoutRect_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../dom-utils/getLayoutRect.js */ "./node_modules/@popperjs/core/lib/dom-utils/getLayoutRect.js");
  1151. /* harmony import */ var _dom_utils_contains_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../dom-utils/contains.js */ "./node_modules/@popperjs/core/lib/dom-utils/contains.js");
  1152. /* harmony import */ var _dom_utils_getOffsetParent_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../dom-utils/getOffsetParent.js */ "./node_modules/@popperjs/core/lib/dom-utils/getOffsetParent.js");
  1153. /* harmony import */ var _utils_getMainAxisFromPlacement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../utils/getMainAxisFromPlacement.js */ "./node_modules/@popperjs/core/lib/utils/getMainAxisFromPlacement.js");
  1154. /* harmony import */ var _utils_within_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../utils/within.js */ "./node_modules/@popperjs/core/lib/utils/within.js");
  1155. /* harmony import */ var _utils_mergePaddingObject_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils/mergePaddingObject.js */ "./node_modules/@popperjs/core/lib/utils/mergePaddingObject.js");
  1156. /* harmony import */ var _utils_expandToHashMap_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils/expandToHashMap.js */ "./node_modules/@popperjs/core/lib/utils/expandToHashMap.js");
  1157. /* harmony import */ var _enums_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../enums.js */ "./node_modules/@popperjs/core/lib/enums.js");
  1158. /* harmony import */ var _dom_utils_instanceOf_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../dom-utils/instanceOf.js */ "./node_modules/@popperjs/core/lib/dom-utils/instanceOf.js");
  1159. // eslint-disable-next-line import/no-unused-modules
  1160. var toPaddingObject = function toPaddingObject(padding, state) {
  1161. padding = typeof padding === 'function' ? padding(Object.assign({}, state.rects, {
  1162. placement: state.placement
  1163. })) : padding;
  1164. return (0,_utils_mergePaddingObject_js__WEBPACK_IMPORTED_MODULE_0__["default"])(typeof padding !== 'number' ? padding : (0,_utils_expandToHashMap_js__WEBPACK_IMPORTED_MODULE_1__["default"])(padding, _enums_js__WEBPACK_IMPORTED_MODULE_2__.basePlacements));
  1165. };
  1166. function arrow(_ref) {
  1167. var _state$modifiersData$;
  1168. var state = _ref.state,
  1169. name = _ref.name,
  1170. options = _ref.options;
  1171. var arrowElement = state.elements.arrow;
  1172. var popperOffsets = state.modifiersData.popperOffsets;
  1173. var basePlacement = (0,_utils_getBasePlacement_js__WEBPACK_IMPORTED_MODULE_3__["default"])(state.placement);
  1174. var axis = (0,_utils_getMainAxisFromPlacement_js__WEBPACK_IMPORTED_MODULE_4__["default"])(basePlacement);
  1175. var isVertical = [_enums_js__WEBPACK_IMPORTED_MODULE_2__.left, _enums_js__WEBPACK_IMPORTED_MODULE_2__.right].indexOf(basePlacement) >= 0;
  1176. var len = isVertical ? 'height' : 'width';
  1177. if (!arrowElement || !popperOffsets) {
  1178. return;
  1179. }
  1180. var paddingObject = toPaddingObject(options.padding, state);
  1181. var arrowRect = (0,_dom_utils_getLayoutRect_js__WEBPACK_IMPORTED_MODULE_5__["default"])(arrowElement);
  1182. var minProp = axis === 'y' ? _enums_js__WEBPACK_IMPORTED_MODULE_2__.top : _enums_js__WEBPACK_IMPORTED_MODULE_2__.left;
  1183. var maxProp = axis === 'y' ? _enums_js__WEBPACK_IMPORTED_MODULE_2__.bottom : _enums_js__WEBPACK_IMPORTED_MODULE_2__.right;
  1184. var endDiff = state.rects.reference[len] + state.rects.reference[axis] - popperOffsets[axis] - state.rects.popper[len];
  1185. var startDiff = popperOffsets[axis] - state.rects.reference[axis];
  1186. var arrowOffsetParent = (0,_dom_utils_getOffsetParent_js__WEBPACK_IMPORTED_MODULE_6__["default"])(arrowElement);
  1187. var clientSize = arrowOffsetParent ? axis === 'y' ? arrowOffsetParent.clientHeight || 0 : arrowOffsetParent.clientWidth || 0 : 0;
  1188. var centerToReference = endDiff / 2 - startDiff / 2; // Make sure the arrow doesn't overflow the popper if the center point is
  1189. // outside of the popper bounds
  1190. var min = paddingObject[minProp];
  1191. var max = clientSize - arrowRect[len] - paddingObject[maxProp];
  1192. var center = clientSize / 2 - arrowRect[len] / 2 + centerToReference;
  1193. var offset = (0,_utils_within_js__WEBPACK_IMPORTED_MODULE_7__.within)(min, center, max); // Prevents breaking syntax highlighting...
  1194. var axisProp = axis;
  1195. state.modifiersData[name] = (_state$modifiersData$ = {}, _state$modifiersData$[axisProp] = offset, _state$modifiersData$.centerOffset = offset - center, _state$modifiersData$);
  1196. }
  1197. function effect(_ref2) {
  1198. var state = _ref2.state,
  1199. options = _ref2.options;
  1200. var _options$element = options.element,
  1201. arrowElement = _options$element === void 0 ? '[data-popper-arrow]' : _options$element;
  1202. if (arrowElement == null) {
  1203. return;
  1204. } // CSS selector
  1205. if (typeof arrowElement === 'string') {
  1206. arrowElement = state.elements.popper.querySelector(arrowElement);
  1207. if (!arrowElement) {
  1208. return;
  1209. }
  1210. }
  1211. if (true) {
  1212. if (!(0,_dom_utils_instanceOf_js__WEBPACK_IMPORTED_MODULE_8__.isHTMLElement)(arrowElement)) {
  1213. console.error(['Popper: "arrow" element must be an HTMLElement (not an SVGElement).', 'To use an SVG arrow, wrap it in an HTMLElement that will be used as', 'the arrow.'].join(' '));
  1214. }
  1215. }
  1216. if (!(0,_dom_utils_contains_js__WEBPACK_IMPORTED_MODULE_9__["default"])(state.elements.popper, arrowElement)) {
  1217. if (true) {
  1218. console.error(['Popper: "arrow" modifier\'s `element` must be a child of the popper', 'element.'].join(' '));
  1219. }
  1220. return;
  1221. }
  1222. state.elements.arrow = arrowElement;
  1223. } // eslint-disable-next-line import/no-unused-modules
  1224. /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({
  1225. name: 'arrow',
  1226. enabled: true,
  1227. phase: 'main',
  1228. fn: arrow,
  1229. effect: effect,
  1230. requires: ['popperOffsets'],
  1231. requiresIfExists: ['preventOverflow']
  1232. });
  1233. /***/ }),
  1234. /***/ "./node_modules/@popperjs/core/lib/modifiers/computeStyles.js":
  1235. /*!********************************************************************!*\
  1236. !*** ./node_modules/@popperjs/core/lib/modifiers/computeStyles.js ***!
  1237. \********************************************************************/
  1238. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  1239. "use strict";
  1240. __webpack_require__.r(__webpack_exports__);
  1241. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  1242. /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__),
  1243. /* harmony export */ "mapToStyles": () => (/* binding */ mapToStyles)
  1244. /* harmony export */ });
  1245. /* harmony import */ var _enums_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../enums.js */ "./node_modules/@popperjs/core/lib/enums.js");
  1246. /* harmony import */ var _dom_utils_getOffsetParent_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../dom-utils/getOffsetParent.js */ "./node_modules/@popperjs/core/lib/dom-utils/getOffsetParent.js");
  1247. /* harmony import */ var _dom_utils_getWindow_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../dom-utils/getWindow.js */ "./node_modules/@popperjs/core/lib/dom-utils/getWindow.js");
  1248. /* harmony import */ var _dom_utils_getDocumentElement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../dom-utils/getDocumentElement.js */ "./node_modules/@popperjs/core/lib/dom-utils/getDocumentElement.js");
  1249. /* harmony import */ var _dom_utils_getComputedStyle_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../dom-utils/getComputedStyle.js */ "./node_modules/@popperjs/core/lib/dom-utils/getComputedStyle.js");
  1250. /* harmony import */ var _utils_getBasePlacement_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../utils/getBasePlacement.js */ "./node_modules/@popperjs/core/lib/utils/getBasePlacement.js");
  1251. /* harmony import */ var _utils_getVariation_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../utils/getVariation.js */ "./node_modules/@popperjs/core/lib/utils/getVariation.js");
  1252. /* harmony import */ var _utils_math_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils/math.js */ "./node_modules/@popperjs/core/lib/utils/math.js");
  1253. // eslint-disable-next-line import/no-unused-modules
  1254. var unsetSides = {
  1255. top: 'auto',
  1256. right: 'auto',
  1257. bottom: 'auto',
  1258. left: 'auto'
  1259. }; // Round the offsets to the nearest suitable subpixel based on the DPR.
  1260. // Zooming can change the DPR, but it seems to report a value that will
  1261. // cleanly divide the values into the appropriate subpixels.
  1262. function roundOffsetsByDPR(_ref) {
  1263. var x = _ref.x,
  1264. y = _ref.y;
  1265. var win = window;
  1266. var dpr = win.devicePixelRatio || 1;
  1267. return {
  1268. x: (0,_utils_math_js__WEBPACK_IMPORTED_MODULE_0__.round)(x * dpr) / dpr || 0,
  1269. y: (0,_utils_math_js__WEBPACK_IMPORTED_MODULE_0__.round)(y * dpr) / dpr || 0
  1270. };
  1271. }
  1272. function mapToStyles(_ref2) {
  1273. var _Object$assign2;
  1274. var popper = _ref2.popper,
  1275. popperRect = _ref2.popperRect,
  1276. placement = _ref2.placement,
  1277. variation = _ref2.variation,
  1278. offsets = _ref2.offsets,
  1279. position = _ref2.position,
  1280. gpuAcceleration = _ref2.gpuAcceleration,
  1281. adaptive = _ref2.adaptive,
  1282. roundOffsets = _ref2.roundOffsets,
  1283. isFixed = _ref2.isFixed;
  1284. var _offsets$x = offsets.x,
  1285. x = _offsets$x === void 0 ? 0 : _offsets$x,
  1286. _offsets$y = offsets.y,
  1287. y = _offsets$y === void 0 ? 0 : _offsets$y;
  1288. var _ref3 = typeof roundOffsets === 'function' ? roundOffsets({
  1289. x: x,
  1290. y: y
  1291. }) : {
  1292. x: x,
  1293. y: y
  1294. };
  1295. x = _ref3.x;
  1296. y = _ref3.y;
  1297. var hasX = offsets.hasOwnProperty('x');
  1298. var hasY = offsets.hasOwnProperty('y');
  1299. var sideX = _enums_js__WEBPACK_IMPORTED_MODULE_1__.left;
  1300. var sideY = _enums_js__WEBPACK_IMPORTED_MODULE_1__.top;
  1301. var win = window;
  1302. if (adaptive) {
  1303. var offsetParent = (0,_dom_utils_getOffsetParent_js__WEBPACK_IMPORTED_MODULE_2__["default"])(popper);
  1304. var heightProp = 'clientHeight';
  1305. var widthProp = 'clientWidth';
  1306. if (offsetParent === (0,_dom_utils_getWindow_js__WEBPACK_IMPORTED_MODULE_3__["default"])(popper)) {
  1307. offsetParent = (0,_dom_utils_getDocumentElement_js__WEBPACK_IMPORTED_MODULE_4__["default"])(popper);
  1308. if ((0,_dom_utils_getComputedStyle_js__WEBPACK_IMPORTED_MODULE_5__["default"])(offsetParent).position !== 'static' && position === 'absolute') {
  1309. heightProp = 'scrollHeight';
  1310. widthProp = 'scrollWidth';
  1311. }
  1312. } // $FlowFixMe[incompatible-cast]: force type refinement, we compare offsetParent with window above, but Flow doesn't detect it
  1313. offsetParent = offsetParent;
  1314. if (placement === _enums_js__WEBPACK_IMPORTED_MODULE_1__.top || (placement === _enums_js__WEBPACK_IMPORTED_MODULE_1__.left || placement === _enums_js__WEBPACK_IMPORTED_MODULE_1__.right) && variation === _enums_js__WEBPACK_IMPORTED_MODULE_1__.end) {
  1315. sideY = _enums_js__WEBPACK_IMPORTED_MODULE_1__.bottom;
  1316. var offsetY = isFixed && offsetParent === win && win.visualViewport ? win.visualViewport.height : // $FlowFixMe[prop-missing]
  1317. offsetParent[heightProp];
  1318. y -= offsetY - popperRect.height;
  1319. y *= gpuAcceleration ? 1 : -1;
  1320. }
  1321. if (placement === _enums_js__WEBPACK_IMPORTED_MODULE_1__.left || (placement === _enums_js__WEBPACK_IMPORTED_MODULE_1__.top || placement === _enums_js__WEBPACK_IMPORTED_MODULE_1__.bottom) && variation === _enums_js__WEBPACK_IMPORTED_MODULE_1__.end) {
  1322. sideX = _enums_js__WEBPACK_IMPORTED_MODULE_1__.right;
  1323. var offsetX = isFixed && offsetParent === win && win.visualViewport ? win.visualViewport.width : // $FlowFixMe[prop-missing]
  1324. offsetParent[widthProp];
  1325. x -= offsetX - popperRect.width;
  1326. x *= gpuAcceleration ? 1 : -1;
  1327. }
  1328. }
  1329. var commonStyles = Object.assign({
  1330. position: position
  1331. }, adaptive && unsetSides);
  1332. var _ref4 = roundOffsets === true ? roundOffsetsByDPR({
  1333. x: x,
  1334. y: y
  1335. }) : {
  1336. x: x,
  1337. y: y
  1338. };
  1339. x = _ref4.x;
  1340. y = _ref4.y;
  1341. if (gpuAcceleration) {
  1342. var _Object$assign;
  1343. return Object.assign({}, commonStyles, (_Object$assign = {}, _Object$assign[sideY] = hasY ? '0' : '', _Object$assign[sideX] = hasX ? '0' : '', _Object$assign.transform = (win.devicePixelRatio || 1) <= 1 ? "translate(" + x + "px, " + y + "px)" : "translate3d(" + x + "px, " + y + "px, 0)", _Object$assign));
  1344. }
  1345. return Object.assign({}, commonStyles, (_Object$assign2 = {}, _Object$assign2[sideY] = hasY ? y + "px" : '', _Object$assign2[sideX] = hasX ? x + "px" : '', _Object$assign2.transform = '', _Object$assign2));
  1346. }
  1347. function computeStyles(_ref5) {
  1348. var state = _ref5.state,
  1349. options = _ref5.options;
  1350. var _options$gpuAccelerat = options.gpuAcceleration,
  1351. gpuAcceleration = _options$gpuAccelerat === void 0 ? true : _options$gpuAccelerat,
  1352. _options$adaptive = options.adaptive,
  1353. adaptive = _options$adaptive === void 0 ? true : _options$adaptive,
  1354. _options$roundOffsets = options.roundOffsets,
  1355. roundOffsets = _options$roundOffsets === void 0 ? true : _options$roundOffsets;
  1356. if (true) {
  1357. var transitionProperty = (0,_dom_utils_getComputedStyle_js__WEBPACK_IMPORTED_MODULE_5__["default"])(state.elements.popper).transitionProperty || '';
  1358. if (adaptive && ['transform', 'top', 'right', 'bottom', 'left'].some(function (property) {
  1359. return transitionProperty.indexOf(property) >= 0;
  1360. })) {
  1361. console.warn(['Popper: Detected CSS transitions on at least one of the following', 'CSS properties: "transform", "top", "right", "bottom", "left".', '\n\n', 'Disable the "computeStyles" modifier\'s `adaptive` option to allow', 'for smooth transitions, or remove these properties from the CSS', 'transition declaration on the popper element if only transitioning', 'opacity or background-color for example.', '\n\n', 'We recommend using the popper element as a wrapper around an inner', 'element that can have any CSS property transitioned for animations.'].join(' '));
  1362. }
  1363. }
  1364. var commonStyles = {
  1365. placement: (0,_utils_getBasePlacement_js__WEBPACK_IMPORTED_MODULE_6__["default"])(state.placement),
  1366. variation: (0,_utils_getVariation_js__WEBPACK_IMPORTED_MODULE_7__["default"])(state.placement),
  1367. popper: state.elements.popper,
  1368. popperRect: state.rects.popper,
  1369. gpuAcceleration: gpuAcceleration,
  1370. isFixed: state.options.strategy === 'fixed'
  1371. };
  1372. if (state.modifiersData.popperOffsets != null) {
  1373. state.styles.popper = Object.assign({}, state.styles.popper, mapToStyles(Object.assign({}, commonStyles, {
  1374. offsets: state.modifiersData.popperOffsets,
  1375. position: state.options.strategy,
  1376. adaptive: adaptive,
  1377. roundOffsets: roundOffsets
  1378. })));
  1379. }
  1380. if (state.modifiersData.arrow != null) {
  1381. state.styles.arrow = Object.assign({}, state.styles.arrow, mapToStyles(Object.assign({}, commonStyles, {
  1382. offsets: state.modifiersData.arrow,
  1383. position: 'absolute',
  1384. adaptive: false,
  1385. roundOffsets: roundOffsets
  1386. })));
  1387. }
  1388. state.attributes.popper = Object.assign({}, state.attributes.popper, {
  1389. 'data-popper-placement': state.placement
  1390. });
  1391. } // eslint-disable-next-line import/no-unused-modules
  1392. /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({
  1393. name: 'computeStyles',
  1394. enabled: true,
  1395. phase: 'beforeWrite',
  1396. fn: computeStyles,
  1397. data: {}
  1398. });
  1399. /***/ }),
  1400. /***/ "./node_modules/@popperjs/core/lib/modifiers/eventListeners.js":
  1401. /*!*********************************************************************!*\
  1402. !*** ./node_modules/@popperjs/core/lib/modifiers/eventListeners.js ***!
  1403. \*********************************************************************/
  1404. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  1405. "use strict";
  1406. __webpack_require__.r(__webpack_exports__);
  1407. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  1408. /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
  1409. /* harmony export */ });
  1410. /* harmony import */ var _dom_utils_getWindow_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../dom-utils/getWindow.js */ "./node_modules/@popperjs/core/lib/dom-utils/getWindow.js");
  1411. // eslint-disable-next-line import/no-unused-modules
  1412. var passive = {
  1413. passive: true
  1414. };
  1415. function effect(_ref) {
  1416. var state = _ref.state,
  1417. instance = _ref.instance,
  1418. options = _ref.options;
  1419. var _options$scroll = options.scroll,
  1420. scroll = _options$scroll === void 0 ? true : _options$scroll,
  1421. _options$resize = options.resize,
  1422. resize = _options$resize === void 0 ? true : _options$resize;
  1423. var window = (0,_dom_utils_getWindow_js__WEBPACK_IMPORTED_MODULE_0__["default"])(state.elements.popper);
  1424. var scrollParents = [].concat(state.scrollParents.reference, state.scrollParents.popper);
  1425. if (scroll) {
  1426. scrollParents.forEach(function (scrollParent) {
  1427. scrollParent.addEventListener('scroll', instance.update, passive);
  1428. });
  1429. }
  1430. if (resize) {
  1431. window.addEventListener('resize', instance.update, passive);
  1432. }
  1433. return function () {
  1434. if (scroll) {
  1435. scrollParents.forEach(function (scrollParent) {
  1436. scrollParent.removeEventListener('scroll', instance.update, passive);
  1437. });
  1438. }
  1439. if (resize) {
  1440. window.removeEventListener('resize', instance.update, passive);
  1441. }
  1442. };
  1443. } // eslint-disable-next-line import/no-unused-modules
  1444. /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({
  1445. name: 'eventListeners',
  1446. enabled: true,
  1447. phase: 'write',
  1448. fn: function fn() {},
  1449. effect: effect,
  1450. data: {}
  1451. });
  1452. /***/ }),
  1453. /***/ "./node_modules/@popperjs/core/lib/modifiers/flip.js":
  1454. /*!***********************************************************!*\
  1455. !*** ./node_modules/@popperjs/core/lib/modifiers/flip.js ***!
  1456. \***********************************************************/
  1457. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  1458. "use strict";
  1459. __webpack_require__.r(__webpack_exports__);
  1460. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  1461. /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
  1462. /* harmony export */ });
  1463. /* harmony import */ var _utils_getOppositePlacement_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../utils/getOppositePlacement.js */ "./node_modules/@popperjs/core/lib/utils/getOppositePlacement.js");
  1464. /* harmony import */ var _utils_getBasePlacement_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils/getBasePlacement.js */ "./node_modules/@popperjs/core/lib/utils/getBasePlacement.js");
  1465. /* harmony import */ var _utils_getOppositeVariationPlacement_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../utils/getOppositeVariationPlacement.js */ "./node_modules/@popperjs/core/lib/utils/getOppositeVariationPlacement.js");
  1466. /* harmony import */ var _utils_detectOverflow_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../utils/detectOverflow.js */ "./node_modules/@popperjs/core/lib/utils/detectOverflow.js");
  1467. /* harmony import */ var _utils_computeAutoPlacement_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../utils/computeAutoPlacement.js */ "./node_modules/@popperjs/core/lib/utils/computeAutoPlacement.js");
  1468. /* harmony import */ var _enums_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../enums.js */ "./node_modules/@popperjs/core/lib/enums.js");
  1469. /* harmony import */ var _utils_getVariation_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../utils/getVariation.js */ "./node_modules/@popperjs/core/lib/utils/getVariation.js");
  1470. // eslint-disable-next-line import/no-unused-modules
  1471. function getExpandedFallbackPlacements(placement) {
  1472. if ((0,_utils_getBasePlacement_js__WEBPACK_IMPORTED_MODULE_0__["default"])(placement) === _enums_js__WEBPACK_IMPORTED_MODULE_1__.auto) {
  1473. return [];
  1474. }
  1475. var oppositePlacement = (0,_utils_getOppositePlacement_js__WEBPACK_IMPORTED_MODULE_2__["default"])(placement);
  1476. return [(0,_utils_getOppositeVariationPlacement_js__WEBPACK_IMPORTED_MODULE_3__["default"])(placement), oppositePlacement, (0,_utils_getOppositeVariationPlacement_js__WEBPACK_IMPORTED_MODULE_3__["default"])(oppositePlacement)];
  1477. }
  1478. function flip(_ref) {
  1479. var state = _ref.state,
  1480. options = _ref.options,
  1481. name = _ref.name;
  1482. if (state.modifiersData[name]._skip) {
  1483. return;
  1484. }
  1485. var _options$mainAxis = options.mainAxis,
  1486. checkMainAxis = _options$mainAxis === void 0 ? true : _options$mainAxis,
  1487. _options$altAxis = options.altAxis,
  1488. checkAltAxis = _options$altAxis === void 0 ? true : _options$altAxis,
  1489. specifiedFallbackPlacements = options.fallbackPlacements,
  1490. padding = options.padding,
  1491. boundary = options.boundary,
  1492. rootBoundary = options.rootBoundary,
  1493. altBoundary = options.altBoundary,
  1494. _options$flipVariatio = options.flipVariations,
  1495. flipVariations = _options$flipVariatio === void 0 ? true : _options$flipVariatio,
  1496. allowedAutoPlacements = options.allowedAutoPlacements;
  1497. var preferredPlacement = state.options.placement;
  1498. var basePlacement = (0,_utils_getBasePlacement_js__WEBPACK_IMPORTED_MODULE_0__["default"])(preferredPlacement);
  1499. var isBasePlacement = basePlacement === preferredPlacement;
  1500. var fallbackPlacements = specifiedFallbackPlacements || (isBasePlacement || !flipVariations ? [(0,_utils_getOppositePlacement_js__WEBPACK_IMPORTED_MODULE_2__["default"])(preferredPlacement)] : getExpandedFallbackPlacements(preferredPlacement));
  1501. var placements = [preferredPlacement].concat(fallbackPlacements).reduce(function (acc, placement) {
  1502. return acc.concat((0,_utils_getBasePlacement_js__WEBPACK_IMPORTED_MODULE_0__["default"])(placement) === _enums_js__WEBPACK_IMPORTED_MODULE_1__.auto ? (0,_utils_computeAutoPlacement_js__WEBPACK_IMPORTED_MODULE_4__["default"])(state, {
  1503. placement: placement,
  1504. boundary: boundary,
  1505. rootBoundary: rootBoundary,
  1506. padding: padding,
  1507. flipVariations: flipVariations,
  1508. allowedAutoPlacements: allowedAutoPlacements
  1509. }) : placement);
  1510. }, []);
  1511. var referenceRect = state.rects.reference;
  1512. var popperRect = state.rects.popper;
  1513. var checksMap = new Map();
  1514. var makeFallbackChecks = true;
  1515. var firstFittingPlacement = placements[0];
  1516. for (var i = 0; i < placements.length; i++) {
  1517. var placement = placements[i];
  1518. var _basePlacement = (0,_utils_getBasePlacement_js__WEBPACK_IMPORTED_MODULE_0__["default"])(placement);
  1519. var isStartVariation = (0,_utils_getVariation_js__WEBPACK_IMPORTED_MODULE_5__["default"])(placement) === _enums_js__WEBPACK_IMPORTED_MODULE_1__.start;
  1520. var isVertical = [_enums_js__WEBPACK_IMPORTED_MODULE_1__.top, _enums_js__WEBPACK_IMPORTED_MODULE_1__.bottom].indexOf(_basePlacement) >= 0;
  1521. var len = isVertical ? 'width' : 'height';
  1522. var overflow = (0,_utils_detectOverflow_js__WEBPACK_IMPORTED_MODULE_6__["default"])(state, {
  1523. placement: placement,
  1524. boundary: boundary,
  1525. rootBoundary: rootBoundary,
  1526. altBoundary: altBoundary,
  1527. padding: padding
  1528. });
  1529. var mainVariationSide = isVertical ? isStartVariation ? _enums_js__WEBPACK_IMPORTED_MODULE_1__.right : _enums_js__WEBPACK_IMPORTED_MODULE_1__.left : isStartVariation ? _enums_js__WEBPACK_IMPORTED_MODULE_1__.bottom : _enums_js__WEBPACK_IMPORTED_MODULE_1__.top;
  1530. if (referenceRect[len] > popperRect[len]) {
  1531. mainVariationSide = (0,_utils_getOppositePlacement_js__WEBPACK_IMPORTED_MODULE_2__["default"])(mainVariationSide);
  1532. }
  1533. var altVariationSide = (0,_utils_getOppositePlacement_js__WEBPACK_IMPORTED_MODULE_2__["default"])(mainVariationSide);
  1534. var checks = [];
  1535. if (checkMainAxis) {
  1536. checks.push(overflow[_basePlacement] <= 0);
  1537. }
  1538. if (checkAltAxis) {
  1539. checks.push(overflow[mainVariationSide] <= 0, overflow[altVariationSide] <= 0);
  1540. }
  1541. if (checks.every(function (check) {
  1542. return check;
  1543. })) {
  1544. firstFittingPlacement = placement;
  1545. makeFallbackChecks = false;
  1546. break;
  1547. }
  1548. checksMap.set(placement, checks);
  1549. }
  1550. if (makeFallbackChecks) {
  1551. // `2` may be desired in some cases – research later
  1552. var numberOfChecks = flipVariations ? 3 : 1;
  1553. var _loop = function _loop(_i) {
  1554. var fittingPlacement = placements.find(function (placement) {
  1555. var checks = checksMap.get(placement);
  1556. if (checks) {
  1557. return checks.slice(0, _i).every(function (check) {
  1558. return check;
  1559. });
  1560. }
  1561. });
  1562. if (fittingPlacement) {
  1563. firstFittingPlacement = fittingPlacement;
  1564. return "break";
  1565. }
  1566. };
  1567. for (var _i = numberOfChecks; _i > 0; _i--) {
  1568. var _ret = _loop(_i);
  1569. if (_ret === "break") break;
  1570. }
  1571. }
  1572. if (state.placement !== firstFittingPlacement) {
  1573. state.modifiersData[name]._skip = true;
  1574. state.placement = firstFittingPlacement;
  1575. state.reset = true;
  1576. }
  1577. } // eslint-disable-next-line import/no-unused-modules
  1578. /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({
  1579. name: 'flip',
  1580. enabled: true,
  1581. phase: 'main',
  1582. fn: flip,
  1583. requiresIfExists: ['offset'],
  1584. data: {
  1585. _skip: false
  1586. }
  1587. });
  1588. /***/ }),
  1589. /***/ "./node_modules/@popperjs/core/lib/modifiers/hide.js":
  1590. /*!***********************************************************!*\
  1591. !*** ./node_modules/@popperjs/core/lib/modifiers/hide.js ***!
  1592. \***********************************************************/
  1593. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  1594. "use strict";
  1595. __webpack_require__.r(__webpack_exports__);
  1596. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  1597. /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
  1598. /* harmony export */ });
  1599. /* harmony import */ var _enums_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../enums.js */ "./node_modules/@popperjs/core/lib/enums.js");
  1600. /* harmony import */ var _utils_detectOverflow_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils/detectOverflow.js */ "./node_modules/@popperjs/core/lib/utils/detectOverflow.js");
  1601. function getSideOffsets(overflow, rect, preventedOffsets) {
  1602. if (preventedOffsets === void 0) {
  1603. preventedOffsets = {
  1604. x: 0,
  1605. y: 0
  1606. };
  1607. }
  1608. return {
  1609. top: overflow.top - rect.height - preventedOffsets.y,
  1610. right: overflow.right - rect.width + preventedOffsets.x,
  1611. bottom: overflow.bottom - rect.height + preventedOffsets.y,
  1612. left: overflow.left - rect.width - preventedOffsets.x
  1613. };
  1614. }
  1615. function isAnySideFullyClipped(overflow) {
  1616. return [_enums_js__WEBPACK_IMPORTED_MODULE_0__.top, _enums_js__WEBPACK_IMPORTED_MODULE_0__.right, _enums_js__WEBPACK_IMPORTED_MODULE_0__.bottom, _enums_js__WEBPACK_IMPORTED_MODULE_0__.left].some(function (side) {
  1617. return overflow[side] >= 0;
  1618. });
  1619. }
  1620. function hide(_ref) {
  1621. var state = _ref.state,
  1622. name = _ref.name;
  1623. var referenceRect = state.rects.reference;
  1624. var popperRect = state.rects.popper;
  1625. var preventedOffsets = state.modifiersData.preventOverflow;
  1626. var referenceOverflow = (0,_utils_detectOverflow_js__WEBPACK_IMPORTED_MODULE_1__["default"])(state, {
  1627. elementContext: 'reference'
  1628. });
  1629. var popperAltOverflow = (0,_utils_detectOverflow_js__WEBPACK_IMPORTED_MODULE_1__["default"])(state, {
  1630. altBoundary: true
  1631. });
  1632. var referenceClippingOffsets = getSideOffsets(referenceOverflow, referenceRect);
  1633. var popperEscapeOffsets = getSideOffsets(popperAltOverflow, popperRect, preventedOffsets);
  1634. var isReferenceHidden = isAnySideFullyClipped(referenceClippingOffsets);
  1635. var hasPopperEscaped = isAnySideFullyClipped(popperEscapeOffsets);
  1636. state.modifiersData[name] = {
  1637. referenceClippingOffsets: referenceClippingOffsets,
  1638. popperEscapeOffsets: popperEscapeOffsets,
  1639. isReferenceHidden: isReferenceHidden,
  1640. hasPopperEscaped: hasPopperEscaped
  1641. };
  1642. state.attributes.popper = Object.assign({}, state.attributes.popper, {
  1643. 'data-popper-reference-hidden': isReferenceHidden,
  1644. 'data-popper-escaped': hasPopperEscaped
  1645. });
  1646. } // eslint-disable-next-line import/no-unused-modules
  1647. /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({
  1648. name: 'hide',
  1649. enabled: true,
  1650. phase: 'main',
  1651. requiresIfExists: ['preventOverflow'],
  1652. fn: hide
  1653. });
  1654. /***/ }),
  1655. /***/ "./node_modules/@popperjs/core/lib/modifiers/index.js":
  1656. /*!************************************************************!*\
  1657. !*** ./node_modules/@popperjs/core/lib/modifiers/index.js ***!
  1658. \************************************************************/
  1659. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  1660. "use strict";
  1661. __webpack_require__.r(__webpack_exports__);
  1662. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  1663. /* harmony export */ "applyStyles": () => (/* reexport safe */ _applyStyles_js__WEBPACK_IMPORTED_MODULE_0__["default"]),
  1664. /* harmony export */ "arrow": () => (/* reexport safe */ _arrow_js__WEBPACK_IMPORTED_MODULE_1__["default"]),
  1665. /* harmony export */ "computeStyles": () => (/* reexport safe */ _computeStyles_js__WEBPACK_IMPORTED_MODULE_2__["default"]),
  1666. /* harmony export */ "eventListeners": () => (/* reexport safe */ _eventListeners_js__WEBPACK_IMPORTED_MODULE_3__["default"]),
  1667. /* harmony export */ "flip": () => (/* reexport safe */ _flip_js__WEBPACK_IMPORTED_MODULE_4__["default"]),
  1668. /* harmony export */ "hide": () => (/* reexport safe */ _hide_js__WEBPACK_IMPORTED_MODULE_5__["default"]),
  1669. /* harmony export */ "offset": () => (/* reexport safe */ _offset_js__WEBPACK_IMPORTED_MODULE_6__["default"]),
  1670. /* harmony export */ "popperOffsets": () => (/* reexport safe */ _popperOffsets_js__WEBPACK_IMPORTED_MODULE_7__["default"]),
  1671. /* harmony export */ "preventOverflow": () => (/* reexport safe */ _preventOverflow_js__WEBPACK_IMPORTED_MODULE_8__["default"])
  1672. /* harmony export */ });
  1673. /* harmony import */ var _applyStyles_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./applyStyles.js */ "./node_modules/@popperjs/core/lib/modifiers/applyStyles.js");
  1674. /* harmony import */ var _arrow_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./arrow.js */ "./node_modules/@popperjs/core/lib/modifiers/arrow.js");
  1675. /* harmony import */ var _computeStyles_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./computeStyles.js */ "./node_modules/@popperjs/core/lib/modifiers/computeStyles.js");
  1676. /* harmony import */ var _eventListeners_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./eventListeners.js */ "./node_modules/@popperjs/core/lib/modifiers/eventListeners.js");
  1677. /* harmony import */ var _flip_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./flip.js */ "./node_modules/@popperjs/core/lib/modifiers/flip.js");
  1678. /* harmony import */ var _hide_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./hide.js */ "./node_modules/@popperjs/core/lib/modifiers/hide.js");
  1679. /* harmony import */ var _offset_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./offset.js */ "./node_modules/@popperjs/core/lib/modifiers/offset.js");
  1680. /* harmony import */ var _popperOffsets_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./popperOffsets.js */ "./node_modules/@popperjs/core/lib/modifiers/popperOffsets.js");
  1681. /* harmony import */ var _preventOverflow_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./preventOverflow.js */ "./node_modules/@popperjs/core/lib/modifiers/preventOverflow.js");
  1682. /***/ }),
  1683. /***/ "./node_modules/@popperjs/core/lib/modifiers/offset.js":
  1684. /*!*************************************************************!*\
  1685. !*** ./node_modules/@popperjs/core/lib/modifiers/offset.js ***!
  1686. \*************************************************************/
  1687. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  1688. "use strict";
  1689. __webpack_require__.r(__webpack_exports__);
  1690. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  1691. /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__),
  1692. /* harmony export */ "distanceAndSkiddingToXY": () => (/* binding */ distanceAndSkiddingToXY)
  1693. /* harmony export */ });
  1694. /* harmony import */ var _utils_getBasePlacement_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils/getBasePlacement.js */ "./node_modules/@popperjs/core/lib/utils/getBasePlacement.js");
  1695. /* harmony import */ var _enums_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../enums.js */ "./node_modules/@popperjs/core/lib/enums.js");
  1696. // eslint-disable-next-line import/no-unused-modules
  1697. function distanceAndSkiddingToXY(placement, rects, offset) {
  1698. var basePlacement = (0,_utils_getBasePlacement_js__WEBPACK_IMPORTED_MODULE_0__["default"])(placement);
  1699. var invertDistance = [_enums_js__WEBPACK_IMPORTED_MODULE_1__.left, _enums_js__WEBPACK_IMPORTED_MODULE_1__.top].indexOf(basePlacement) >= 0 ? -1 : 1;
  1700. var _ref = typeof offset === 'function' ? offset(Object.assign({}, rects, {
  1701. placement: placement
  1702. })) : offset,
  1703. skidding = _ref[0],
  1704. distance = _ref[1];
  1705. skidding = skidding || 0;
  1706. distance = (distance || 0) * invertDistance;
  1707. return [_enums_js__WEBPACK_IMPORTED_MODULE_1__.left, _enums_js__WEBPACK_IMPORTED_MODULE_1__.right].indexOf(basePlacement) >= 0 ? {
  1708. x: distance,
  1709. y: skidding
  1710. } : {
  1711. x: skidding,
  1712. y: distance
  1713. };
  1714. }
  1715. function offset(_ref2) {
  1716. var state = _ref2.state,
  1717. options = _ref2.options,
  1718. name = _ref2.name;
  1719. var _options$offset = options.offset,
  1720. offset = _options$offset === void 0 ? [0, 0] : _options$offset;
  1721. var data = _enums_js__WEBPACK_IMPORTED_MODULE_1__.placements.reduce(function (acc, placement) {
  1722. acc[placement] = distanceAndSkiddingToXY(placement, state.rects, offset);
  1723. return acc;
  1724. }, {});
  1725. var _data$state$placement = data[state.placement],
  1726. x = _data$state$placement.x,
  1727. y = _data$state$placement.y;
  1728. if (state.modifiersData.popperOffsets != null) {
  1729. state.modifiersData.popperOffsets.x += x;
  1730. state.modifiersData.popperOffsets.y += y;
  1731. }
  1732. state.modifiersData[name] = data;
  1733. } // eslint-disable-next-line import/no-unused-modules
  1734. /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({
  1735. name: 'offset',
  1736. enabled: true,
  1737. phase: 'main',
  1738. requires: ['popperOffsets'],
  1739. fn: offset
  1740. });
  1741. /***/ }),
  1742. /***/ "./node_modules/@popperjs/core/lib/modifiers/popperOffsets.js":
  1743. /*!********************************************************************!*\
  1744. !*** ./node_modules/@popperjs/core/lib/modifiers/popperOffsets.js ***!
  1745. \********************************************************************/
  1746. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  1747. "use strict";
  1748. __webpack_require__.r(__webpack_exports__);
  1749. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  1750. /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
  1751. /* harmony export */ });
  1752. /* harmony import */ var _utils_computeOffsets_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils/computeOffsets.js */ "./node_modules/@popperjs/core/lib/utils/computeOffsets.js");
  1753. function popperOffsets(_ref) {
  1754. var state = _ref.state,
  1755. name = _ref.name;
  1756. // Offsets are the actual position the popper needs to have to be
  1757. // properly positioned near its reference element
  1758. // This is the most basic placement, and will be adjusted by
  1759. // the modifiers in the next step
  1760. state.modifiersData[name] = (0,_utils_computeOffsets_js__WEBPACK_IMPORTED_MODULE_0__["default"])({
  1761. reference: state.rects.reference,
  1762. element: state.rects.popper,
  1763. strategy: 'absolute',
  1764. placement: state.placement
  1765. });
  1766. } // eslint-disable-next-line import/no-unused-modules
  1767. /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({
  1768. name: 'popperOffsets',
  1769. enabled: true,
  1770. phase: 'read',
  1771. fn: popperOffsets,
  1772. data: {}
  1773. });
  1774. /***/ }),
  1775. /***/ "./node_modules/@popperjs/core/lib/modifiers/preventOverflow.js":
  1776. /*!**********************************************************************!*\
  1777. !*** ./node_modules/@popperjs/core/lib/modifiers/preventOverflow.js ***!
  1778. \**********************************************************************/
  1779. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  1780. "use strict";
  1781. __webpack_require__.r(__webpack_exports__);
  1782. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  1783. /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
  1784. /* harmony export */ });
  1785. /* harmony import */ var _enums_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../enums.js */ "./node_modules/@popperjs/core/lib/enums.js");
  1786. /* harmony import */ var _utils_getBasePlacement_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../utils/getBasePlacement.js */ "./node_modules/@popperjs/core/lib/utils/getBasePlacement.js");
  1787. /* harmony import */ var _utils_getMainAxisFromPlacement_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../utils/getMainAxisFromPlacement.js */ "./node_modules/@popperjs/core/lib/utils/getMainAxisFromPlacement.js");
  1788. /* harmony import */ var _utils_getAltAxis_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../utils/getAltAxis.js */ "./node_modules/@popperjs/core/lib/utils/getAltAxis.js");
  1789. /* harmony import */ var _utils_within_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../utils/within.js */ "./node_modules/@popperjs/core/lib/utils/within.js");
  1790. /* harmony import */ var _dom_utils_getLayoutRect_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../dom-utils/getLayoutRect.js */ "./node_modules/@popperjs/core/lib/dom-utils/getLayoutRect.js");
  1791. /* harmony import */ var _dom_utils_getOffsetParent_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../dom-utils/getOffsetParent.js */ "./node_modules/@popperjs/core/lib/dom-utils/getOffsetParent.js");
  1792. /* harmony import */ var _utils_detectOverflow_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../utils/detectOverflow.js */ "./node_modules/@popperjs/core/lib/utils/detectOverflow.js");
  1793. /* harmony import */ var _utils_getVariation_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../utils/getVariation.js */ "./node_modules/@popperjs/core/lib/utils/getVariation.js");
  1794. /* harmony import */ var _utils_getFreshSideObject_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../utils/getFreshSideObject.js */ "./node_modules/@popperjs/core/lib/utils/getFreshSideObject.js");
  1795. /* harmony import */ var _utils_math_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../utils/math.js */ "./node_modules/@popperjs/core/lib/utils/math.js");
  1796. function preventOverflow(_ref) {
  1797. var state = _ref.state,
  1798. options = _ref.options,
  1799. name = _ref.name;
  1800. var _options$mainAxis = options.mainAxis,
  1801. checkMainAxis = _options$mainAxis === void 0 ? true : _options$mainAxis,
  1802. _options$altAxis = options.altAxis,
  1803. checkAltAxis = _options$altAxis === void 0 ? false : _options$altAxis,
  1804. boundary = options.boundary,
  1805. rootBoundary = options.rootBoundary,
  1806. altBoundary = options.altBoundary,
  1807. padding = options.padding,
  1808. _options$tether = options.tether,
  1809. tether = _options$tether === void 0 ? true : _options$tether,
  1810. _options$tetherOffset = options.tetherOffset,
  1811. tetherOffset = _options$tetherOffset === void 0 ? 0 : _options$tetherOffset;
  1812. var overflow = (0,_utils_detectOverflow_js__WEBPACK_IMPORTED_MODULE_0__["default"])(state, {
  1813. boundary: boundary,
  1814. rootBoundary: rootBoundary,
  1815. padding: padding,
  1816. altBoundary: altBoundary
  1817. });
  1818. var basePlacement = (0,_utils_getBasePlacement_js__WEBPACK_IMPORTED_MODULE_1__["default"])(state.placement);
  1819. var variation = (0,_utils_getVariation_js__WEBPACK_IMPORTED_MODULE_2__["default"])(state.placement);
  1820. var isBasePlacement = !variation;
  1821. var mainAxis = (0,_utils_getMainAxisFromPlacement_js__WEBPACK_IMPORTED_MODULE_3__["default"])(basePlacement);
  1822. var altAxis = (0,_utils_getAltAxis_js__WEBPACK_IMPORTED_MODULE_4__["default"])(mainAxis);
  1823. var popperOffsets = state.modifiersData.popperOffsets;
  1824. var referenceRect = state.rects.reference;
  1825. var popperRect = state.rects.popper;
  1826. var tetherOffsetValue = typeof tetherOffset === 'function' ? tetherOffset(Object.assign({}, state.rects, {
  1827. placement: state.placement
  1828. })) : tetherOffset;
  1829. var normalizedTetherOffsetValue = typeof tetherOffsetValue === 'number' ? {
  1830. mainAxis: tetherOffsetValue,
  1831. altAxis: tetherOffsetValue
  1832. } : Object.assign({
  1833. mainAxis: 0,
  1834. altAxis: 0
  1835. }, tetherOffsetValue);
  1836. var offsetModifierState = state.modifiersData.offset ? state.modifiersData.offset[state.placement] : null;
  1837. var data = {
  1838. x: 0,
  1839. y: 0
  1840. };
  1841. if (!popperOffsets) {
  1842. return;
  1843. }
  1844. if (checkMainAxis) {
  1845. var _offsetModifierState$;
  1846. var mainSide = mainAxis === 'y' ? _enums_js__WEBPACK_IMPORTED_MODULE_5__.top : _enums_js__WEBPACK_IMPORTED_MODULE_5__.left;
  1847. var altSide = mainAxis === 'y' ? _enums_js__WEBPACK_IMPORTED_MODULE_5__.bottom : _enums_js__WEBPACK_IMPORTED_MODULE_5__.right;
  1848. var len = mainAxis === 'y' ? 'height' : 'width';
  1849. var offset = popperOffsets[mainAxis];
  1850. var min = offset + overflow[mainSide];
  1851. var max = offset - overflow[altSide];
  1852. var additive = tether ? -popperRect[len] / 2 : 0;
  1853. var minLen = variation === _enums_js__WEBPACK_IMPORTED_MODULE_5__.start ? referenceRect[len] : popperRect[len];
  1854. var maxLen = variation === _enums_js__WEBPACK_IMPORTED_MODULE_5__.start ? -popperRect[len] : -referenceRect[len]; // We need to include the arrow in the calculation so the arrow doesn't go
  1855. // outside the reference bounds
  1856. var arrowElement = state.elements.arrow;
  1857. var arrowRect = tether && arrowElement ? (0,_dom_utils_getLayoutRect_js__WEBPACK_IMPORTED_MODULE_6__["default"])(arrowElement) : {
  1858. width: 0,
  1859. height: 0
  1860. };
  1861. var arrowPaddingObject = state.modifiersData['arrow#persistent'] ? state.modifiersData['arrow#persistent'].padding : (0,_utils_getFreshSideObject_js__WEBPACK_IMPORTED_MODULE_7__["default"])();
  1862. var arrowPaddingMin = arrowPaddingObject[mainSide];
  1863. var arrowPaddingMax = arrowPaddingObject[altSide]; // If the reference length is smaller than the arrow length, we don't want
  1864. // to include its full size in the calculation. If the reference is small
  1865. // and near the edge of a boundary, the popper can overflow even if the
  1866. // reference is not overflowing as well (e.g. virtual elements with no
  1867. // width or height)
  1868. var arrowLen = (0,_utils_within_js__WEBPACK_IMPORTED_MODULE_8__.within)(0, referenceRect[len], arrowRect[len]);
  1869. var minOffset = isBasePlacement ? referenceRect[len] / 2 - additive - arrowLen - arrowPaddingMin - normalizedTetherOffsetValue.mainAxis : minLen - arrowLen - arrowPaddingMin - normalizedTetherOffsetValue.mainAxis;
  1870. var maxOffset = isBasePlacement ? -referenceRect[len] / 2 + additive + arrowLen + arrowPaddingMax + normalizedTetherOffsetValue.mainAxis : maxLen + arrowLen + arrowPaddingMax + normalizedTetherOffsetValue.mainAxis;
  1871. var arrowOffsetParent = state.elements.arrow && (0,_dom_utils_getOffsetParent_js__WEBPACK_IMPORTED_MODULE_9__["default"])(state.elements.arrow);
  1872. var clientOffset = arrowOffsetParent ? mainAxis === 'y' ? arrowOffsetParent.clientTop || 0 : arrowOffsetParent.clientLeft || 0 : 0;
  1873. var offsetModifierValue = (_offsetModifierState$ = offsetModifierState == null ? void 0 : offsetModifierState[mainAxis]) != null ? _offsetModifierState$ : 0;
  1874. var tetherMin = offset + minOffset - offsetModifierValue - clientOffset;
  1875. var tetherMax = offset + maxOffset - offsetModifierValue;
  1876. var preventedOffset = (0,_utils_within_js__WEBPACK_IMPORTED_MODULE_8__.within)(tether ? (0,_utils_math_js__WEBPACK_IMPORTED_MODULE_10__.min)(min, tetherMin) : min, offset, tether ? (0,_utils_math_js__WEBPACK_IMPORTED_MODULE_10__.max)(max, tetherMax) : max);
  1877. popperOffsets[mainAxis] = preventedOffset;
  1878. data[mainAxis] = preventedOffset - offset;
  1879. }
  1880. if (checkAltAxis) {
  1881. var _offsetModifierState$2;
  1882. var _mainSide = mainAxis === 'x' ? _enums_js__WEBPACK_IMPORTED_MODULE_5__.top : _enums_js__WEBPACK_IMPORTED_MODULE_5__.left;
  1883. var _altSide = mainAxis === 'x' ? _enums_js__WEBPACK_IMPORTED_MODULE_5__.bottom : _enums_js__WEBPACK_IMPORTED_MODULE_5__.right;
  1884. var _offset = popperOffsets[altAxis];
  1885. var _len = altAxis === 'y' ? 'height' : 'width';
  1886. var _min = _offset + overflow[_mainSide];
  1887. var _max = _offset - overflow[_altSide];
  1888. var isOriginSide = [_enums_js__WEBPACK_IMPORTED_MODULE_5__.top, _enums_js__WEBPACK_IMPORTED_MODULE_5__.left].indexOf(basePlacement) !== -1;
  1889. var _offsetModifierValue = (_offsetModifierState$2 = offsetModifierState == null ? void 0 : offsetModifierState[altAxis]) != null ? _offsetModifierState$2 : 0;
  1890. var _tetherMin = isOriginSide ? _min : _offset - referenceRect[_len] - popperRect[_len] - _offsetModifierValue + normalizedTetherOffsetValue.altAxis;
  1891. var _tetherMax = isOriginSide ? _offset + referenceRect[_len] + popperRect[_len] - _offsetModifierValue - normalizedTetherOffsetValue.altAxis : _max;
  1892. var _preventedOffset = tether && isOriginSide ? (0,_utils_within_js__WEBPACK_IMPORTED_MODULE_8__.withinMaxClamp)(_tetherMin, _offset, _tetherMax) : (0,_utils_within_js__WEBPACK_IMPORTED_MODULE_8__.within)(tether ? _tetherMin : _min, _offset, tether ? _tetherMax : _max);
  1893. popperOffsets[altAxis] = _preventedOffset;
  1894. data[altAxis] = _preventedOffset - _offset;
  1895. }
  1896. state.modifiersData[name] = data;
  1897. } // eslint-disable-next-line import/no-unused-modules
  1898. /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = ({
  1899. name: 'preventOverflow',
  1900. enabled: true,
  1901. phase: 'main',
  1902. fn: preventOverflow,
  1903. requiresIfExists: ['offset']
  1904. });
  1905. /***/ }),
  1906. /***/ "./node_modules/@popperjs/core/lib/popper-lite.js":
  1907. /*!********************************************************!*\
  1908. !*** ./node_modules/@popperjs/core/lib/popper-lite.js ***!
  1909. \********************************************************/
  1910. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  1911. "use strict";
  1912. __webpack_require__.r(__webpack_exports__);
  1913. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  1914. /* harmony export */ "createPopper": () => (/* binding */ createPopper),
  1915. /* harmony export */ "defaultModifiers": () => (/* binding */ defaultModifiers),
  1916. /* harmony export */ "detectOverflow": () => (/* reexport safe */ _createPopper_js__WEBPACK_IMPORTED_MODULE_5__["default"]),
  1917. /* harmony export */ "popperGenerator": () => (/* reexport safe */ _createPopper_js__WEBPACK_IMPORTED_MODULE_4__.popperGenerator)
  1918. /* harmony export */ });
  1919. /* harmony import */ var _createPopper_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./createPopper.js */ "./node_modules/@popperjs/core/lib/createPopper.js");
  1920. /* harmony import */ var _createPopper_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./createPopper.js */ "./node_modules/@popperjs/core/lib/utils/detectOverflow.js");
  1921. /* harmony import */ var _modifiers_eventListeners_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./modifiers/eventListeners.js */ "./node_modules/@popperjs/core/lib/modifiers/eventListeners.js");
  1922. /* harmony import */ var _modifiers_popperOffsets_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./modifiers/popperOffsets.js */ "./node_modules/@popperjs/core/lib/modifiers/popperOffsets.js");
  1923. /* harmony import */ var _modifiers_computeStyles_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./modifiers/computeStyles.js */ "./node_modules/@popperjs/core/lib/modifiers/computeStyles.js");
  1924. /* harmony import */ var _modifiers_applyStyles_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./modifiers/applyStyles.js */ "./node_modules/@popperjs/core/lib/modifiers/applyStyles.js");
  1925. var defaultModifiers = [_modifiers_eventListeners_js__WEBPACK_IMPORTED_MODULE_0__["default"], _modifiers_popperOffsets_js__WEBPACK_IMPORTED_MODULE_1__["default"], _modifiers_computeStyles_js__WEBPACK_IMPORTED_MODULE_2__["default"], _modifiers_applyStyles_js__WEBPACK_IMPORTED_MODULE_3__["default"]];
  1926. var createPopper = /*#__PURE__*/(0,_createPopper_js__WEBPACK_IMPORTED_MODULE_4__.popperGenerator)({
  1927. defaultModifiers: defaultModifiers
  1928. }); // eslint-disable-next-line import/no-unused-modules
  1929. /***/ }),
  1930. /***/ "./node_modules/@popperjs/core/lib/popper.js":
  1931. /*!***************************************************!*\
  1932. !*** ./node_modules/@popperjs/core/lib/popper.js ***!
  1933. \***************************************************/
  1934. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  1935. "use strict";
  1936. __webpack_require__.r(__webpack_exports__);
  1937. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  1938. /* harmony export */ "applyStyles": () => (/* reexport safe */ _modifiers_index_js__WEBPACK_IMPORTED_MODULE_12__.applyStyles),
  1939. /* harmony export */ "arrow": () => (/* reexport safe */ _modifiers_index_js__WEBPACK_IMPORTED_MODULE_12__.arrow),
  1940. /* harmony export */ "computeStyles": () => (/* reexport safe */ _modifiers_index_js__WEBPACK_IMPORTED_MODULE_12__.computeStyles),
  1941. /* harmony export */ "createPopper": () => (/* binding */ createPopper),
  1942. /* harmony export */ "createPopperLite": () => (/* reexport safe */ _popper_lite_js__WEBPACK_IMPORTED_MODULE_11__.createPopper),
  1943. /* harmony export */ "defaultModifiers": () => (/* binding */ defaultModifiers),
  1944. /* harmony export */ "detectOverflow": () => (/* reexport safe */ _createPopper_js__WEBPACK_IMPORTED_MODULE_10__["default"]),
  1945. /* harmony export */ "eventListeners": () => (/* reexport safe */ _modifiers_index_js__WEBPACK_IMPORTED_MODULE_12__.eventListeners),
  1946. /* harmony export */ "flip": () => (/* reexport safe */ _modifiers_index_js__WEBPACK_IMPORTED_MODULE_12__.flip),
  1947. /* harmony export */ "hide": () => (/* reexport safe */ _modifiers_index_js__WEBPACK_IMPORTED_MODULE_12__.hide),
  1948. /* harmony export */ "offset": () => (/* reexport safe */ _modifiers_index_js__WEBPACK_IMPORTED_MODULE_12__.offset),
  1949. /* harmony export */ "popperGenerator": () => (/* reexport safe */ _createPopper_js__WEBPACK_IMPORTED_MODULE_9__.popperGenerator),
  1950. /* harmony export */ "popperOffsets": () => (/* reexport safe */ _modifiers_index_js__WEBPACK_IMPORTED_MODULE_12__.popperOffsets),
  1951. /* harmony export */ "preventOverflow": () => (/* reexport safe */ _modifiers_index_js__WEBPACK_IMPORTED_MODULE_12__.preventOverflow)
  1952. /* harmony export */ });
  1953. /* harmony import */ var _createPopper_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./createPopper.js */ "./node_modules/@popperjs/core/lib/createPopper.js");
  1954. /* harmony import */ var _createPopper_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ./createPopper.js */ "./node_modules/@popperjs/core/lib/utils/detectOverflow.js");
  1955. /* harmony import */ var _modifiers_eventListeners_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./modifiers/eventListeners.js */ "./node_modules/@popperjs/core/lib/modifiers/eventListeners.js");
  1956. /* harmony import */ var _modifiers_popperOffsets_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./modifiers/popperOffsets.js */ "./node_modules/@popperjs/core/lib/modifiers/popperOffsets.js");
  1957. /* harmony import */ var _modifiers_computeStyles_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./modifiers/computeStyles.js */ "./node_modules/@popperjs/core/lib/modifiers/computeStyles.js");
  1958. /* harmony import */ var _modifiers_applyStyles_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./modifiers/applyStyles.js */ "./node_modules/@popperjs/core/lib/modifiers/applyStyles.js");
  1959. /* harmony import */ var _modifiers_offset_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./modifiers/offset.js */ "./node_modules/@popperjs/core/lib/modifiers/offset.js");
  1960. /* harmony import */ var _modifiers_flip_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./modifiers/flip.js */ "./node_modules/@popperjs/core/lib/modifiers/flip.js");
  1961. /* harmony import */ var _modifiers_preventOverflow_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./modifiers/preventOverflow.js */ "./node_modules/@popperjs/core/lib/modifiers/preventOverflow.js");
  1962. /* harmony import */ var _modifiers_arrow_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./modifiers/arrow.js */ "./node_modules/@popperjs/core/lib/modifiers/arrow.js");
  1963. /* harmony import */ var _modifiers_hide_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./modifiers/hide.js */ "./node_modules/@popperjs/core/lib/modifiers/hide.js");
  1964. /* harmony import */ var _popper_lite_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ./popper-lite.js */ "./node_modules/@popperjs/core/lib/popper-lite.js");
  1965. /* harmony import */ var _modifiers_index_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! ./modifiers/index.js */ "./node_modules/@popperjs/core/lib/modifiers/index.js");
  1966. var defaultModifiers = [_modifiers_eventListeners_js__WEBPACK_IMPORTED_MODULE_0__["default"], _modifiers_popperOffsets_js__WEBPACK_IMPORTED_MODULE_1__["default"], _modifiers_computeStyles_js__WEBPACK_IMPORTED_MODULE_2__["default"], _modifiers_applyStyles_js__WEBPACK_IMPORTED_MODULE_3__["default"], _modifiers_offset_js__WEBPACK_IMPORTED_MODULE_4__["default"], _modifiers_flip_js__WEBPACK_IMPORTED_MODULE_5__["default"], _modifiers_preventOverflow_js__WEBPACK_IMPORTED_MODULE_6__["default"], _modifiers_arrow_js__WEBPACK_IMPORTED_MODULE_7__["default"], _modifiers_hide_js__WEBPACK_IMPORTED_MODULE_8__["default"]];
  1967. var createPopper = /*#__PURE__*/(0,_createPopper_js__WEBPACK_IMPORTED_MODULE_9__.popperGenerator)({
  1968. defaultModifiers: defaultModifiers
  1969. }); // eslint-disable-next-line import/no-unused-modules
  1970. // eslint-disable-next-line import/no-unused-modules
  1971. // eslint-disable-next-line import/no-unused-modules
  1972. /***/ }),
  1973. /***/ "./node_modules/@popperjs/core/lib/utils/computeAutoPlacement.js":
  1974. /*!***********************************************************************!*\
  1975. !*** ./node_modules/@popperjs/core/lib/utils/computeAutoPlacement.js ***!
  1976. \***********************************************************************/
  1977. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  1978. "use strict";
  1979. __webpack_require__.r(__webpack_exports__);
  1980. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  1981. /* harmony export */ "default": () => (/* binding */ computeAutoPlacement)
  1982. /* harmony export */ });
  1983. /* harmony import */ var _getVariation_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./getVariation.js */ "./node_modules/@popperjs/core/lib/utils/getVariation.js");
  1984. /* harmony import */ var _enums_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../enums.js */ "./node_modules/@popperjs/core/lib/enums.js");
  1985. /* harmony import */ var _detectOverflow_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./detectOverflow.js */ "./node_modules/@popperjs/core/lib/utils/detectOverflow.js");
  1986. /* harmony import */ var _getBasePlacement_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./getBasePlacement.js */ "./node_modules/@popperjs/core/lib/utils/getBasePlacement.js");
  1987. function computeAutoPlacement(state, options) {
  1988. if (options === void 0) {
  1989. options = {};
  1990. }
  1991. var _options = options,
  1992. placement = _options.placement,
  1993. boundary = _options.boundary,
  1994. rootBoundary = _options.rootBoundary,
  1995. padding = _options.padding,
  1996. flipVariations = _options.flipVariations,
  1997. _options$allowedAutoP = _options.allowedAutoPlacements,
  1998. allowedAutoPlacements = _options$allowedAutoP === void 0 ? _enums_js__WEBPACK_IMPORTED_MODULE_0__.placements : _options$allowedAutoP;
  1999. var variation = (0,_getVariation_js__WEBPACK_IMPORTED_MODULE_1__["default"])(placement);
  2000. var placements = variation ? flipVariations ? _enums_js__WEBPACK_IMPORTED_MODULE_0__.variationPlacements : _enums_js__WEBPACK_IMPORTED_MODULE_0__.variationPlacements.filter(function (placement) {
  2001. return (0,_getVariation_js__WEBPACK_IMPORTED_MODULE_1__["default"])(placement) === variation;
  2002. }) : _enums_js__WEBPACK_IMPORTED_MODULE_0__.basePlacements;
  2003. var allowedPlacements = placements.filter(function (placement) {
  2004. return allowedAutoPlacements.indexOf(placement) >= 0;
  2005. });
  2006. if (allowedPlacements.length === 0) {
  2007. allowedPlacements = placements;
  2008. if (true) {
  2009. console.error(['Popper: The `allowedAutoPlacements` option did not allow any', 'placements. Ensure the `placement` option matches the variation', 'of the allowed placements.', 'For example, "auto" cannot be used to allow "bottom-start".', 'Use "auto-start" instead.'].join(' '));
  2010. }
  2011. } // $FlowFixMe[incompatible-type]: Flow seems to have problems with two array unions...
  2012. var overflows = allowedPlacements.reduce(function (acc, placement) {
  2013. acc[placement] = (0,_detectOverflow_js__WEBPACK_IMPORTED_MODULE_2__["default"])(state, {
  2014. placement: placement,
  2015. boundary: boundary,
  2016. rootBoundary: rootBoundary,
  2017. padding: padding
  2018. })[(0,_getBasePlacement_js__WEBPACK_IMPORTED_MODULE_3__["default"])(placement)];
  2019. return acc;
  2020. }, {});
  2021. return Object.keys(overflows).sort(function (a, b) {
  2022. return overflows[a] - overflows[b];
  2023. });
  2024. }
  2025. /***/ }),
  2026. /***/ "./node_modules/@popperjs/core/lib/utils/computeOffsets.js":
  2027. /*!*****************************************************************!*\
  2028. !*** ./node_modules/@popperjs/core/lib/utils/computeOffsets.js ***!
  2029. \*****************************************************************/
  2030. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  2031. "use strict";
  2032. __webpack_require__.r(__webpack_exports__);
  2033. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  2034. /* harmony export */ "default": () => (/* binding */ computeOffsets)
  2035. /* harmony export */ });
  2036. /* harmony import */ var _getBasePlacement_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getBasePlacement.js */ "./node_modules/@popperjs/core/lib/utils/getBasePlacement.js");
  2037. /* harmony import */ var _getVariation_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./getVariation.js */ "./node_modules/@popperjs/core/lib/utils/getVariation.js");
  2038. /* harmony import */ var _getMainAxisFromPlacement_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./getMainAxisFromPlacement.js */ "./node_modules/@popperjs/core/lib/utils/getMainAxisFromPlacement.js");
  2039. /* harmony import */ var _enums_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../enums.js */ "./node_modules/@popperjs/core/lib/enums.js");
  2040. function computeOffsets(_ref) {
  2041. var reference = _ref.reference,
  2042. element = _ref.element,
  2043. placement = _ref.placement;
  2044. var basePlacement = placement ? (0,_getBasePlacement_js__WEBPACK_IMPORTED_MODULE_0__["default"])(placement) : null;
  2045. var variation = placement ? (0,_getVariation_js__WEBPACK_IMPORTED_MODULE_1__["default"])(placement) : null;
  2046. var commonX = reference.x + reference.width / 2 - element.width / 2;
  2047. var commonY = reference.y + reference.height / 2 - element.height / 2;
  2048. var offsets;
  2049. switch (basePlacement) {
  2050. case _enums_js__WEBPACK_IMPORTED_MODULE_2__.top:
  2051. offsets = {
  2052. x: commonX,
  2053. y: reference.y - element.height
  2054. };
  2055. break;
  2056. case _enums_js__WEBPACK_IMPORTED_MODULE_2__.bottom:
  2057. offsets = {
  2058. x: commonX,
  2059. y: reference.y + reference.height
  2060. };
  2061. break;
  2062. case _enums_js__WEBPACK_IMPORTED_MODULE_2__.right:
  2063. offsets = {
  2064. x: reference.x + reference.width,
  2065. y: commonY
  2066. };
  2067. break;
  2068. case _enums_js__WEBPACK_IMPORTED_MODULE_2__.left:
  2069. offsets = {
  2070. x: reference.x - element.width,
  2071. y: commonY
  2072. };
  2073. break;
  2074. default:
  2075. offsets = {
  2076. x: reference.x,
  2077. y: reference.y
  2078. };
  2079. }
  2080. var mainAxis = basePlacement ? (0,_getMainAxisFromPlacement_js__WEBPACK_IMPORTED_MODULE_3__["default"])(basePlacement) : null;
  2081. if (mainAxis != null) {
  2082. var len = mainAxis === 'y' ? 'height' : 'width';
  2083. switch (variation) {
  2084. case _enums_js__WEBPACK_IMPORTED_MODULE_2__.start:
  2085. offsets[mainAxis] = offsets[mainAxis] - (reference[len] / 2 - element[len] / 2);
  2086. break;
  2087. case _enums_js__WEBPACK_IMPORTED_MODULE_2__.end:
  2088. offsets[mainAxis] = offsets[mainAxis] + (reference[len] / 2 - element[len] / 2);
  2089. break;
  2090. default:
  2091. }
  2092. }
  2093. return offsets;
  2094. }
  2095. /***/ }),
  2096. /***/ "./node_modules/@popperjs/core/lib/utils/debounce.js":
  2097. /*!***********************************************************!*\
  2098. !*** ./node_modules/@popperjs/core/lib/utils/debounce.js ***!
  2099. \***********************************************************/
  2100. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  2101. "use strict";
  2102. __webpack_require__.r(__webpack_exports__);
  2103. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  2104. /* harmony export */ "default": () => (/* binding */ debounce)
  2105. /* harmony export */ });
  2106. function debounce(fn) {
  2107. var pending;
  2108. return function () {
  2109. if (!pending) {
  2110. pending = new Promise(function (resolve) {
  2111. Promise.resolve().then(function () {
  2112. pending = undefined;
  2113. resolve(fn());
  2114. });
  2115. });
  2116. }
  2117. return pending;
  2118. };
  2119. }
  2120. /***/ }),
  2121. /***/ "./node_modules/@popperjs/core/lib/utils/detectOverflow.js":
  2122. /*!*****************************************************************!*\
  2123. !*** ./node_modules/@popperjs/core/lib/utils/detectOverflow.js ***!
  2124. \*****************************************************************/
  2125. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  2126. "use strict";
  2127. __webpack_require__.r(__webpack_exports__);
  2128. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  2129. /* harmony export */ "default": () => (/* binding */ detectOverflow)
  2130. /* harmony export */ });
  2131. /* harmony import */ var _dom_utils_getClippingRect_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../dom-utils/getClippingRect.js */ "./node_modules/@popperjs/core/lib/dom-utils/getClippingRect.js");
  2132. /* harmony import */ var _dom_utils_getDocumentElement_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../dom-utils/getDocumentElement.js */ "./node_modules/@popperjs/core/lib/dom-utils/getDocumentElement.js");
  2133. /* harmony import */ var _dom_utils_getBoundingClientRect_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../dom-utils/getBoundingClientRect.js */ "./node_modules/@popperjs/core/lib/dom-utils/getBoundingClientRect.js");
  2134. /* harmony import */ var _computeOffsets_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./computeOffsets.js */ "./node_modules/@popperjs/core/lib/utils/computeOffsets.js");
  2135. /* harmony import */ var _rectToClientRect_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./rectToClientRect.js */ "./node_modules/@popperjs/core/lib/utils/rectToClientRect.js");
  2136. /* harmony import */ var _enums_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../enums.js */ "./node_modules/@popperjs/core/lib/enums.js");
  2137. /* harmony import */ var _dom_utils_instanceOf_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../dom-utils/instanceOf.js */ "./node_modules/@popperjs/core/lib/dom-utils/instanceOf.js");
  2138. /* harmony import */ var _mergePaddingObject_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./mergePaddingObject.js */ "./node_modules/@popperjs/core/lib/utils/mergePaddingObject.js");
  2139. /* harmony import */ var _expandToHashMap_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./expandToHashMap.js */ "./node_modules/@popperjs/core/lib/utils/expandToHashMap.js");
  2140. // eslint-disable-next-line import/no-unused-modules
  2141. function detectOverflow(state, options) {
  2142. if (options === void 0) {
  2143. options = {};
  2144. }
  2145. var _options = options,
  2146. _options$placement = _options.placement,
  2147. placement = _options$placement === void 0 ? state.placement : _options$placement,
  2148. _options$strategy = _options.strategy,
  2149. strategy = _options$strategy === void 0 ? state.strategy : _options$strategy,
  2150. _options$boundary = _options.boundary,
  2151. boundary = _options$boundary === void 0 ? _enums_js__WEBPACK_IMPORTED_MODULE_0__.clippingParents : _options$boundary,
  2152. _options$rootBoundary = _options.rootBoundary,
  2153. rootBoundary = _options$rootBoundary === void 0 ? _enums_js__WEBPACK_IMPORTED_MODULE_0__.viewport : _options$rootBoundary,
  2154. _options$elementConte = _options.elementContext,
  2155. elementContext = _options$elementConte === void 0 ? _enums_js__WEBPACK_IMPORTED_MODULE_0__.popper : _options$elementConte,
  2156. _options$altBoundary = _options.altBoundary,
  2157. altBoundary = _options$altBoundary === void 0 ? false : _options$altBoundary,
  2158. _options$padding = _options.padding,
  2159. padding = _options$padding === void 0 ? 0 : _options$padding;
  2160. var paddingObject = (0,_mergePaddingObject_js__WEBPACK_IMPORTED_MODULE_1__["default"])(typeof padding !== 'number' ? padding : (0,_expandToHashMap_js__WEBPACK_IMPORTED_MODULE_2__["default"])(padding, _enums_js__WEBPACK_IMPORTED_MODULE_0__.basePlacements));
  2161. var altContext = elementContext === _enums_js__WEBPACK_IMPORTED_MODULE_0__.popper ? _enums_js__WEBPACK_IMPORTED_MODULE_0__.reference : _enums_js__WEBPACK_IMPORTED_MODULE_0__.popper;
  2162. var popperRect = state.rects.popper;
  2163. var element = state.elements[altBoundary ? altContext : elementContext];
  2164. var clippingClientRect = (0,_dom_utils_getClippingRect_js__WEBPACK_IMPORTED_MODULE_3__["default"])((0,_dom_utils_instanceOf_js__WEBPACK_IMPORTED_MODULE_4__.isElement)(element) ? element : element.contextElement || (0,_dom_utils_getDocumentElement_js__WEBPACK_IMPORTED_MODULE_5__["default"])(state.elements.popper), boundary, rootBoundary, strategy);
  2165. var referenceClientRect = (0,_dom_utils_getBoundingClientRect_js__WEBPACK_IMPORTED_MODULE_6__["default"])(state.elements.reference);
  2166. var popperOffsets = (0,_computeOffsets_js__WEBPACK_IMPORTED_MODULE_7__["default"])({
  2167. reference: referenceClientRect,
  2168. element: popperRect,
  2169. strategy: 'absolute',
  2170. placement: placement
  2171. });
  2172. var popperClientRect = (0,_rectToClientRect_js__WEBPACK_IMPORTED_MODULE_8__["default"])(Object.assign({}, popperRect, popperOffsets));
  2173. var elementClientRect = elementContext === _enums_js__WEBPACK_IMPORTED_MODULE_0__.popper ? popperClientRect : referenceClientRect; // positive = overflowing the clipping rect
  2174. // 0 or negative = within the clipping rect
  2175. var overflowOffsets = {
  2176. top: clippingClientRect.top - elementClientRect.top + paddingObject.top,
  2177. bottom: elementClientRect.bottom - clippingClientRect.bottom + paddingObject.bottom,
  2178. left: clippingClientRect.left - elementClientRect.left + paddingObject.left,
  2179. right: elementClientRect.right - clippingClientRect.right + paddingObject.right
  2180. };
  2181. var offsetData = state.modifiersData.offset; // Offsets can be applied only to the popper element
  2182. if (elementContext === _enums_js__WEBPACK_IMPORTED_MODULE_0__.popper && offsetData) {
  2183. var offset = offsetData[placement];
  2184. Object.keys(overflowOffsets).forEach(function (key) {
  2185. var multiply = [_enums_js__WEBPACK_IMPORTED_MODULE_0__.right, _enums_js__WEBPACK_IMPORTED_MODULE_0__.bottom].indexOf(key) >= 0 ? 1 : -1;
  2186. var axis = [_enums_js__WEBPACK_IMPORTED_MODULE_0__.top, _enums_js__WEBPACK_IMPORTED_MODULE_0__.bottom].indexOf(key) >= 0 ? 'y' : 'x';
  2187. overflowOffsets[key] += offset[axis] * multiply;
  2188. });
  2189. }
  2190. return overflowOffsets;
  2191. }
  2192. /***/ }),
  2193. /***/ "./node_modules/@popperjs/core/lib/utils/expandToHashMap.js":
  2194. /*!******************************************************************!*\
  2195. !*** ./node_modules/@popperjs/core/lib/utils/expandToHashMap.js ***!
  2196. \******************************************************************/
  2197. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  2198. "use strict";
  2199. __webpack_require__.r(__webpack_exports__);
  2200. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  2201. /* harmony export */ "default": () => (/* binding */ expandToHashMap)
  2202. /* harmony export */ });
  2203. function expandToHashMap(value, keys) {
  2204. return keys.reduce(function (hashMap, key) {
  2205. hashMap[key] = value;
  2206. return hashMap;
  2207. }, {});
  2208. }
  2209. /***/ }),
  2210. /***/ "./node_modules/@popperjs/core/lib/utils/format.js":
  2211. /*!*********************************************************!*\
  2212. !*** ./node_modules/@popperjs/core/lib/utils/format.js ***!
  2213. \*********************************************************/
  2214. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  2215. "use strict";
  2216. __webpack_require__.r(__webpack_exports__);
  2217. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  2218. /* harmony export */ "default": () => (/* binding */ format)
  2219. /* harmony export */ });
  2220. function format(str) {
  2221. for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {
  2222. args[_key - 1] = arguments[_key];
  2223. }
  2224. return [].concat(args).reduce(function (p, c) {
  2225. return p.replace(/%s/, c);
  2226. }, str);
  2227. }
  2228. /***/ }),
  2229. /***/ "./node_modules/@popperjs/core/lib/utils/getAltAxis.js":
  2230. /*!*************************************************************!*\
  2231. !*** ./node_modules/@popperjs/core/lib/utils/getAltAxis.js ***!
  2232. \*************************************************************/
  2233. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  2234. "use strict";
  2235. __webpack_require__.r(__webpack_exports__);
  2236. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  2237. /* harmony export */ "default": () => (/* binding */ getAltAxis)
  2238. /* harmony export */ });
  2239. function getAltAxis(axis) {
  2240. return axis === 'x' ? 'y' : 'x';
  2241. }
  2242. /***/ }),
  2243. /***/ "./node_modules/@popperjs/core/lib/utils/getBasePlacement.js":
  2244. /*!*******************************************************************!*\
  2245. !*** ./node_modules/@popperjs/core/lib/utils/getBasePlacement.js ***!
  2246. \*******************************************************************/
  2247. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  2248. "use strict";
  2249. __webpack_require__.r(__webpack_exports__);
  2250. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  2251. /* harmony export */ "default": () => (/* binding */ getBasePlacement)
  2252. /* harmony export */ });
  2253. function getBasePlacement(placement) {
  2254. return placement.split('-')[0];
  2255. }
  2256. /***/ }),
  2257. /***/ "./node_modules/@popperjs/core/lib/utils/getFreshSideObject.js":
  2258. /*!*********************************************************************!*\
  2259. !*** ./node_modules/@popperjs/core/lib/utils/getFreshSideObject.js ***!
  2260. \*********************************************************************/
  2261. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  2262. "use strict";
  2263. __webpack_require__.r(__webpack_exports__);
  2264. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  2265. /* harmony export */ "default": () => (/* binding */ getFreshSideObject)
  2266. /* harmony export */ });
  2267. function getFreshSideObject() {
  2268. return {
  2269. top: 0,
  2270. right: 0,
  2271. bottom: 0,
  2272. left: 0
  2273. };
  2274. }
  2275. /***/ }),
  2276. /***/ "./node_modules/@popperjs/core/lib/utils/getMainAxisFromPlacement.js":
  2277. /*!***************************************************************************!*\
  2278. !*** ./node_modules/@popperjs/core/lib/utils/getMainAxisFromPlacement.js ***!
  2279. \***************************************************************************/
  2280. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  2281. "use strict";
  2282. __webpack_require__.r(__webpack_exports__);
  2283. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  2284. /* harmony export */ "default": () => (/* binding */ getMainAxisFromPlacement)
  2285. /* harmony export */ });
  2286. function getMainAxisFromPlacement(placement) {
  2287. return ['top', 'bottom'].indexOf(placement) >= 0 ? 'x' : 'y';
  2288. }
  2289. /***/ }),
  2290. /***/ "./node_modules/@popperjs/core/lib/utils/getOppositePlacement.js":
  2291. /*!***********************************************************************!*\
  2292. !*** ./node_modules/@popperjs/core/lib/utils/getOppositePlacement.js ***!
  2293. \***********************************************************************/
  2294. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  2295. "use strict";
  2296. __webpack_require__.r(__webpack_exports__);
  2297. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  2298. /* harmony export */ "default": () => (/* binding */ getOppositePlacement)
  2299. /* harmony export */ });
  2300. var hash = {
  2301. left: 'right',
  2302. right: 'left',
  2303. bottom: 'top',
  2304. top: 'bottom'
  2305. };
  2306. function getOppositePlacement(placement) {
  2307. return placement.replace(/left|right|bottom|top/g, function (matched) {
  2308. return hash[matched];
  2309. });
  2310. }
  2311. /***/ }),
  2312. /***/ "./node_modules/@popperjs/core/lib/utils/getOppositeVariationPlacement.js":
  2313. /*!********************************************************************************!*\
  2314. !*** ./node_modules/@popperjs/core/lib/utils/getOppositeVariationPlacement.js ***!
  2315. \********************************************************************************/
  2316. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  2317. "use strict";
  2318. __webpack_require__.r(__webpack_exports__);
  2319. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  2320. /* harmony export */ "default": () => (/* binding */ getOppositeVariationPlacement)
  2321. /* harmony export */ });
  2322. var hash = {
  2323. start: 'end',
  2324. end: 'start'
  2325. };
  2326. function getOppositeVariationPlacement(placement) {
  2327. return placement.replace(/start|end/g, function (matched) {
  2328. return hash[matched];
  2329. });
  2330. }
  2331. /***/ }),
  2332. /***/ "./node_modules/@popperjs/core/lib/utils/getVariation.js":
  2333. /*!***************************************************************!*\
  2334. !*** ./node_modules/@popperjs/core/lib/utils/getVariation.js ***!
  2335. \***************************************************************/
  2336. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  2337. "use strict";
  2338. __webpack_require__.r(__webpack_exports__);
  2339. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  2340. /* harmony export */ "default": () => (/* binding */ getVariation)
  2341. /* harmony export */ });
  2342. function getVariation(placement) {
  2343. return placement.split('-')[1];
  2344. }
  2345. /***/ }),
  2346. /***/ "./node_modules/@popperjs/core/lib/utils/math.js":
  2347. /*!*******************************************************!*\
  2348. !*** ./node_modules/@popperjs/core/lib/utils/math.js ***!
  2349. \*******************************************************/
  2350. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  2351. "use strict";
  2352. __webpack_require__.r(__webpack_exports__);
  2353. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  2354. /* harmony export */ "max": () => (/* binding */ max),
  2355. /* harmony export */ "min": () => (/* binding */ min),
  2356. /* harmony export */ "round": () => (/* binding */ round)
  2357. /* harmony export */ });
  2358. var max = Math.max;
  2359. var min = Math.min;
  2360. var round = Math.round;
  2361. /***/ }),
  2362. /***/ "./node_modules/@popperjs/core/lib/utils/mergeByName.js":
  2363. /*!**************************************************************!*\
  2364. !*** ./node_modules/@popperjs/core/lib/utils/mergeByName.js ***!
  2365. \**************************************************************/
  2366. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  2367. "use strict";
  2368. __webpack_require__.r(__webpack_exports__);
  2369. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  2370. /* harmony export */ "default": () => (/* binding */ mergeByName)
  2371. /* harmony export */ });
  2372. function mergeByName(modifiers) {
  2373. var merged = modifiers.reduce(function (merged, current) {
  2374. var existing = merged[current.name];
  2375. merged[current.name] = existing ? Object.assign({}, existing, current, {
  2376. options: Object.assign({}, existing.options, current.options),
  2377. data: Object.assign({}, existing.data, current.data)
  2378. }) : current;
  2379. return merged;
  2380. }, {}); // IE11 does not support Object.values
  2381. return Object.keys(merged).map(function (key) {
  2382. return merged[key];
  2383. });
  2384. }
  2385. /***/ }),
  2386. /***/ "./node_modules/@popperjs/core/lib/utils/mergePaddingObject.js":
  2387. /*!*********************************************************************!*\
  2388. !*** ./node_modules/@popperjs/core/lib/utils/mergePaddingObject.js ***!
  2389. \*********************************************************************/
  2390. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  2391. "use strict";
  2392. __webpack_require__.r(__webpack_exports__);
  2393. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  2394. /* harmony export */ "default": () => (/* binding */ mergePaddingObject)
  2395. /* harmony export */ });
  2396. /* harmony import */ var _getFreshSideObject_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./getFreshSideObject.js */ "./node_modules/@popperjs/core/lib/utils/getFreshSideObject.js");
  2397. function mergePaddingObject(paddingObject) {
  2398. return Object.assign({}, (0,_getFreshSideObject_js__WEBPACK_IMPORTED_MODULE_0__["default"])(), paddingObject);
  2399. }
  2400. /***/ }),
  2401. /***/ "./node_modules/@popperjs/core/lib/utils/orderModifiers.js":
  2402. /*!*****************************************************************!*\
  2403. !*** ./node_modules/@popperjs/core/lib/utils/orderModifiers.js ***!
  2404. \*****************************************************************/
  2405. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  2406. "use strict";
  2407. __webpack_require__.r(__webpack_exports__);
  2408. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  2409. /* harmony export */ "default": () => (/* binding */ orderModifiers)
  2410. /* harmony export */ });
  2411. /* harmony import */ var _enums_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../enums.js */ "./node_modules/@popperjs/core/lib/enums.js");
  2412. // source: https://stackoverflow.com/questions/49875255
  2413. function order(modifiers) {
  2414. var map = new Map();
  2415. var visited = new Set();
  2416. var result = [];
  2417. modifiers.forEach(function (modifier) {
  2418. map.set(modifier.name, modifier);
  2419. }); // On visiting object, check for its dependencies and visit them recursively
  2420. function sort(modifier) {
  2421. visited.add(modifier.name);
  2422. var requires = [].concat(modifier.requires || [], modifier.requiresIfExists || []);
  2423. requires.forEach(function (dep) {
  2424. if (!visited.has(dep)) {
  2425. var depModifier = map.get(dep);
  2426. if (depModifier) {
  2427. sort(depModifier);
  2428. }
  2429. }
  2430. });
  2431. result.push(modifier);
  2432. }
  2433. modifiers.forEach(function (modifier) {
  2434. if (!visited.has(modifier.name)) {
  2435. // check for visited object
  2436. sort(modifier);
  2437. }
  2438. });
  2439. return result;
  2440. }
  2441. function orderModifiers(modifiers) {
  2442. // order based on dependencies
  2443. var orderedModifiers = order(modifiers); // order based on phase
  2444. return _enums_js__WEBPACK_IMPORTED_MODULE_0__.modifierPhases.reduce(function (acc, phase) {
  2445. return acc.concat(orderedModifiers.filter(function (modifier) {
  2446. return modifier.phase === phase;
  2447. }));
  2448. }, []);
  2449. }
  2450. /***/ }),
  2451. /***/ "./node_modules/@popperjs/core/lib/utils/rectToClientRect.js":
  2452. /*!*******************************************************************!*\
  2453. !*** ./node_modules/@popperjs/core/lib/utils/rectToClientRect.js ***!
  2454. \*******************************************************************/
  2455. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  2456. "use strict";
  2457. __webpack_require__.r(__webpack_exports__);
  2458. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  2459. /* harmony export */ "default": () => (/* binding */ rectToClientRect)
  2460. /* harmony export */ });
  2461. function rectToClientRect(rect) {
  2462. return Object.assign({}, rect, {
  2463. left: rect.x,
  2464. top: rect.y,
  2465. right: rect.x + rect.width,
  2466. bottom: rect.y + rect.height
  2467. });
  2468. }
  2469. /***/ }),
  2470. /***/ "./node_modules/@popperjs/core/lib/utils/uniqueBy.js":
  2471. /*!***********************************************************!*\
  2472. !*** ./node_modules/@popperjs/core/lib/utils/uniqueBy.js ***!
  2473. \***********************************************************/
  2474. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  2475. "use strict";
  2476. __webpack_require__.r(__webpack_exports__);
  2477. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  2478. /* harmony export */ "default": () => (/* binding */ uniqueBy)
  2479. /* harmony export */ });
  2480. function uniqueBy(arr, fn) {
  2481. var identifiers = new Set();
  2482. return arr.filter(function (item) {
  2483. var identifier = fn(item);
  2484. if (!identifiers.has(identifier)) {
  2485. identifiers.add(identifier);
  2486. return true;
  2487. }
  2488. });
  2489. }
  2490. /***/ }),
  2491. /***/ "./node_modules/@popperjs/core/lib/utils/userAgent.js":
  2492. /*!************************************************************!*\
  2493. !*** ./node_modules/@popperjs/core/lib/utils/userAgent.js ***!
  2494. \************************************************************/
  2495. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  2496. "use strict";
  2497. __webpack_require__.r(__webpack_exports__);
  2498. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  2499. /* harmony export */ "default": () => (/* binding */ getUAString)
  2500. /* harmony export */ });
  2501. function getUAString() {
  2502. var uaData = navigator.userAgentData;
  2503. if (uaData != null && uaData.brands) {
  2504. return uaData.brands.map(function (item) {
  2505. return item.brand + "/" + item.version;
  2506. }).join(' ');
  2507. }
  2508. return navigator.userAgent;
  2509. }
  2510. /***/ }),
  2511. /***/ "./node_modules/@popperjs/core/lib/utils/validateModifiers.js":
  2512. /*!********************************************************************!*\
  2513. !*** ./node_modules/@popperjs/core/lib/utils/validateModifiers.js ***!
  2514. \********************************************************************/
  2515. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  2516. "use strict";
  2517. __webpack_require__.r(__webpack_exports__);
  2518. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  2519. /* harmony export */ "default": () => (/* binding */ validateModifiers)
  2520. /* harmony export */ });
  2521. /* harmony import */ var _format_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./format.js */ "./node_modules/@popperjs/core/lib/utils/format.js");
  2522. /* harmony import */ var _enums_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../enums.js */ "./node_modules/@popperjs/core/lib/enums.js");
  2523. var INVALID_MODIFIER_ERROR = 'Popper: modifier "%s" provided an invalid %s property, expected %s but got %s';
  2524. var MISSING_DEPENDENCY_ERROR = 'Popper: modifier "%s" requires "%s", but "%s" modifier is not available';
  2525. var VALID_PROPERTIES = ['name', 'enabled', 'phase', 'fn', 'effect', 'requires', 'options'];
  2526. function validateModifiers(modifiers) {
  2527. modifiers.forEach(function (modifier) {
  2528. [].concat(Object.keys(modifier), VALID_PROPERTIES) // IE11-compatible replacement for `new Set(iterable)`
  2529. .filter(function (value, index, self) {
  2530. return self.indexOf(value) === index;
  2531. }).forEach(function (key) {
  2532. switch (key) {
  2533. case 'name':
  2534. if (typeof modifier.name !== 'string') {
  2535. console.error((0,_format_js__WEBPACK_IMPORTED_MODULE_0__["default"])(INVALID_MODIFIER_ERROR, String(modifier.name), '"name"', '"string"', "\"" + String(modifier.name) + "\""));
  2536. }
  2537. break;
  2538. case 'enabled':
  2539. if (typeof modifier.enabled !== 'boolean') {
  2540. console.error((0,_format_js__WEBPACK_IMPORTED_MODULE_0__["default"])(INVALID_MODIFIER_ERROR, modifier.name, '"enabled"', '"boolean"', "\"" + String(modifier.enabled) + "\""));
  2541. }
  2542. break;
  2543. case 'phase':
  2544. if (_enums_js__WEBPACK_IMPORTED_MODULE_1__.modifierPhases.indexOf(modifier.phase) < 0) {
  2545. console.error((0,_format_js__WEBPACK_IMPORTED_MODULE_0__["default"])(INVALID_MODIFIER_ERROR, modifier.name, '"phase"', "either " + _enums_js__WEBPACK_IMPORTED_MODULE_1__.modifierPhases.join(', '), "\"" + String(modifier.phase) + "\""));
  2546. }
  2547. break;
  2548. case 'fn':
  2549. if (typeof modifier.fn !== 'function') {
  2550. console.error((0,_format_js__WEBPACK_IMPORTED_MODULE_0__["default"])(INVALID_MODIFIER_ERROR, modifier.name, '"fn"', '"function"', "\"" + String(modifier.fn) + "\""));
  2551. }
  2552. break;
  2553. case 'effect':
  2554. if (modifier.effect != null && typeof modifier.effect !== 'function') {
  2555. console.error((0,_format_js__WEBPACK_IMPORTED_MODULE_0__["default"])(INVALID_MODIFIER_ERROR, modifier.name, '"effect"', '"function"', "\"" + String(modifier.fn) + "\""));
  2556. }
  2557. break;
  2558. case 'requires':
  2559. if (modifier.requires != null && !Array.isArray(modifier.requires)) {
  2560. console.error((0,_format_js__WEBPACK_IMPORTED_MODULE_0__["default"])(INVALID_MODIFIER_ERROR, modifier.name, '"requires"', '"array"', "\"" + String(modifier.requires) + "\""));
  2561. }
  2562. break;
  2563. case 'requiresIfExists':
  2564. if (!Array.isArray(modifier.requiresIfExists)) {
  2565. console.error((0,_format_js__WEBPACK_IMPORTED_MODULE_0__["default"])(INVALID_MODIFIER_ERROR, modifier.name, '"requiresIfExists"', '"array"', "\"" + String(modifier.requiresIfExists) + "\""));
  2566. }
  2567. break;
  2568. case 'options':
  2569. case 'data':
  2570. break;
  2571. default:
  2572. console.error("PopperJS: an invalid property has been provided to the \"" + modifier.name + "\" modifier, valid properties are " + VALID_PROPERTIES.map(function (s) {
  2573. return "\"" + s + "\"";
  2574. }).join(', ') + "; but \"" + key + "\" was provided.");
  2575. }
  2576. modifier.requires && modifier.requires.forEach(function (requirement) {
  2577. if (modifiers.find(function (mod) {
  2578. return mod.name === requirement;
  2579. }) == null) {
  2580. console.error((0,_format_js__WEBPACK_IMPORTED_MODULE_0__["default"])(MISSING_DEPENDENCY_ERROR, String(modifier.name), requirement, requirement));
  2581. }
  2582. });
  2583. });
  2584. });
  2585. }
  2586. /***/ }),
  2587. /***/ "./node_modules/@popperjs/core/lib/utils/within.js":
  2588. /*!*********************************************************!*\
  2589. !*** ./node_modules/@popperjs/core/lib/utils/within.js ***!
  2590. \*********************************************************/
  2591. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  2592. "use strict";
  2593. __webpack_require__.r(__webpack_exports__);
  2594. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  2595. /* harmony export */ "within": () => (/* binding */ within),
  2596. /* harmony export */ "withinMaxClamp": () => (/* binding */ withinMaxClamp)
  2597. /* harmony export */ });
  2598. /* harmony import */ var _math_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./math.js */ "./node_modules/@popperjs/core/lib/utils/math.js");
  2599. function within(min, value, max) {
  2600. return (0,_math_js__WEBPACK_IMPORTED_MODULE_0__.max)(min, (0,_math_js__WEBPACK_IMPORTED_MODULE_0__.min)(value, max));
  2601. }
  2602. function withinMaxClamp(min, value, max) {
  2603. var v = within(min, value, max);
  2604. return v > max ? max : v;
  2605. }
  2606. /***/ }),
  2607. /***/ "./node_modules/axios/index.js":
  2608. /*!*************************************!*\
  2609. !*** ./node_modules/axios/index.js ***!
  2610. \*************************************/
  2611. /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  2612. module.exports = __webpack_require__(/*! ./lib/axios */ "./node_modules/axios/lib/axios.js");
  2613. /***/ }),
  2614. /***/ "./node_modules/axios/lib/adapters/xhr.js":
  2615. /*!************************************************!*\
  2616. !*** ./node_modules/axios/lib/adapters/xhr.js ***!
  2617. \************************************************/
  2618. /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  2619. "use strict";
  2620. var utils = __webpack_require__(/*! ./../utils */ "./node_modules/axios/lib/utils.js");
  2621. var settle = __webpack_require__(/*! ./../core/settle */ "./node_modules/axios/lib/core/settle.js");
  2622. var cookies = __webpack_require__(/*! ./../helpers/cookies */ "./node_modules/axios/lib/helpers/cookies.js");
  2623. var buildURL = __webpack_require__(/*! ./../helpers/buildURL */ "./node_modules/axios/lib/helpers/buildURL.js");
  2624. var buildFullPath = __webpack_require__(/*! ../core/buildFullPath */ "./node_modules/axios/lib/core/buildFullPath.js");
  2625. var parseHeaders = __webpack_require__(/*! ./../helpers/parseHeaders */ "./node_modules/axios/lib/helpers/parseHeaders.js");
  2626. var isURLSameOrigin = __webpack_require__(/*! ./../helpers/isURLSameOrigin */ "./node_modules/axios/lib/helpers/isURLSameOrigin.js");
  2627. var createError = __webpack_require__(/*! ../core/createError */ "./node_modules/axios/lib/core/createError.js");
  2628. var defaults = __webpack_require__(/*! ../defaults */ "./node_modules/axios/lib/defaults.js");
  2629. var Cancel = __webpack_require__(/*! ../cancel/Cancel */ "./node_modules/axios/lib/cancel/Cancel.js");
  2630. module.exports = function xhrAdapter(config) {
  2631. return new Promise(function dispatchXhrRequest(resolve, reject) {
  2632. var requestData = config.data;
  2633. var requestHeaders = config.headers;
  2634. var responseType = config.responseType;
  2635. var onCanceled;
  2636. function done() {
  2637. if (config.cancelToken) {
  2638. config.cancelToken.unsubscribe(onCanceled);
  2639. }
  2640. if (config.signal) {
  2641. config.signal.removeEventListener('abort', onCanceled);
  2642. }
  2643. }
  2644. if (utils.isFormData(requestData)) {
  2645. delete requestHeaders['Content-Type']; // Let the browser set it
  2646. }
  2647. var request = new XMLHttpRequest();
  2648. // HTTP basic authentication
  2649. if (config.auth) {
  2650. var username = config.auth.username || '';
  2651. var password = config.auth.password ? unescape(encodeURIComponent(config.auth.password)) : '';
  2652. requestHeaders.Authorization = 'Basic ' + btoa(username + ':' + password);
  2653. }
  2654. var fullPath = buildFullPath(config.baseURL, config.url);
  2655. request.open(config.method.toUpperCase(), buildURL(fullPath, config.params, config.paramsSerializer), true);
  2656. // Set the request timeout in MS
  2657. request.timeout = config.timeout;
  2658. function onloadend() {
  2659. if (!request) {
  2660. return;
  2661. }
  2662. // Prepare the response
  2663. var responseHeaders = 'getAllResponseHeaders' in request ? parseHeaders(request.getAllResponseHeaders()) : null;
  2664. var responseData = !responseType || responseType === 'text' || responseType === 'json' ?
  2665. request.responseText : request.response;
  2666. var response = {
  2667. data: responseData,
  2668. status: request.status,
  2669. statusText: request.statusText,
  2670. headers: responseHeaders,
  2671. config: config,
  2672. request: request
  2673. };
  2674. settle(function _resolve(value) {
  2675. resolve(value);
  2676. done();
  2677. }, function _reject(err) {
  2678. reject(err);
  2679. done();
  2680. }, response);
  2681. // Clean up request
  2682. request = null;
  2683. }
  2684. if ('onloadend' in request) {
  2685. // Use onloadend if available
  2686. request.onloadend = onloadend;
  2687. } else {
  2688. // Listen for ready state to emulate onloadend
  2689. request.onreadystatechange = function handleLoad() {
  2690. if (!request || request.readyState !== 4) {
  2691. return;
  2692. }
  2693. // The request errored out and we didn't get a response, this will be
  2694. // handled by onerror instead
  2695. // With one exception: request that using file: protocol, most browsers
  2696. // will return status as 0 even though it's a successful request
  2697. if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf('file:') === 0)) {
  2698. return;
  2699. }
  2700. // readystate handler is calling before onerror or ontimeout handlers,
  2701. // so we should call onloadend on the next 'tick'
  2702. setTimeout(onloadend);
  2703. };
  2704. }
  2705. // Handle browser request cancellation (as opposed to a manual cancellation)
  2706. request.onabort = function handleAbort() {
  2707. if (!request) {
  2708. return;
  2709. }
  2710. reject(createError('Request aborted', config, 'ECONNABORTED', request));
  2711. // Clean up request
  2712. request = null;
  2713. };
  2714. // Handle low level network errors
  2715. request.onerror = function handleError() {
  2716. // Real errors are hidden from us by the browser
  2717. // onerror should only fire if it's a network error
  2718. reject(createError('Network Error', config, null, request));
  2719. // Clean up request
  2720. request = null;
  2721. };
  2722. // Handle timeout
  2723. request.ontimeout = function handleTimeout() {
  2724. var timeoutErrorMessage = config.timeout ? 'timeout of ' + config.timeout + 'ms exceeded' : 'timeout exceeded';
  2725. var transitional = config.transitional || defaults.transitional;
  2726. if (config.timeoutErrorMessage) {
  2727. timeoutErrorMessage = config.timeoutErrorMessage;
  2728. }
  2729. reject(createError(
  2730. timeoutErrorMessage,
  2731. config,
  2732. transitional.clarifyTimeoutError ? 'ETIMEDOUT' : 'ECONNABORTED',
  2733. request));
  2734. // Clean up request
  2735. request = null;
  2736. };
  2737. // Add xsrf header
  2738. // This is only done if running in a standard browser environment.
  2739. // Specifically not if we're in a web worker, or react-native.
  2740. if (utils.isStandardBrowserEnv()) {
  2741. // Add xsrf header
  2742. var xsrfValue = (config.withCredentials || isURLSameOrigin(fullPath)) && config.xsrfCookieName ?
  2743. cookies.read(config.xsrfCookieName) :
  2744. undefined;
  2745. if (xsrfValue) {
  2746. requestHeaders[config.xsrfHeaderName] = xsrfValue;
  2747. }
  2748. }
  2749. // Add headers to the request
  2750. if ('setRequestHeader' in request) {
  2751. utils.forEach(requestHeaders, function setRequestHeader(val, key) {
  2752. if (typeof requestData === 'undefined' && key.toLowerCase() === 'content-type') {
  2753. // Remove Content-Type if data is undefined
  2754. delete requestHeaders[key];
  2755. } else {
  2756. // Otherwise add header to the request
  2757. request.setRequestHeader(key, val);
  2758. }
  2759. });
  2760. }
  2761. // Add withCredentials to request if needed
  2762. if (!utils.isUndefined(config.withCredentials)) {
  2763. request.withCredentials = !!config.withCredentials;
  2764. }
  2765. // Add responseType to request if needed
  2766. if (responseType && responseType !== 'json') {
  2767. request.responseType = config.responseType;
  2768. }
  2769. // Handle progress if needed
  2770. if (typeof config.onDownloadProgress === 'function') {
  2771. request.addEventListener('progress', config.onDownloadProgress);
  2772. }
  2773. // Not all browsers support upload events
  2774. if (typeof config.onUploadProgress === 'function' && request.upload) {
  2775. request.upload.addEventListener('progress', config.onUploadProgress);
  2776. }
  2777. if (config.cancelToken || config.signal) {
  2778. // Handle cancellation
  2779. // eslint-disable-next-line func-names
  2780. onCanceled = function(cancel) {
  2781. if (!request) {
  2782. return;
  2783. }
  2784. reject(!cancel || (cancel && cancel.type) ? new Cancel('canceled') : cancel);
  2785. request.abort();
  2786. request = null;
  2787. };
  2788. config.cancelToken && config.cancelToken.subscribe(onCanceled);
  2789. if (config.signal) {
  2790. config.signal.aborted ? onCanceled() : config.signal.addEventListener('abort', onCanceled);
  2791. }
  2792. }
  2793. if (!requestData) {
  2794. requestData = null;
  2795. }
  2796. // Send the request
  2797. request.send(requestData);
  2798. });
  2799. };
  2800. /***/ }),
  2801. /***/ "./node_modules/axios/lib/axios.js":
  2802. /*!*****************************************!*\
  2803. !*** ./node_modules/axios/lib/axios.js ***!
  2804. \*****************************************/
  2805. /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  2806. "use strict";
  2807. var utils = __webpack_require__(/*! ./utils */ "./node_modules/axios/lib/utils.js");
  2808. var bind = __webpack_require__(/*! ./helpers/bind */ "./node_modules/axios/lib/helpers/bind.js");
  2809. var Axios = __webpack_require__(/*! ./core/Axios */ "./node_modules/axios/lib/core/Axios.js");
  2810. var mergeConfig = __webpack_require__(/*! ./core/mergeConfig */ "./node_modules/axios/lib/core/mergeConfig.js");
  2811. var defaults = __webpack_require__(/*! ./defaults */ "./node_modules/axios/lib/defaults.js");
  2812. /**
  2813. * Create an instance of Axios
  2814. *
  2815. * @param {Object} defaultConfig The default config for the instance
  2816. * @return {Axios} A new instance of Axios
  2817. */
  2818. function createInstance(defaultConfig) {
  2819. var context = new Axios(defaultConfig);
  2820. var instance = bind(Axios.prototype.request, context);
  2821. // Copy axios.prototype to instance
  2822. utils.extend(instance, Axios.prototype, context);
  2823. // Copy context to instance
  2824. utils.extend(instance, context);
  2825. // Factory for creating new instances
  2826. instance.create = function create(instanceConfig) {
  2827. return createInstance(mergeConfig(defaultConfig, instanceConfig));
  2828. };
  2829. return instance;
  2830. }
  2831. // Create the default instance to be exported
  2832. var axios = createInstance(defaults);
  2833. // Expose Axios class to allow class inheritance
  2834. axios.Axios = Axios;
  2835. // Expose Cancel & CancelToken
  2836. axios.Cancel = __webpack_require__(/*! ./cancel/Cancel */ "./node_modules/axios/lib/cancel/Cancel.js");
  2837. axios.CancelToken = __webpack_require__(/*! ./cancel/CancelToken */ "./node_modules/axios/lib/cancel/CancelToken.js");
  2838. axios.isCancel = __webpack_require__(/*! ./cancel/isCancel */ "./node_modules/axios/lib/cancel/isCancel.js");
  2839. axios.VERSION = (__webpack_require__(/*! ./env/data */ "./node_modules/axios/lib/env/data.js").version);
  2840. // Expose all/spread
  2841. axios.all = function all(promises) {
  2842. return Promise.all(promises);
  2843. };
  2844. axios.spread = __webpack_require__(/*! ./helpers/spread */ "./node_modules/axios/lib/helpers/spread.js");
  2845. // Expose isAxiosError
  2846. axios.isAxiosError = __webpack_require__(/*! ./helpers/isAxiosError */ "./node_modules/axios/lib/helpers/isAxiosError.js");
  2847. module.exports = axios;
  2848. // Allow use of default import syntax in TypeScript
  2849. module.exports["default"] = axios;
  2850. /***/ }),
  2851. /***/ "./node_modules/axios/lib/cancel/Cancel.js":
  2852. /*!*************************************************!*\
  2853. !*** ./node_modules/axios/lib/cancel/Cancel.js ***!
  2854. \*************************************************/
  2855. /***/ ((module) => {
  2856. "use strict";
  2857. /**
  2858. * A `Cancel` is an object that is thrown when an operation is canceled.
  2859. *
  2860. * @class
  2861. * @param {string=} message The message.
  2862. */
  2863. function Cancel(message) {
  2864. this.message = message;
  2865. }
  2866. Cancel.prototype.toString = function toString() {
  2867. return 'Cancel' + (this.message ? ': ' + this.message : '');
  2868. };
  2869. Cancel.prototype.__CANCEL__ = true;
  2870. module.exports = Cancel;
  2871. /***/ }),
  2872. /***/ "./node_modules/axios/lib/cancel/CancelToken.js":
  2873. /*!******************************************************!*\
  2874. !*** ./node_modules/axios/lib/cancel/CancelToken.js ***!
  2875. \******************************************************/
  2876. /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  2877. "use strict";
  2878. var Cancel = __webpack_require__(/*! ./Cancel */ "./node_modules/axios/lib/cancel/Cancel.js");
  2879. /**
  2880. * A `CancelToken` is an object that can be used to request cancellation of an operation.
  2881. *
  2882. * @class
  2883. * @param {Function} executor The executor function.
  2884. */
  2885. function CancelToken(executor) {
  2886. if (typeof executor !== 'function') {
  2887. throw new TypeError('executor must be a function.');
  2888. }
  2889. var resolvePromise;
  2890. this.promise = new Promise(function promiseExecutor(resolve) {
  2891. resolvePromise = resolve;
  2892. });
  2893. var token = this;
  2894. // eslint-disable-next-line func-names
  2895. this.promise.then(function(cancel) {
  2896. if (!token._listeners) return;
  2897. var i;
  2898. var l = token._listeners.length;
  2899. for (i = 0; i < l; i++) {
  2900. token._listeners[i](cancel);
  2901. }
  2902. token._listeners = null;
  2903. });
  2904. // eslint-disable-next-line func-names
  2905. this.promise.then = function(onfulfilled) {
  2906. var _resolve;
  2907. // eslint-disable-next-line func-names
  2908. var promise = new Promise(function(resolve) {
  2909. token.subscribe(resolve);
  2910. _resolve = resolve;
  2911. }).then(onfulfilled);
  2912. promise.cancel = function reject() {
  2913. token.unsubscribe(_resolve);
  2914. };
  2915. return promise;
  2916. };
  2917. executor(function cancel(message) {
  2918. if (token.reason) {
  2919. // Cancellation has already been requested
  2920. return;
  2921. }
  2922. token.reason = new Cancel(message);
  2923. resolvePromise(token.reason);
  2924. });
  2925. }
  2926. /**
  2927. * Throws a `Cancel` if cancellation has been requested.
  2928. */
  2929. CancelToken.prototype.throwIfRequested = function throwIfRequested() {
  2930. if (this.reason) {
  2931. throw this.reason;
  2932. }
  2933. };
  2934. /**
  2935. * Subscribe to the cancel signal
  2936. */
  2937. CancelToken.prototype.subscribe = function subscribe(listener) {
  2938. if (this.reason) {
  2939. listener(this.reason);
  2940. return;
  2941. }
  2942. if (this._listeners) {
  2943. this._listeners.push(listener);
  2944. } else {
  2945. this._listeners = [listener];
  2946. }
  2947. };
  2948. /**
  2949. * Unsubscribe from the cancel signal
  2950. */
  2951. CancelToken.prototype.unsubscribe = function unsubscribe(listener) {
  2952. if (!this._listeners) {
  2953. return;
  2954. }
  2955. var index = this._listeners.indexOf(listener);
  2956. if (index !== -1) {
  2957. this._listeners.splice(index, 1);
  2958. }
  2959. };
  2960. /**
  2961. * Returns an object that contains a new `CancelToken` and a function that, when called,
  2962. * cancels the `CancelToken`.
  2963. */
  2964. CancelToken.source = function source() {
  2965. var cancel;
  2966. var token = new CancelToken(function executor(c) {
  2967. cancel = c;
  2968. });
  2969. return {
  2970. token: token,
  2971. cancel: cancel
  2972. };
  2973. };
  2974. module.exports = CancelToken;
  2975. /***/ }),
  2976. /***/ "./node_modules/axios/lib/cancel/isCancel.js":
  2977. /*!***************************************************!*\
  2978. !*** ./node_modules/axios/lib/cancel/isCancel.js ***!
  2979. \***************************************************/
  2980. /***/ ((module) => {
  2981. "use strict";
  2982. module.exports = function isCancel(value) {
  2983. return !!(value && value.__CANCEL__);
  2984. };
  2985. /***/ }),
  2986. /***/ "./node_modules/axios/lib/core/Axios.js":
  2987. /*!**********************************************!*\
  2988. !*** ./node_modules/axios/lib/core/Axios.js ***!
  2989. \**********************************************/
  2990. /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  2991. "use strict";
  2992. var utils = __webpack_require__(/*! ./../utils */ "./node_modules/axios/lib/utils.js");
  2993. var buildURL = __webpack_require__(/*! ../helpers/buildURL */ "./node_modules/axios/lib/helpers/buildURL.js");
  2994. var InterceptorManager = __webpack_require__(/*! ./InterceptorManager */ "./node_modules/axios/lib/core/InterceptorManager.js");
  2995. var dispatchRequest = __webpack_require__(/*! ./dispatchRequest */ "./node_modules/axios/lib/core/dispatchRequest.js");
  2996. var mergeConfig = __webpack_require__(/*! ./mergeConfig */ "./node_modules/axios/lib/core/mergeConfig.js");
  2997. var validator = __webpack_require__(/*! ../helpers/validator */ "./node_modules/axios/lib/helpers/validator.js");
  2998. var validators = validator.validators;
  2999. /**
  3000. * Create a new instance of Axios
  3001. *
  3002. * @param {Object} instanceConfig The default config for the instance
  3003. */
  3004. function Axios(instanceConfig) {
  3005. this.defaults = instanceConfig;
  3006. this.interceptors = {
  3007. request: new InterceptorManager(),
  3008. response: new InterceptorManager()
  3009. };
  3010. }
  3011. /**
  3012. * Dispatch a request
  3013. *
  3014. * @param {Object} config The config specific for this request (merged with this.defaults)
  3015. */
  3016. Axios.prototype.request = function request(configOrUrl, config) {
  3017. /*eslint no-param-reassign:0*/
  3018. // Allow for axios('example/url'[, config]) a la fetch API
  3019. if (typeof configOrUrl === 'string') {
  3020. config = config || {};
  3021. config.url = configOrUrl;
  3022. } else {
  3023. config = configOrUrl || {};
  3024. }
  3025. if (!config.url) {
  3026. throw new Error('Provided config url is not valid');
  3027. }
  3028. config = mergeConfig(this.defaults, config);
  3029. // Set config.method
  3030. if (config.method) {
  3031. config.method = config.method.toLowerCase();
  3032. } else if (this.defaults.method) {
  3033. config.method = this.defaults.method.toLowerCase();
  3034. } else {
  3035. config.method = 'get';
  3036. }
  3037. var transitional = config.transitional;
  3038. if (transitional !== undefined) {
  3039. validator.assertOptions(transitional, {
  3040. silentJSONParsing: validators.transitional(validators.boolean),
  3041. forcedJSONParsing: validators.transitional(validators.boolean),
  3042. clarifyTimeoutError: validators.transitional(validators.boolean)
  3043. }, false);
  3044. }
  3045. // filter out skipped interceptors
  3046. var requestInterceptorChain = [];
  3047. var synchronousRequestInterceptors = true;
  3048. this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) {
  3049. if (typeof interceptor.runWhen === 'function' && interceptor.runWhen(config) === false) {
  3050. return;
  3051. }
  3052. synchronousRequestInterceptors = synchronousRequestInterceptors && interceptor.synchronous;
  3053. requestInterceptorChain.unshift(interceptor.fulfilled, interceptor.rejected);
  3054. });
  3055. var responseInterceptorChain = [];
  3056. this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) {
  3057. responseInterceptorChain.push(interceptor.fulfilled, interceptor.rejected);
  3058. });
  3059. var promise;
  3060. if (!synchronousRequestInterceptors) {
  3061. var chain = [dispatchRequest, undefined];
  3062. Array.prototype.unshift.apply(chain, requestInterceptorChain);
  3063. chain = chain.concat(responseInterceptorChain);
  3064. promise = Promise.resolve(config);
  3065. while (chain.length) {
  3066. promise = promise.then(chain.shift(), chain.shift());
  3067. }
  3068. return promise;
  3069. }
  3070. var newConfig = config;
  3071. while (requestInterceptorChain.length) {
  3072. var onFulfilled = requestInterceptorChain.shift();
  3073. var onRejected = requestInterceptorChain.shift();
  3074. try {
  3075. newConfig = onFulfilled(newConfig);
  3076. } catch (error) {
  3077. onRejected(error);
  3078. break;
  3079. }
  3080. }
  3081. try {
  3082. promise = dispatchRequest(newConfig);
  3083. } catch (error) {
  3084. return Promise.reject(error);
  3085. }
  3086. while (responseInterceptorChain.length) {
  3087. promise = promise.then(responseInterceptorChain.shift(), responseInterceptorChain.shift());
  3088. }
  3089. return promise;
  3090. };
  3091. Axios.prototype.getUri = function getUri(config) {
  3092. if (!config.url) {
  3093. throw new Error('Provided config url is not valid');
  3094. }
  3095. config = mergeConfig(this.defaults, config);
  3096. return buildURL(config.url, config.params, config.paramsSerializer).replace(/^\?/, '');
  3097. };
  3098. // Provide aliases for supported request methods
  3099. utils.forEach(['delete', 'get', 'head', 'options'], function forEachMethodNoData(method) {
  3100. /*eslint func-names:0*/
  3101. Axios.prototype[method] = function(url, config) {
  3102. return this.request(mergeConfig(config || {}, {
  3103. method: method,
  3104. url: url,
  3105. data: (config || {}).data
  3106. }));
  3107. };
  3108. });
  3109. utils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {
  3110. /*eslint func-names:0*/
  3111. Axios.prototype[method] = function(url, data, config) {
  3112. return this.request(mergeConfig(config || {}, {
  3113. method: method,
  3114. url: url,
  3115. data: data
  3116. }));
  3117. };
  3118. });
  3119. module.exports = Axios;
  3120. /***/ }),
  3121. /***/ "./node_modules/axios/lib/core/InterceptorManager.js":
  3122. /*!***********************************************************!*\
  3123. !*** ./node_modules/axios/lib/core/InterceptorManager.js ***!
  3124. \***********************************************************/
  3125. /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  3126. "use strict";
  3127. var utils = __webpack_require__(/*! ./../utils */ "./node_modules/axios/lib/utils.js");
  3128. function InterceptorManager() {
  3129. this.handlers = [];
  3130. }
  3131. /**
  3132. * Add a new interceptor to the stack
  3133. *
  3134. * @param {Function} fulfilled The function to handle `then` for a `Promise`
  3135. * @param {Function} rejected The function to handle `reject` for a `Promise`
  3136. *
  3137. * @return {Number} An ID used to remove interceptor later
  3138. */
  3139. InterceptorManager.prototype.use = function use(fulfilled, rejected, options) {
  3140. this.handlers.push({
  3141. fulfilled: fulfilled,
  3142. rejected: rejected,
  3143. synchronous: options ? options.synchronous : false,
  3144. runWhen: options ? options.runWhen : null
  3145. });
  3146. return this.handlers.length - 1;
  3147. };
  3148. /**
  3149. * Remove an interceptor from the stack
  3150. *
  3151. * @param {Number} id The ID that was returned by `use`
  3152. */
  3153. InterceptorManager.prototype.eject = function eject(id) {
  3154. if (this.handlers[id]) {
  3155. this.handlers[id] = null;
  3156. }
  3157. };
  3158. /**
  3159. * Iterate over all the registered interceptors
  3160. *
  3161. * This method is particularly useful for skipping over any
  3162. * interceptors that may have become `null` calling `eject`.
  3163. *
  3164. * @param {Function} fn The function to call for each interceptor
  3165. */
  3166. InterceptorManager.prototype.forEach = function forEach(fn) {
  3167. utils.forEach(this.handlers, function forEachHandler(h) {
  3168. if (h !== null) {
  3169. fn(h);
  3170. }
  3171. });
  3172. };
  3173. module.exports = InterceptorManager;
  3174. /***/ }),
  3175. /***/ "./node_modules/axios/lib/core/buildFullPath.js":
  3176. /*!******************************************************!*\
  3177. !*** ./node_modules/axios/lib/core/buildFullPath.js ***!
  3178. \******************************************************/
  3179. /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  3180. "use strict";
  3181. var isAbsoluteURL = __webpack_require__(/*! ../helpers/isAbsoluteURL */ "./node_modules/axios/lib/helpers/isAbsoluteURL.js");
  3182. var combineURLs = __webpack_require__(/*! ../helpers/combineURLs */ "./node_modules/axios/lib/helpers/combineURLs.js");
  3183. /**
  3184. * Creates a new URL by combining the baseURL with the requestedURL,
  3185. * only when the requestedURL is not already an absolute URL.
  3186. * If the requestURL is absolute, this function returns the requestedURL untouched.
  3187. *
  3188. * @param {string} baseURL The base URL
  3189. * @param {string} requestedURL Absolute or relative URL to combine
  3190. * @returns {string} The combined full path
  3191. */
  3192. module.exports = function buildFullPath(baseURL, requestedURL) {
  3193. if (baseURL && !isAbsoluteURL(requestedURL)) {
  3194. return combineURLs(baseURL, requestedURL);
  3195. }
  3196. return requestedURL;
  3197. };
  3198. /***/ }),
  3199. /***/ "./node_modules/axios/lib/core/createError.js":
  3200. /*!****************************************************!*\
  3201. !*** ./node_modules/axios/lib/core/createError.js ***!
  3202. \****************************************************/
  3203. /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  3204. "use strict";
  3205. var enhanceError = __webpack_require__(/*! ./enhanceError */ "./node_modules/axios/lib/core/enhanceError.js");
  3206. /**
  3207. * Create an Error with the specified message, config, error code, request and response.
  3208. *
  3209. * @param {string} message The error message.
  3210. * @param {Object} config The config.
  3211. * @param {string} [code] The error code (for example, 'ECONNABORTED').
  3212. * @param {Object} [request] The request.
  3213. * @param {Object} [response] The response.
  3214. * @returns {Error} The created error.
  3215. */
  3216. module.exports = function createError(message, config, code, request, response) {
  3217. var error = new Error(message);
  3218. return enhanceError(error, config, code, request, response);
  3219. };
  3220. /***/ }),
  3221. /***/ "./node_modules/axios/lib/core/dispatchRequest.js":
  3222. /*!********************************************************!*\
  3223. !*** ./node_modules/axios/lib/core/dispatchRequest.js ***!
  3224. \********************************************************/
  3225. /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  3226. "use strict";
  3227. var utils = __webpack_require__(/*! ./../utils */ "./node_modules/axios/lib/utils.js");
  3228. var transformData = __webpack_require__(/*! ./transformData */ "./node_modules/axios/lib/core/transformData.js");
  3229. var isCancel = __webpack_require__(/*! ../cancel/isCancel */ "./node_modules/axios/lib/cancel/isCancel.js");
  3230. var defaults = __webpack_require__(/*! ../defaults */ "./node_modules/axios/lib/defaults.js");
  3231. var Cancel = __webpack_require__(/*! ../cancel/Cancel */ "./node_modules/axios/lib/cancel/Cancel.js");
  3232. /**
  3233. * Throws a `Cancel` if cancellation has been requested.
  3234. */
  3235. function throwIfCancellationRequested(config) {
  3236. if (config.cancelToken) {
  3237. config.cancelToken.throwIfRequested();
  3238. }
  3239. if (config.signal && config.signal.aborted) {
  3240. throw new Cancel('canceled');
  3241. }
  3242. }
  3243. /**
  3244. * Dispatch a request to the server using the configured adapter.
  3245. *
  3246. * @param {object} config The config that is to be used for the request
  3247. * @returns {Promise} The Promise to be fulfilled
  3248. */
  3249. module.exports = function dispatchRequest(config) {
  3250. throwIfCancellationRequested(config);
  3251. // Ensure headers exist
  3252. config.headers = config.headers || {};
  3253. // Transform request data
  3254. config.data = transformData.call(
  3255. config,
  3256. config.data,
  3257. config.headers,
  3258. config.transformRequest
  3259. );
  3260. // Flatten headers
  3261. config.headers = utils.merge(
  3262. config.headers.common || {},
  3263. config.headers[config.method] || {},
  3264. config.headers
  3265. );
  3266. utils.forEach(
  3267. ['delete', 'get', 'head', 'post', 'put', 'patch', 'common'],
  3268. function cleanHeaderConfig(method) {
  3269. delete config.headers[method];
  3270. }
  3271. );
  3272. var adapter = config.adapter || defaults.adapter;
  3273. return adapter(config).then(function onAdapterResolution(response) {
  3274. throwIfCancellationRequested(config);
  3275. // Transform response data
  3276. response.data = transformData.call(
  3277. config,
  3278. response.data,
  3279. response.headers,
  3280. config.transformResponse
  3281. );
  3282. return response;
  3283. }, function onAdapterRejection(reason) {
  3284. if (!isCancel(reason)) {
  3285. throwIfCancellationRequested(config);
  3286. // Transform response data
  3287. if (reason && reason.response) {
  3288. reason.response.data = transformData.call(
  3289. config,
  3290. reason.response.data,
  3291. reason.response.headers,
  3292. config.transformResponse
  3293. );
  3294. }
  3295. }
  3296. return Promise.reject(reason);
  3297. });
  3298. };
  3299. /***/ }),
  3300. /***/ "./node_modules/axios/lib/core/enhanceError.js":
  3301. /*!*****************************************************!*\
  3302. !*** ./node_modules/axios/lib/core/enhanceError.js ***!
  3303. \*****************************************************/
  3304. /***/ ((module) => {
  3305. "use strict";
  3306. /**
  3307. * Update an Error with the specified config, error code, and response.
  3308. *
  3309. * @param {Error} error The error to update.
  3310. * @param {Object} config The config.
  3311. * @param {string} [code] The error code (for example, 'ECONNABORTED').
  3312. * @param {Object} [request] The request.
  3313. * @param {Object} [response] The response.
  3314. * @returns {Error} The error.
  3315. */
  3316. module.exports = function enhanceError(error, config, code, request, response) {
  3317. error.config = config;
  3318. if (code) {
  3319. error.code = code;
  3320. }
  3321. error.request = request;
  3322. error.response = response;
  3323. error.isAxiosError = true;
  3324. error.toJSON = function toJSON() {
  3325. return {
  3326. // Standard
  3327. message: this.message,
  3328. name: this.name,
  3329. // Microsoft
  3330. description: this.description,
  3331. number: this.number,
  3332. // Mozilla
  3333. fileName: this.fileName,
  3334. lineNumber: this.lineNumber,
  3335. columnNumber: this.columnNumber,
  3336. stack: this.stack,
  3337. // Axios
  3338. config: this.config,
  3339. code: this.code,
  3340. status: this.response && this.response.status ? this.response.status : null
  3341. };
  3342. };
  3343. return error;
  3344. };
  3345. /***/ }),
  3346. /***/ "./node_modules/axios/lib/core/mergeConfig.js":
  3347. /*!****************************************************!*\
  3348. !*** ./node_modules/axios/lib/core/mergeConfig.js ***!
  3349. \****************************************************/
  3350. /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  3351. "use strict";
  3352. var utils = __webpack_require__(/*! ../utils */ "./node_modules/axios/lib/utils.js");
  3353. /**
  3354. * Config-specific merge-function which creates a new config-object
  3355. * by merging two configuration objects together.
  3356. *
  3357. * @param {Object} config1
  3358. * @param {Object} config2
  3359. * @returns {Object} New object resulting from merging config2 to config1
  3360. */
  3361. module.exports = function mergeConfig(config1, config2) {
  3362. // eslint-disable-next-line no-param-reassign
  3363. config2 = config2 || {};
  3364. var config = {};
  3365. function getMergedValue(target, source) {
  3366. if (utils.isPlainObject(target) && utils.isPlainObject(source)) {
  3367. return utils.merge(target, source);
  3368. } else if (utils.isPlainObject(source)) {
  3369. return utils.merge({}, source);
  3370. } else if (utils.isArray(source)) {
  3371. return source.slice();
  3372. }
  3373. return source;
  3374. }
  3375. // eslint-disable-next-line consistent-return
  3376. function mergeDeepProperties(prop) {
  3377. if (!utils.isUndefined(config2[prop])) {
  3378. return getMergedValue(config1[prop], config2[prop]);
  3379. } else if (!utils.isUndefined(config1[prop])) {
  3380. return getMergedValue(undefined, config1[prop]);
  3381. }
  3382. }
  3383. // eslint-disable-next-line consistent-return
  3384. function valueFromConfig2(prop) {
  3385. if (!utils.isUndefined(config2[prop])) {
  3386. return getMergedValue(undefined, config2[prop]);
  3387. }
  3388. }
  3389. // eslint-disable-next-line consistent-return
  3390. function defaultToConfig2(prop) {
  3391. if (!utils.isUndefined(config2[prop])) {
  3392. return getMergedValue(undefined, config2[prop]);
  3393. } else if (!utils.isUndefined(config1[prop])) {
  3394. return getMergedValue(undefined, config1[prop]);
  3395. }
  3396. }
  3397. // eslint-disable-next-line consistent-return
  3398. function mergeDirectKeys(prop) {
  3399. if (prop in config2) {
  3400. return getMergedValue(config1[prop], config2[prop]);
  3401. } else if (prop in config1) {
  3402. return getMergedValue(undefined, config1[prop]);
  3403. }
  3404. }
  3405. var mergeMap = {
  3406. 'url': valueFromConfig2,
  3407. 'method': valueFromConfig2,
  3408. 'data': valueFromConfig2,
  3409. 'baseURL': defaultToConfig2,
  3410. 'transformRequest': defaultToConfig2,
  3411. 'transformResponse': defaultToConfig2,
  3412. 'paramsSerializer': defaultToConfig2,
  3413. 'timeout': defaultToConfig2,
  3414. 'timeoutMessage': defaultToConfig2,
  3415. 'withCredentials': defaultToConfig2,
  3416. 'adapter': defaultToConfig2,
  3417. 'responseType': defaultToConfig2,
  3418. 'xsrfCookieName': defaultToConfig2,
  3419. 'xsrfHeaderName': defaultToConfig2,
  3420. 'onUploadProgress': defaultToConfig2,
  3421. 'onDownloadProgress': defaultToConfig2,
  3422. 'decompress': defaultToConfig2,
  3423. 'maxContentLength': defaultToConfig2,
  3424. 'maxBodyLength': defaultToConfig2,
  3425. 'transport': defaultToConfig2,
  3426. 'httpAgent': defaultToConfig2,
  3427. 'httpsAgent': defaultToConfig2,
  3428. 'cancelToken': defaultToConfig2,
  3429. 'socketPath': defaultToConfig2,
  3430. 'responseEncoding': defaultToConfig2,
  3431. 'validateStatus': mergeDirectKeys
  3432. };
  3433. utils.forEach(Object.keys(config1).concat(Object.keys(config2)), function computeConfigValue(prop) {
  3434. var merge = mergeMap[prop] || mergeDeepProperties;
  3435. var configValue = merge(prop);
  3436. (utils.isUndefined(configValue) && merge !== mergeDirectKeys) || (config[prop] = configValue);
  3437. });
  3438. return config;
  3439. };
  3440. /***/ }),
  3441. /***/ "./node_modules/axios/lib/core/settle.js":
  3442. /*!***********************************************!*\
  3443. !*** ./node_modules/axios/lib/core/settle.js ***!
  3444. \***********************************************/
  3445. /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  3446. "use strict";
  3447. var createError = __webpack_require__(/*! ./createError */ "./node_modules/axios/lib/core/createError.js");
  3448. /**
  3449. * Resolve or reject a Promise based on response status.
  3450. *
  3451. * @param {Function} resolve A function that resolves the promise.
  3452. * @param {Function} reject A function that rejects the promise.
  3453. * @param {object} response The response.
  3454. */
  3455. module.exports = function settle(resolve, reject, response) {
  3456. var validateStatus = response.config.validateStatus;
  3457. if (!response.status || !validateStatus || validateStatus(response.status)) {
  3458. resolve(response);
  3459. } else {
  3460. reject(createError(
  3461. 'Request failed with status code ' + response.status,
  3462. response.config,
  3463. null,
  3464. response.request,
  3465. response
  3466. ));
  3467. }
  3468. };
  3469. /***/ }),
  3470. /***/ "./node_modules/axios/lib/core/transformData.js":
  3471. /*!******************************************************!*\
  3472. !*** ./node_modules/axios/lib/core/transformData.js ***!
  3473. \******************************************************/
  3474. /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  3475. "use strict";
  3476. var utils = __webpack_require__(/*! ./../utils */ "./node_modules/axios/lib/utils.js");
  3477. var defaults = __webpack_require__(/*! ./../defaults */ "./node_modules/axios/lib/defaults.js");
  3478. /**
  3479. * Transform the data for a request or a response
  3480. *
  3481. * @param {Object|String} data The data to be transformed
  3482. * @param {Array} headers The headers for the request or response
  3483. * @param {Array|Function} fns A single function or Array of functions
  3484. * @returns {*} The resulting transformed data
  3485. */
  3486. module.exports = function transformData(data, headers, fns) {
  3487. var context = this || defaults;
  3488. /*eslint no-param-reassign:0*/
  3489. utils.forEach(fns, function transform(fn) {
  3490. data = fn.call(context, data, headers);
  3491. });
  3492. return data;
  3493. };
  3494. /***/ }),
  3495. /***/ "./node_modules/axios/lib/defaults.js":
  3496. /*!********************************************!*\
  3497. !*** ./node_modules/axios/lib/defaults.js ***!
  3498. \********************************************/
  3499. /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  3500. "use strict";
  3501. /* provided dependency */ var process = __webpack_require__(/*! process/browser.js */ "./node_modules/process/browser.js");
  3502. var utils = __webpack_require__(/*! ./utils */ "./node_modules/axios/lib/utils.js");
  3503. var normalizeHeaderName = __webpack_require__(/*! ./helpers/normalizeHeaderName */ "./node_modules/axios/lib/helpers/normalizeHeaderName.js");
  3504. var enhanceError = __webpack_require__(/*! ./core/enhanceError */ "./node_modules/axios/lib/core/enhanceError.js");
  3505. var DEFAULT_CONTENT_TYPE = {
  3506. 'Content-Type': 'application/x-www-form-urlencoded'
  3507. };
  3508. function setContentTypeIfUnset(headers, value) {
  3509. if (!utils.isUndefined(headers) && utils.isUndefined(headers['Content-Type'])) {
  3510. headers['Content-Type'] = value;
  3511. }
  3512. }
  3513. function getDefaultAdapter() {
  3514. var adapter;
  3515. if (typeof XMLHttpRequest !== 'undefined') {
  3516. // For browsers use XHR adapter
  3517. adapter = __webpack_require__(/*! ./adapters/xhr */ "./node_modules/axios/lib/adapters/xhr.js");
  3518. } else if (typeof process !== 'undefined' && Object.prototype.toString.call(process) === '[object process]') {
  3519. // For node use HTTP adapter
  3520. adapter = __webpack_require__(/*! ./adapters/http */ "./node_modules/axios/lib/adapters/xhr.js");
  3521. }
  3522. return adapter;
  3523. }
  3524. function stringifySafely(rawValue, parser, encoder) {
  3525. if (utils.isString(rawValue)) {
  3526. try {
  3527. (parser || JSON.parse)(rawValue);
  3528. return utils.trim(rawValue);
  3529. } catch (e) {
  3530. if (e.name !== 'SyntaxError') {
  3531. throw e;
  3532. }
  3533. }
  3534. }
  3535. return (encoder || JSON.stringify)(rawValue);
  3536. }
  3537. var defaults = {
  3538. transitional: {
  3539. silentJSONParsing: true,
  3540. forcedJSONParsing: true,
  3541. clarifyTimeoutError: false
  3542. },
  3543. adapter: getDefaultAdapter(),
  3544. transformRequest: [function transformRequest(data, headers) {
  3545. normalizeHeaderName(headers, 'Accept');
  3546. normalizeHeaderName(headers, 'Content-Type');
  3547. if (utils.isFormData(data) ||
  3548. utils.isArrayBuffer(data) ||
  3549. utils.isBuffer(data) ||
  3550. utils.isStream(data) ||
  3551. utils.isFile(data) ||
  3552. utils.isBlob(data)
  3553. ) {
  3554. return data;
  3555. }
  3556. if (utils.isArrayBufferView(data)) {
  3557. return data.buffer;
  3558. }
  3559. if (utils.isURLSearchParams(data)) {
  3560. setContentTypeIfUnset(headers, 'application/x-www-form-urlencoded;charset=utf-8');
  3561. return data.toString();
  3562. }
  3563. if (utils.isObject(data) || (headers && headers['Content-Type'] === 'application/json')) {
  3564. setContentTypeIfUnset(headers, 'application/json');
  3565. return stringifySafely(data);
  3566. }
  3567. return data;
  3568. }],
  3569. transformResponse: [function transformResponse(data) {
  3570. var transitional = this.transitional || defaults.transitional;
  3571. var silentJSONParsing = transitional && transitional.silentJSONParsing;
  3572. var forcedJSONParsing = transitional && transitional.forcedJSONParsing;
  3573. var strictJSONParsing = !silentJSONParsing && this.responseType === 'json';
  3574. if (strictJSONParsing || (forcedJSONParsing && utils.isString(data) && data.length)) {
  3575. try {
  3576. return JSON.parse(data);
  3577. } catch (e) {
  3578. if (strictJSONParsing) {
  3579. if (e.name === 'SyntaxError') {
  3580. throw enhanceError(e, this, 'E_JSON_PARSE');
  3581. }
  3582. throw e;
  3583. }
  3584. }
  3585. }
  3586. return data;
  3587. }],
  3588. /**
  3589. * A timeout in milliseconds to abort a request. If set to 0 (default) a
  3590. * timeout is not created.
  3591. */
  3592. timeout: 0,
  3593. xsrfCookieName: 'XSRF-TOKEN',
  3594. xsrfHeaderName: 'X-XSRF-TOKEN',
  3595. maxContentLength: -1,
  3596. maxBodyLength: -1,
  3597. validateStatus: function validateStatus(status) {
  3598. return status >= 200 && status < 300;
  3599. },
  3600. headers: {
  3601. common: {
  3602. 'Accept': 'application/json, text/plain, */*'
  3603. }
  3604. }
  3605. };
  3606. utils.forEach(['delete', 'get', 'head'], function forEachMethodNoData(method) {
  3607. defaults.headers[method] = {};
  3608. });
  3609. utils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {
  3610. defaults.headers[method] = utils.merge(DEFAULT_CONTENT_TYPE);
  3611. });
  3612. module.exports = defaults;
  3613. /***/ }),
  3614. /***/ "./node_modules/axios/lib/env/data.js":
  3615. /*!********************************************!*\
  3616. !*** ./node_modules/axios/lib/env/data.js ***!
  3617. \********************************************/
  3618. /***/ ((module) => {
  3619. module.exports = {
  3620. "version": "0.25.0"
  3621. };
  3622. /***/ }),
  3623. /***/ "./node_modules/axios/lib/helpers/bind.js":
  3624. /*!************************************************!*\
  3625. !*** ./node_modules/axios/lib/helpers/bind.js ***!
  3626. \************************************************/
  3627. /***/ ((module) => {
  3628. "use strict";
  3629. module.exports = function bind(fn, thisArg) {
  3630. return function wrap() {
  3631. var args = new Array(arguments.length);
  3632. for (var i = 0; i < args.length; i++) {
  3633. args[i] = arguments[i];
  3634. }
  3635. return fn.apply(thisArg, args);
  3636. };
  3637. };
  3638. /***/ }),
  3639. /***/ "./node_modules/axios/lib/helpers/buildURL.js":
  3640. /*!****************************************************!*\
  3641. !*** ./node_modules/axios/lib/helpers/buildURL.js ***!
  3642. \****************************************************/
  3643. /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  3644. "use strict";
  3645. var utils = __webpack_require__(/*! ./../utils */ "./node_modules/axios/lib/utils.js");
  3646. function encode(val) {
  3647. return encodeURIComponent(val).
  3648. replace(/%3A/gi, ':').
  3649. replace(/%24/g, '$').
  3650. replace(/%2C/gi, ',').
  3651. replace(/%20/g, '+').
  3652. replace(/%5B/gi, '[').
  3653. replace(/%5D/gi, ']');
  3654. }
  3655. /**
  3656. * Build a URL by appending params to the end
  3657. *
  3658. * @param {string} url The base of the url (e.g., http://www.google.com)
  3659. * @param {object} [params] The params to be appended
  3660. * @returns {string} The formatted url
  3661. */
  3662. module.exports = function buildURL(url, params, paramsSerializer) {
  3663. /*eslint no-param-reassign:0*/
  3664. if (!params) {
  3665. return url;
  3666. }
  3667. var serializedParams;
  3668. if (paramsSerializer) {
  3669. serializedParams = paramsSerializer(params);
  3670. } else if (utils.isURLSearchParams(params)) {
  3671. serializedParams = params.toString();
  3672. } else {
  3673. var parts = [];
  3674. utils.forEach(params, function serialize(val, key) {
  3675. if (val === null || typeof val === 'undefined') {
  3676. return;
  3677. }
  3678. if (utils.isArray(val)) {
  3679. key = key + '[]';
  3680. } else {
  3681. val = [val];
  3682. }
  3683. utils.forEach(val, function parseValue(v) {
  3684. if (utils.isDate(v)) {
  3685. v = v.toISOString();
  3686. } else if (utils.isObject(v)) {
  3687. v = JSON.stringify(v);
  3688. }
  3689. parts.push(encode(key) + '=' + encode(v));
  3690. });
  3691. });
  3692. serializedParams = parts.join('&');
  3693. }
  3694. if (serializedParams) {
  3695. var hashmarkIndex = url.indexOf('#');
  3696. if (hashmarkIndex !== -1) {
  3697. url = url.slice(0, hashmarkIndex);
  3698. }
  3699. url += (url.indexOf('?') === -1 ? '?' : '&') + serializedParams;
  3700. }
  3701. return url;
  3702. };
  3703. /***/ }),
  3704. /***/ "./node_modules/axios/lib/helpers/combineURLs.js":
  3705. /*!*******************************************************!*\
  3706. !*** ./node_modules/axios/lib/helpers/combineURLs.js ***!
  3707. \*******************************************************/
  3708. /***/ ((module) => {
  3709. "use strict";
  3710. /**
  3711. * Creates a new URL by combining the specified URLs
  3712. *
  3713. * @param {string} baseURL The base URL
  3714. * @param {string} relativeURL The relative URL
  3715. * @returns {string} The combined URL
  3716. */
  3717. module.exports = function combineURLs(baseURL, relativeURL) {
  3718. return relativeURL
  3719. ? baseURL.replace(/\/+$/, '') + '/' + relativeURL.replace(/^\/+/, '')
  3720. : baseURL;
  3721. };
  3722. /***/ }),
  3723. /***/ "./node_modules/axios/lib/helpers/cookies.js":
  3724. /*!***************************************************!*\
  3725. !*** ./node_modules/axios/lib/helpers/cookies.js ***!
  3726. \***************************************************/
  3727. /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  3728. "use strict";
  3729. var utils = __webpack_require__(/*! ./../utils */ "./node_modules/axios/lib/utils.js");
  3730. module.exports = (
  3731. utils.isStandardBrowserEnv() ?
  3732. // Standard browser envs support document.cookie
  3733. (function standardBrowserEnv() {
  3734. return {
  3735. write: function write(name, value, expires, path, domain, secure) {
  3736. var cookie = [];
  3737. cookie.push(name + '=' + encodeURIComponent(value));
  3738. if (utils.isNumber(expires)) {
  3739. cookie.push('expires=' + new Date(expires).toGMTString());
  3740. }
  3741. if (utils.isString(path)) {
  3742. cookie.push('path=' + path);
  3743. }
  3744. if (utils.isString(domain)) {
  3745. cookie.push('domain=' + domain);
  3746. }
  3747. if (secure === true) {
  3748. cookie.push('secure');
  3749. }
  3750. document.cookie = cookie.join('; ');
  3751. },
  3752. read: function read(name) {
  3753. var match = document.cookie.match(new RegExp('(^|;\\s*)(' + name + ')=([^;]*)'));
  3754. return (match ? decodeURIComponent(match[3]) : null);
  3755. },
  3756. remove: function remove(name) {
  3757. this.write(name, '', Date.now() - 86400000);
  3758. }
  3759. };
  3760. })() :
  3761. // Non standard browser env (web workers, react-native) lack needed support.
  3762. (function nonStandardBrowserEnv() {
  3763. return {
  3764. write: function write() {},
  3765. read: function read() { return null; },
  3766. remove: function remove() {}
  3767. };
  3768. })()
  3769. );
  3770. /***/ }),
  3771. /***/ "./node_modules/axios/lib/helpers/isAbsoluteURL.js":
  3772. /*!*********************************************************!*\
  3773. !*** ./node_modules/axios/lib/helpers/isAbsoluteURL.js ***!
  3774. \*********************************************************/
  3775. /***/ ((module) => {
  3776. "use strict";
  3777. /**
  3778. * Determines whether the specified URL is absolute
  3779. *
  3780. * @param {string} url The URL to test
  3781. * @returns {boolean} True if the specified URL is absolute, otherwise false
  3782. */
  3783. module.exports = function isAbsoluteURL(url) {
  3784. // A URL is considered absolute if it begins with "<scheme>://" or "//" (protocol-relative URL).
  3785. // RFC 3986 defines scheme name as a sequence of characters beginning with a letter and followed
  3786. // by any combination of letters, digits, plus, period, or hyphen.
  3787. return /^([a-z][a-z\d+\-.]*:)?\/\//i.test(url);
  3788. };
  3789. /***/ }),
  3790. /***/ "./node_modules/axios/lib/helpers/isAxiosError.js":
  3791. /*!********************************************************!*\
  3792. !*** ./node_modules/axios/lib/helpers/isAxiosError.js ***!
  3793. \********************************************************/
  3794. /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  3795. "use strict";
  3796. var utils = __webpack_require__(/*! ./../utils */ "./node_modules/axios/lib/utils.js");
  3797. /**
  3798. * Determines whether the payload is an error thrown by Axios
  3799. *
  3800. * @param {*} payload The value to test
  3801. * @returns {boolean} True if the payload is an error thrown by Axios, otherwise false
  3802. */
  3803. module.exports = function isAxiosError(payload) {
  3804. return utils.isObject(payload) && (payload.isAxiosError === true);
  3805. };
  3806. /***/ }),
  3807. /***/ "./node_modules/axios/lib/helpers/isURLSameOrigin.js":
  3808. /*!***********************************************************!*\
  3809. !*** ./node_modules/axios/lib/helpers/isURLSameOrigin.js ***!
  3810. \***********************************************************/
  3811. /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  3812. "use strict";
  3813. var utils = __webpack_require__(/*! ./../utils */ "./node_modules/axios/lib/utils.js");
  3814. module.exports = (
  3815. utils.isStandardBrowserEnv() ?
  3816. // Standard browser envs have full support of the APIs needed to test
  3817. // whether the request URL is of the same origin as current location.
  3818. (function standardBrowserEnv() {
  3819. var msie = /(msie|trident)/i.test(navigator.userAgent);
  3820. var urlParsingNode = document.createElement('a');
  3821. var originURL;
  3822. /**
  3823. * Parse a URL to discover it's components
  3824. *
  3825. * @param {String} url The URL to be parsed
  3826. * @returns {Object}
  3827. */
  3828. function resolveURL(url) {
  3829. var href = url;
  3830. if (msie) {
  3831. // IE needs attribute set twice to normalize properties
  3832. urlParsingNode.setAttribute('href', href);
  3833. href = urlParsingNode.href;
  3834. }
  3835. urlParsingNode.setAttribute('href', href);
  3836. // urlParsingNode provides the UrlUtils interface - http://url.spec.whatwg.org/#urlutils
  3837. return {
  3838. href: urlParsingNode.href,
  3839. protocol: urlParsingNode.protocol ? urlParsingNode.protocol.replace(/:$/, '') : '',
  3840. host: urlParsingNode.host,
  3841. search: urlParsingNode.search ? urlParsingNode.search.replace(/^\?/, '') : '',
  3842. hash: urlParsingNode.hash ? urlParsingNode.hash.replace(/^#/, '') : '',
  3843. hostname: urlParsingNode.hostname,
  3844. port: urlParsingNode.port,
  3845. pathname: (urlParsingNode.pathname.charAt(0) === '/') ?
  3846. urlParsingNode.pathname :
  3847. '/' + urlParsingNode.pathname
  3848. };
  3849. }
  3850. originURL = resolveURL(window.location.href);
  3851. /**
  3852. * Determine if a URL shares the same origin as the current location
  3853. *
  3854. * @param {String} requestURL The URL to test
  3855. * @returns {boolean} True if URL shares the same origin, otherwise false
  3856. */
  3857. return function isURLSameOrigin(requestURL) {
  3858. var parsed = (utils.isString(requestURL)) ? resolveURL(requestURL) : requestURL;
  3859. return (parsed.protocol === originURL.protocol &&
  3860. parsed.host === originURL.host);
  3861. };
  3862. })() :
  3863. // Non standard browser envs (web workers, react-native) lack needed support.
  3864. (function nonStandardBrowserEnv() {
  3865. return function isURLSameOrigin() {
  3866. return true;
  3867. };
  3868. })()
  3869. );
  3870. /***/ }),
  3871. /***/ "./node_modules/axios/lib/helpers/normalizeHeaderName.js":
  3872. /*!***************************************************************!*\
  3873. !*** ./node_modules/axios/lib/helpers/normalizeHeaderName.js ***!
  3874. \***************************************************************/
  3875. /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  3876. "use strict";
  3877. var utils = __webpack_require__(/*! ../utils */ "./node_modules/axios/lib/utils.js");
  3878. module.exports = function normalizeHeaderName(headers, normalizedName) {
  3879. utils.forEach(headers, function processHeader(value, name) {
  3880. if (name !== normalizedName && name.toUpperCase() === normalizedName.toUpperCase()) {
  3881. headers[normalizedName] = value;
  3882. delete headers[name];
  3883. }
  3884. });
  3885. };
  3886. /***/ }),
  3887. /***/ "./node_modules/axios/lib/helpers/parseHeaders.js":
  3888. /*!********************************************************!*\
  3889. !*** ./node_modules/axios/lib/helpers/parseHeaders.js ***!
  3890. \********************************************************/
  3891. /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  3892. "use strict";
  3893. var utils = __webpack_require__(/*! ./../utils */ "./node_modules/axios/lib/utils.js");
  3894. // Headers whose duplicates are ignored by node
  3895. // c.f. https://nodejs.org/api/http.html#http_message_headers
  3896. var ignoreDuplicateOf = [
  3897. 'age', 'authorization', 'content-length', 'content-type', 'etag',
  3898. 'expires', 'from', 'host', 'if-modified-since', 'if-unmodified-since',
  3899. 'last-modified', 'location', 'max-forwards', 'proxy-authorization',
  3900. 'referer', 'retry-after', 'user-agent'
  3901. ];
  3902. /**
  3903. * Parse headers into an object
  3904. *
  3905. * ```
  3906. * Date: Wed, 27 Aug 2014 08:58:49 GMT
  3907. * Content-Type: application/json
  3908. * Connection: keep-alive
  3909. * Transfer-Encoding: chunked
  3910. * ```
  3911. *
  3912. * @param {String} headers Headers needing to be parsed
  3913. * @returns {Object} Headers parsed into an object
  3914. */
  3915. module.exports = function parseHeaders(headers) {
  3916. var parsed = {};
  3917. var key;
  3918. var val;
  3919. var i;
  3920. if (!headers) { return parsed; }
  3921. utils.forEach(headers.split('\n'), function parser(line) {
  3922. i = line.indexOf(':');
  3923. key = utils.trim(line.substr(0, i)).toLowerCase();
  3924. val = utils.trim(line.substr(i + 1));
  3925. if (key) {
  3926. if (parsed[key] && ignoreDuplicateOf.indexOf(key) >= 0) {
  3927. return;
  3928. }
  3929. if (key === 'set-cookie') {
  3930. parsed[key] = (parsed[key] ? parsed[key] : []).concat([val]);
  3931. } else {
  3932. parsed[key] = parsed[key] ? parsed[key] + ', ' + val : val;
  3933. }
  3934. }
  3935. });
  3936. return parsed;
  3937. };
  3938. /***/ }),
  3939. /***/ "./node_modules/axios/lib/helpers/spread.js":
  3940. /*!**************************************************!*\
  3941. !*** ./node_modules/axios/lib/helpers/spread.js ***!
  3942. \**************************************************/
  3943. /***/ ((module) => {
  3944. "use strict";
  3945. /**
  3946. * Syntactic sugar for invoking a function and expanding an array for arguments.
  3947. *
  3948. * Common use case would be to use `Function.prototype.apply`.
  3949. *
  3950. * ```js
  3951. * function f(x, y, z) {}
  3952. * var args = [1, 2, 3];
  3953. * f.apply(null, args);
  3954. * ```
  3955. *
  3956. * With `spread` this example can be re-written.
  3957. *
  3958. * ```js
  3959. * spread(function(x, y, z) {})([1, 2, 3]);
  3960. * ```
  3961. *
  3962. * @param {Function} callback
  3963. * @returns {Function}
  3964. */
  3965. module.exports = function spread(callback) {
  3966. return function wrap(arr) {
  3967. return callback.apply(null, arr);
  3968. };
  3969. };
  3970. /***/ }),
  3971. /***/ "./node_modules/axios/lib/helpers/validator.js":
  3972. /*!*****************************************************!*\
  3973. !*** ./node_modules/axios/lib/helpers/validator.js ***!
  3974. \*****************************************************/
  3975. /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  3976. "use strict";
  3977. var VERSION = (__webpack_require__(/*! ../env/data */ "./node_modules/axios/lib/env/data.js").version);
  3978. var validators = {};
  3979. // eslint-disable-next-line func-names
  3980. ['object', 'boolean', 'number', 'function', 'string', 'symbol'].forEach(function(type, i) {
  3981. validators[type] = function validator(thing) {
  3982. return typeof thing === type || 'a' + (i < 1 ? 'n ' : ' ') + type;
  3983. };
  3984. });
  3985. var deprecatedWarnings = {};
  3986. /**
  3987. * Transitional option validator
  3988. * @param {function|boolean?} validator - set to false if the transitional option has been removed
  3989. * @param {string?} version - deprecated version / removed since version
  3990. * @param {string?} message - some message with additional info
  3991. * @returns {function}
  3992. */
  3993. validators.transitional = function transitional(validator, version, message) {
  3994. function formatMessage(opt, desc) {
  3995. return '[Axios v' + VERSION + '] Transitional option \'' + opt + '\'' + desc + (message ? '. ' + message : '');
  3996. }
  3997. // eslint-disable-next-line func-names
  3998. return function(value, opt, opts) {
  3999. if (validator === false) {
  4000. throw new Error(formatMessage(opt, ' has been removed' + (version ? ' in ' + version : '')));
  4001. }
  4002. if (version && !deprecatedWarnings[opt]) {
  4003. deprecatedWarnings[opt] = true;
  4004. // eslint-disable-next-line no-console
  4005. console.warn(
  4006. formatMessage(
  4007. opt,
  4008. ' has been deprecated since v' + version + ' and will be removed in the near future'
  4009. )
  4010. );
  4011. }
  4012. return validator ? validator(value, opt, opts) : true;
  4013. };
  4014. };
  4015. /**
  4016. * Assert object's properties type
  4017. * @param {object} options
  4018. * @param {object} schema
  4019. * @param {boolean?} allowUnknown
  4020. */
  4021. function assertOptions(options, schema, allowUnknown) {
  4022. if (typeof options !== 'object') {
  4023. throw new TypeError('options must be an object');
  4024. }
  4025. var keys = Object.keys(options);
  4026. var i = keys.length;
  4027. while (i-- > 0) {
  4028. var opt = keys[i];
  4029. var validator = schema[opt];
  4030. if (validator) {
  4031. var value = options[opt];
  4032. var result = value === undefined || validator(value, opt, options);
  4033. if (result !== true) {
  4034. throw new TypeError('option ' + opt + ' must be ' + result);
  4035. }
  4036. continue;
  4037. }
  4038. if (allowUnknown !== true) {
  4039. throw Error('Unknown option ' + opt);
  4040. }
  4041. }
  4042. }
  4043. module.exports = {
  4044. assertOptions: assertOptions,
  4045. validators: validators
  4046. };
  4047. /***/ }),
  4048. /***/ "./node_modules/axios/lib/utils.js":
  4049. /*!*****************************************!*\
  4050. !*** ./node_modules/axios/lib/utils.js ***!
  4051. \*****************************************/
  4052. /***/ ((module, __unused_webpack_exports, __webpack_require__) => {
  4053. "use strict";
  4054. var bind = __webpack_require__(/*! ./helpers/bind */ "./node_modules/axios/lib/helpers/bind.js");
  4055. // utils is a library of generic helper functions non-specific to axios
  4056. var toString = Object.prototype.toString;
  4057. /**
  4058. * Determine if a value is an Array
  4059. *
  4060. * @param {Object} val The value to test
  4061. * @returns {boolean} True if value is an Array, otherwise false
  4062. */
  4063. function isArray(val) {
  4064. return Array.isArray(val);
  4065. }
  4066. /**
  4067. * Determine if a value is undefined
  4068. *
  4069. * @param {Object} val The value to test
  4070. * @returns {boolean} True if the value is undefined, otherwise false
  4071. */
  4072. function isUndefined(val) {
  4073. return typeof val === 'undefined';
  4074. }
  4075. /**
  4076. * Determine if a value is a Buffer
  4077. *
  4078. * @param {Object} val The value to test
  4079. * @returns {boolean} True if value is a Buffer, otherwise false
  4080. */
  4081. function isBuffer(val) {
  4082. return val !== null && !isUndefined(val) && val.constructor !== null && !isUndefined(val.constructor)
  4083. && typeof val.constructor.isBuffer === 'function' && val.constructor.isBuffer(val);
  4084. }
  4085. /**
  4086. * Determine if a value is an ArrayBuffer
  4087. *
  4088. * @param {Object} val The value to test
  4089. * @returns {boolean} True if value is an ArrayBuffer, otherwise false
  4090. */
  4091. function isArrayBuffer(val) {
  4092. return toString.call(val) === '[object ArrayBuffer]';
  4093. }
  4094. /**
  4095. * Determine if a value is a FormData
  4096. *
  4097. * @param {Object} val The value to test
  4098. * @returns {boolean} True if value is an FormData, otherwise false
  4099. */
  4100. function isFormData(val) {
  4101. return toString.call(val) === '[object FormData]';
  4102. }
  4103. /**
  4104. * Determine if a value is a view on an ArrayBuffer
  4105. *
  4106. * @param {Object} val The value to test
  4107. * @returns {boolean} True if value is a view on an ArrayBuffer, otherwise false
  4108. */
  4109. function isArrayBufferView(val) {
  4110. var result;
  4111. if ((typeof ArrayBuffer !== 'undefined') && (ArrayBuffer.isView)) {
  4112. result = ArrayBuffer.isView(val);
  4113. } else {
  4114. result = (val) && (val.buffer) && (isArrayBuffer(val.buffer));
  4115. }
  4116. return result;
  4117. }
  4118. /**
  4119. * Determine if a value is a String
  4120. *
  4121. * @param {Object} val The value to test
  4122. * @returns {boolean} True if value is a String, otherwise false
  4123. */
  4124. function isString(val) {
  4125. return typeof val === 'string';
  4126. }
  4127. /**
  4128. * Determine if a value is a Number
  4129. *
  4130. * @param {Object} val The value to test
  4131. * @returns {boolean} True if value is a Number, otherwise false
  4132. */
  4133. function isNumber(val) {
  4134. return typeof val === 'number';
  4135. }
  4136. /**
  4137. * Determine if a value is an Object
  4138. *
  4139. * @param {Object} val The value to test
  4140. * @returns {boolean} True if value is an Object, otherwise false
  4141. */
  4142. function isObject(val) {
  4143. return val !== null && typeof val === 'object';
  4144. }
  4145. /**
  4146. * Determine if a value is a plain Object
  4147. *
  4148. * @param {Object} val The value to test
  4149. * @return {boolean} True if value is a plain Object, otherwise false
  4150. */
  4151. function isPlainObject(val) {
  4152. if (toString.call(val) !== '[object Object]') {
  4153. return false;
  4154. }
  4155. var prototype = Object.getPrototypeOf(val);
  4156. return prototype === null || prototype === Object.prototype;
  4157. }
  4158. /**
  4159. * Determine if a value is a Date
  4160. *
  4161. * @param {Object} val The value to test
  4162. * @returns {boolean} True if value is a Date, otherwise false
  4163. */
  4164. function isDate(val) {
  4165. return toString.call(val) === '[object Date]';
  4166. }
  4167. /**
  4168. * Determine if a value is a File
  4169. *
  4170. * @param {Object} val The value to test
  4171. * @returns {boolean} True if value is a File, otherwise false
  4172. */
  4173. function isFile(val) {
  4174. return toString.call(val) === '[object File]';
  4175. }
  4176. /**
  4177. * Determine if a value is a Blob
  4178. *
  4179. * @param {Object} val The value to test
  4180. * @returns {boolean} True if value is a Blob, otherwise false
  4181. */
  4182. function isBlob(val) {
  4183. return toString.call(val) === '[object Blob]';
  4184. }
  4185. /**
  4186. * Determine if a value is a Function
  4187. *
  4188. * @param {Object} val The value to test
  4189. * @returns {boolean} True if value is a Function, otherwise false
  4190. */
  4191. function isFunction(val) {
  4192. return toString.call(val) === '[object Function]';
  4193. }
  4194. /**
  4195. * Determine if a value is a Stream
  4196. *
  4197. * @param {Object} val The value to test
  4198. * @returns {boolean} True if value is a Stream, otherwise false
  4199. */
  4200. function isStream(val) {
  4201. return isObject(val) && isFunction(val.pipe);
  4202. }
  4203. /**
  4204. * Determine if a value is a URLSearchParams object
  4205. *
  4206. * @param {Object} val The value to test
  4207. * @returns {boolean} True if value is a URLSearchParams object, otherwise false
  4208. */
  4209. function isURLSearchParams(val) {
  4210. return toString.call(val) === '[object URLSearchParams]';
  4211. }
  4212. /**
  4213. * Trim excess whitespace off the beginning and end of a string
  4214. *
  4215. * @param {String} str The String to trim
  4216. * @returns {String} The String freed of excess whitespace
  4217. */
  4218. function trim(str) {
  4219. return str.trim ? str.trim() : str.replace(/^\s+|\s+$/g, '');
  4220. }
  4221. /**
  4222. * Determine if we're running in a standard browser environment
  4223. *
  4224. * This allows axios to run in a web worker, and react-native.
  4225. * Both environments support XMLHttpRequest, but not fully standard globals.
  4226. *
  4227. * web workers:
  4228. * typeof window -> undefined
  4229. * typeof document -> undefined
  4230. *
  4231. * react-native:
  4232. * navigator.product -> 'ReactNative'
  4233. * nativescript
  4234. * navigator.product -> 'NativeScript' or 'NS'
  4235. */
  4236. function isStandardBrowserEnv() {
  4237. if (typeof navigator !== 'undefined' && (navigator.product === 'ReactNative' ||
  4238. navigator.product === 'NativeScript' ||
  4239. navigator.product === 'NS')) {
  4240. return false;
  4241. }
  4242. return (
  4243. typeof window !== 'undefined' &&
  4244. typeof document !== 'undefined'
  4245. );
  4246. }
  4247. /**
  4248. * Iterate over an Array or an Object invoking a function for each item.
  4249. *
  4250. * If `obj` is an Array callback will be called passing
  4251. * the value, index, and complete array for each item.
  4252. *
  4253. * If 'obj' is an Object callback will be called passing
  4254. * the value, key, and complete object for each property.
  4255. *
  4256. * @param {Object|Array} obj The object to iterate
  4257. * @param {Function} fn The callback to invoke for each item
  4258. */
  4259. function forEach(obj, fn) {
  4260. // Don't bother if no value provided
  4261. if (obj === null || typeof obj === 'undefined') {
  4262. return;
  4263. }
  4264. // Force an array if not already something iterable
  4265. if (typeof obj !== 'object') {
  4266. /*eslint no-param-reassign:0*/
  4267. obj = [obj];
  4268. }
  4269. if (isArray(obj)) {
  4270. // Iterate over array values
  4271. for (var i = 0, l = obj.length; i < l; i++) {
  4272. fn.call(null, obj[i], i, obj);
  4273. }
  4274. } else {
  4275. // Iterate over object keys
  4276. for (var key in obj) {
  4277. if (Object.prototype.hasOwnProperty.call(obj, key)) {
  4278. fn.call(null, obj[key], key, obj);
  4279. }
  4280. }
  4281. }
  4282. }
  4283. /**
  4284. * Accepts varargs expecting each argument to be an object, then
  4285. * immutably merges the properties of each object and returns result.
  4286. *
  4287. * When multiple objects contain the same key the later object in
  4288. * the arguments list will take precedence.
  4289. *
  4290. * Example:
  4291. *
  4292. * ```js
  4293. * var result = merge({foo: 123}, {foo: 456});
  4294. * console.log(result.foo); // outputs 456
  4295. * ```
  4296. *
  4297. * @param {Object} obj1 Object to merge
  4298. * @returns {Object} Result of all merge properties
  4299. */
  4300. function merge(/* obj1, obj2, obj3, ... */) {
  4301. var result = {};
  4302. function assignValue(val, key) {
  4303. if (isPlainObject(result[key]) && isPlainObject(val)) {
  4304. result[key] = merge(result[key], val);
  4305. } else if (isPlainObject(val)) {
  4306. result[key] = merge({}, val);
  4307. } else if (isArray(val)) {
  4308. result[key] = val.slice();
  4309. } else {
  4310. result[key] = val;
  4311. }
  4312. }
  4313. for (var i = 0, l = arguments.length; i < l; i++) {
  4314. forEach(arguments[i], assignValue);
  4315. }
  4316. return result;
  4317. }
  4318. /**
  4319. * Extends object a by mutably adding to it the properties of object b.
  4320. *
  4321. * @param {Object} a The object to be extended
  4322. * @param {Object} b The object to copy properties from
  4323. * @param {Object} thisArg The object to bind function to
  4324. * @return {Object} The resulting value of object a
  4325. */
  4326. function extend(a, b, thisArg) {
  4327. forEach(b, function assignValue(val, key) {
  4328. if (thisArg && typeof val === 'function') {
  4329. a[key] = bind(val, thisArg);
  4330. } else {
  4331. a[key] = val;
  4332. }
  4333. });
  4334. return a;
  4335. }
  4336. /**
  4337. * Remove byte order marker. This catches EF BB BF (the UTF-8 BOM)
  4338. *
  4339. * @param {string} content with BOM
  4340. * @return {string} content value without BOM
  4341. */
  4342. function stripBOM(content) {
  4343. if (content.charCodeAt(0) === 0xFEFF) {
  4344. content = content.slice(1);
  4345. }
  4346. return content;
  4347. }
  4348. module.exports = {
  4349. isArray: isArray,
  4350. isArrayBuffer: isArrayBuffer,
  4351. isBuffer: isBuffer,
  4352. isFormData: isFormData,
  4353. isArrayBufferView: isArrayBufferView,
  4354. isString: isString,
  4355. isNumber: isNumber,
  4356. isObject: isObject,
  4357. isPlainObject: isPlainObject,
  4358. isUndefined: isUndefined,
  4359. isDate: isDate,
  4360. isFile: isFile,
  4361. isBlob: isBlob,
  4362. isFunction: isFunction,
  4363. isStream: isStream,
  4364. isURLSearchParams: isURLSearchParams,
  4365. isStandardBrowserEnv: isStandardBrowserEnv,
  4366. forEach: forEach,
  4367. merge: merge,
  4368. extend: extend,
  4369. trim: trim,
  4370. stripBOM: stripBOM
  4371. };
  4372. /***/ }),
  4373. /***/ "./resources/js/app.js":
  4374. /*!*****************************!*\
  4375. !*** ./resources/js/app.js ***!
  4376. \*****************************/
  4377. /***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
  4378. __webpack_require__(/*! ./bootstrap */ "./resources/js/bootstrap.js");
  4379. /***/ }),
  4380. /***/ "./resources/js/bootstrap.js":
  4381. /*!***********************************!*\
  4382. !*** ./resources/js/bootstrap.js ***!
  4383. \***********************************/
  4384. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  4385. "use strict";
  4386. __webpack_require__.r(__webpack_exports__);
  4387. /* harmony import */ var bootstrap__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! bootstrap */ "./node_modules/bootstrap/dist/js/bootstrap.esm.js");
  4388. /* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! axios */ "./node_modules/axios/index.js");
  4389. /* harmony import */ var axios__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(axios__WEBPACK_IMPORTED_MODULE_1__);
  4390. /**
  4391. * We'll load the axios HTTP library which allows us to easily issue requests
  4392. * to our Laravel back-end. This library automatically handles sending the
  4393. * CSRF token as a header based on the value of the "XSRF" token cookie.
  4394. */
  4395. window.axios = (axios__WEBPACK_IMPORTED_MODULE_1___default());
  4396. window.axios.defaults.headers.common['X-Requested-With'] = 'XMLHttpRequest';
  4397. /**
  4398. * Echo exposes an expressive API for subscribing to channels and listening
  4399. * for events that are broadcast by Laravel. Echo and event broadcasting
  4400. * allows your team to easily build robust real-time web applications.
  4401. */
  4402. // import Echo from 'laravel-echo';
  4403. // import Pusher from 'pusher-js';
  4404. // window.Pusher = Pusher;
  4405. // window.Echo = new Echo({
  4406. // broadcaster: 'pusher',
  4407. // key: import.meta.env.VITE_PUSHER_APP_KEY,
  4408. // wsHost: import.meta.env.VITE_PUSHER_HOST ?? `ws-${import.meta.env.VITE_PUSHER_APP_CLUSTER}.pusher.com`,
  4409. // wsPort: import.meta.env.VITE_PUSHER_PORT ?? 80,
  4410. // wssPort: import.meta.env.VITE_PUSHER_PORT ?? 443,
  4411. // forceTLS: (import.meta.env.VITE_PUSHER_SCHEME ?? 'https') === 'https',
  4412. // enabledTransports: ['ws', 'wss'],
  4413. // });
  4414. /***/ }),
  4415. /***/ "./node_modules/bootstrap/dist/js/bootstrap.esm.js":
  4416. /*!*********************************************************!*\
  4417. !*** ./node_modules/bootstrap/dist/js/bootstrap.esm.js ***!
  4418. \*********************************************************/
  4419. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  4420. "use strict";
  4421. __webpack_require__.r(__webpack_exports__);
  4422. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  4423. /* harmony export */ "Alert": () => (/* binding */ Alert),
  4424. /* harmony export */ "Button": () => (/* binding */ Button),
  4425. /* harmony export */ "Carousel": () => (/* binding */ Carousel),
  4426. /* harmony export */ "Collapse": () => (/* binding */ Collapse),
  4427. /* harmony export */ "Dropdown": () => (/* binding */ Dropdown),
  4428. /* harmony export */ "Modal": () => (/* binding */ Modal),
  4429. /* harmony export */ "Offcanvas": () => (/* binding */ Offcanvas),
  4430. /* harmony export */ "Popover": () => (/* binding */ Popover),
  4431. /* harmony export */ "ScrollSpy": () => (/* binding */ ScrollSpy),
  4432. /* harmony export */ "Tab": () => (/* binding */ Tab),
  4433. /* harmony export */ "Toast": () => (/* binding */ Toast),
  4434. /* harmony export */ "Tooltip": () => (/* binding */ Tooltip)
  4435. /* harmony export */ });
  4436. /* harmony import */ var _popperjs_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @popperjs/core */ "./node_modules/@popperjs/core/lib/index.js");
  4437. /* harmony import */ var _popperjs_core__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @popperjs/core */ "./node_modules/@popperjs/core/lib/popper.js");
  4438. /*!
  4439. * Bootstrap v5.2.3 (https://getbootstrap.com/)
  4440. * Copyright 2011-2022 The Bootstrap Authors (https://github.com/twbs/bootstrap/graphs/contributors)
  4441. * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
  4442. */
  4443. /**
  4444. * --------------------------------------------------------------------------
  4445. * Bootstrap (v5.2.3): util/index.js
  4446. * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
  4447. * --------------------------------------------------------------------------
  4448. */
  4449. const MAX_UID = 1000000;
  4450. const MILLISECONDS_MULTIPLIER = 1000;
  4451. const TRANSITION_END = 'transitionend'; // Shout-out Angus Croll (https://goo.gl/pxwQGp)
  4452. const toType = object => {
  4453. if (object === null || object === undefined) {
  4454. return `${object}`;
  4455. }
  4456. return Object.prototype.toString.call(object).match(/\s([a-z]+)/i)[1].toLowerCase();
  4457. };
  4458. /**
  4459. * Public Util API
  4460. */
  4461. const getUID = prefix => {
  4462. do {
  4463. prefix += Math.floor(Math.random() * MAX_UID);
  4464. } while (document.getElementById(prefix));
  4465. return prefix;
  4466. };
  4467. const getSelector = element => {
  4468. let selector = element.getAttribute('data-bs-target');
  4469. if (!selector || selector === '#') {
  4470. let hrefAttribute = element.getAttribute('href'); // The only valid content that could double as a selector are IDs or classes,
  4471. // so everything starting with `#` or `.`. If a "real" URL is used as the selector,
  4472. // `document.querySelector` will rightfully complain it is invalid.
  4473. // See https://github.com/twbs/bootstrap/issues/32273
  4474. if (!hrefAttribute || !hrefAttribute.includes('#') && !hrefAttribute.startsWith('.')) {
  4475. return null;
  4476. } // Just in case some CMS puts out a full URL with the anchor appended
  4477. if (hrefAttribute.includes('#') && !hrefAttribute.startsWith('#')) {
  4478. hrefAttribute = `#${hrefAttribute.split('#')[1]}`;
  4479. }
  4480. selector = hrefAttribute && hrefAttribute !== '#' ? hrefAttribute.trim() : null;
  4481. }
  4482. return selector;
  4483. };
  4484. const getSelectorFromElement = element => {
  4485. const selector = getSelector(element);
  4486. if (selector) {
  4487. return document.querySelector(selector) ? selector : null;
  4488. }
  4489. return null;
  4490. };
  4491. const getElementFromSelector = element => {
  4492. const selector = getSelector(element);
  4493. return selector ? document.querySelector(selector) : null;
  4494. };
  4495. const getTransitionDurationFromElement = element => {
  4496. if (!element) {
  4497. return 0;
  4498. } // Get transition-duration of the element
  4499. let {
  4500. transitionDuration,
  4501. transitionDelay
  4502. } = window.getComputedStyle(element);
  4503. const floatTransitionDuration = Number.parseFloat(transitionDuration);
  4504. const floatTransitionDelay = Number.parseFloat(transitionDelay); // Return 0 if element or transition duration is not found
  4505. if (!floatTransitionDuration && !floatTransitionDelay) {
  4506. return 0;
  4507. } // If multiple durations are defined, take the first
  4508. transitionDuration = transitionDuration.split(',')[0];
  4509. transitionDelay = transitionDelay.split(',')[0];
  4510. return (Number.parseFloat(transitionDuration) + Number.parseFloat(transitionDelay)) * MILLISECONDS_MULTIPLIER;
  4511. };
  4512. const triggerTransitionEnd = element => {
  4513. element.dispatchEvent(new Event(TRANSITION_END));
  4514. };
  4515. const isElement = object => {
  4516. if (!object || typeof object !== 'object') {
  4517. return false;
  4518. }
  4519. if (typeof object.jquery !== 'undefined') {
  4520. object = object[0];
  4521. }
  4522. return typeof object.nodeType !== 'undefined';
  4523. };
  4524. const getElement = object => {
  4525. // it's a jQuery object or a node element
  4526. if (isElement(object)) {
  4527. return object.jquery ? object[0] : object;
  4528. }
  4529. if (typeof object === 'string' && object.length > 0) {
  4530. return document.querySelector(object);
  4531. }
  4532. return null;
  4533. };
  4534. const isVisible = element => {
  4535. if (!isElement(element) || element.getClientRects().length === 0) {
  4536. return false;
  4537. }
  4538. const elementIsVisible = getComputedStyle(element).getPropertyValue('visibility') === 'visible'; // Handle `details` element as its content may falsie appear visible when it is closed
  4539. const closedDetails = element.closest('details:not([open])');
  4540. if (!closedDetails) {
  4541. return elementIsVisible;
  4542. }
  4543. if (closedDetails !== element) {
  4544. const summary = element.closest('summary');
  4545. if (summary && summary.parentNode !== closedDetails) {
  4546. return false;
  4547. }
  4548. if (summary === null) {
  4549. return false;
  4550. }
  4551. }
  4552. return elementIsVisible;
  4553. };
  4554. const isDisabled = element => {
  4555. if (!element || element.nodeType !== Node.ELEMENT_NODE) {
  4556. return true;
  4557. }
  4558. if (element.classList.contains('disabled')) {
  4559. return true;
  4560. }
  4561. if (typeof element.disabled !== 'undefined') {
  4562. return element.disabled;
  4563. }
  4564. return element.hasAttribute('disabled') && element.getAttribute('disabled') !== 'false';
  4565. };
  4566. const findShadowRoot = element => {
  4567. if (!document.documentElement.attachShadow) {
  4568. return null;
  4569. } // Can find the shadow root otherwise it'll return the document
  4570. if (typeof element.getRootNode === 'function') {
  4571. const root = element.getRootNode();
  4572. return root instanceof ShadowRoot ? root : null;
  4573. }
  4574. if (element instanceof ShadowRoot) {
  4575. return element;
  4576. } // when we don't find a shadow root
  4577. if (!element.parentNode) {
  4578. return null;
  4579. }
  4580. return findShadowRoot(element.parentNode);
  4581. };
  4582. const noop = () => {};
  4583. /**
  4584. * Trick to restart an element's animation
  4585. *
  4586. * @param {HTMLElement} element
  4587. * @return void
  4588. *
  4589. * @see https://www.charistheo.io/blog/2021/02/restart-a-css-animation-with-javascript/#restarting-a-css-animation
  4590. */
  4591. const reflow = element => {
  4592. element.offsetHeight; // eslint-disable-line no-unused-expressions
  4593. };
  4594. const getjQuery = () => {
  4595. if (window.jQuery && !document.body.hasAttribute('data-bs-no-jquery')) {
  4596. return window.jQuery;
  4597. }
  4598. return null;
  4599. };
  4600. const DOMContentLoadedCallbacks = [];
  4601. const onDOMContentLoaded = callback => {
  4602. if (document.readyState === 'loading') {
  4603. // add listener on the first call when the document is in loading state
  4604. if (!DOMContentLoadedCallbacks.length) {
  4605. document.addEventListener('DOMContentLoaded', () => {
  4606. for (const callback of DOMContentLoadedCallbacks) {
  4607. callback();
  4608. }
  4609. });
  4610. }
  4611. DOMContentLoadedCallbacks.push(callback);
  4612. } else {
  4613. callback();
  4614. }
  4615. };
  4616. const isRTL = () => document.documentElement.dir === 'rtl';
  4617. const defineJQueryPlugin = plugin => {
  4618. onDOMContentLoaded(() => {
  4619. const $ = getjQuery();
  4620. /* istanbul ignore if */
  4621. if ($) {
  4622. const name = plugin.NAME;
  4623. const JQUERY_NO_CONFLICT = $.fn[name];
  4624. $.fn[name] = plugin.jQueryInterface;
  4625. $.fn[name].Constructor = plugin;
  4626. $.fn[name].noConflict = () => {
  4627. $.fn[name] = JQUERY_NO_CONFLICT;
  4628. return plugin.jQueryInterface;
  4629. };
  4630. }
  4631. });
  4632. };
  4633. const execute = callback => {
  4634. if (typeof callback === 'function') {
  4635. callback();
  4636. }
  4637. };
  4638. const executeAfterTransition = (callback, transitionElement, waitForTransition = true) => {
  4639. if (!waitForTransition) {
  4640. execute(callback);
  4641. return;
  4642. }
  4643. const durationPadding = 5;
  4644. const emulatedDuration = getTransitionDurationFromElement(transitionElement) + durationPadding;
  4645. let called = false;
  4646. const handler = ({
  4647. target
  4648. }) => {
  4649. if (target !== transitionElement) {
  4650. return;
  4651. }
  4652. called = true;
  4653. transitionElement.removeEventListener(TRANSITION_END, handler);
  4654. execute(callback);
  4655. };
  4656. transitionElement.addEventListener(TRANSITION_END, handler);
  4657. setTimeout(() => {
  4658. if (!called) {
  4659. triggerTransitionEnd(transitionElement);
  4660. }
  4661. }, emulatedDuration);
  4662. };
  4663. /**
  4664. * Return the previous/next element of a list.
  4665. *
  4666. * @param {array} list The list of elements
  4667. * @param activeElement The active element
  4668. * @param shouldGetNext Choose to get next or previous element
  4669. * @param isCycleAllowed
  4670. * @return {Element|elem} The proper element
  4671. */
  4672. const getNextActiveElement = (list, activeElement, shouldGetNext, isCycleAllowed) => {
  4673. const listLength = list.length;
  4674. let index = list.indexOf(activeElement); // if the element does not exist in the list return an element
  4675. // depending on the direction and if cycle is allowed
  4676. if (index === -1) {
  4677. return !shouldGetNext && isCycleAllowed ? list[listLength - 1] : list[0];
  4678. }
  4679. index += shouldGetNext ? 1 : -1;
  4680. if (isCycleAllowed) {
  4681. index = (index + listLength) % listLength;
  4682. }
  4683. return list[Math.max(0, Math.min(index, listLength - 1))];
  4684. };
  4685. /**
  4686. * --------------------------------------------------------------------------
  4687. * Bootstrap (v5.2.3): dom/event-handler.js
  4688. * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
  4689. * --------------------------------------------------------------------------
  4690. */
  4691. /**
  4692. * Constants
  4693. */
  4694. const namespaceRegex = /[^.]*(?=\..*)\.|.*/;
  4695. const stripNameRegex = /\..*/;
  4696. const stripUidRegex = /::\d+$/;
  4697. const eventRegistry = {}; // Events storage
  4698. let uidEvent = 1;
  4699. const customEvents = {
  4700. mouseenter: 'mouseover',
  4701. mouseleave: 'mouseout'
  4702. };
  4703. const nativeEvents = new Set(['click', 'dblclick', 'mouseup', 'mousedown', 'contextmenu', 'mousewheel', 'DOMMouseScroll', 'mouseover', 'mouseout', 'mousemove', 'selectstart', 'selectend', 'keydown', 'keypress', 'keyup', 'orientationchange', 'touchstart', 'touchmove', 'touchend', 'touchcancel', 'pointerdown', 'pointermove', 'pointerup', 'pointerleave', 'pointercancel', 'gesturestart', 'gesturechange', 'gestureend', 'focus', 'blur', 'change', 'reset', 'select', 'submit', 'focusin', 'focusout', 'load', 'unload', 'beforeunload', 'resize', 'move', 'DOMContentLoaded', 'readystatechange', 'error', 'abort', 'scroll']);
  4704. /**
  4705. * Private methods
  4706. */
  4707. function makeEventUid(element, uid) {
  4708. return uid && `${uid}::${uidEvent++}` || element.uidEvent || uidEvent++;
  4709. }
  4710. function getElementEvents(element) {
  4711. const uid = makeEventUid(element);
  4712. element.uidEvent = uid;
  4713. eventRegistry[uid] = eventRegistry[uid] || {};
  4714. return eventRegistry[uid];
  4715. }
  4716. function bootstrapHandler(element, fn) {
  4717. return function handler(event) {
  4718. hydrateObj(event, {
  4719. delegateTarget: element
  4720. });
  4721. if (handler.oneOff) {
  4722. EventHandler.off(element, event.type, fn);
  4723. }
  4724. return fn.apply(element, [event]);
  4725. };
  4726. }
  4727. function bootstrapDelegationHandler(element, selector, fn) {
  4728. return function handler(event) {
  4729. const domElements = element.querySelectorAll(selector);
  4730. for (let {
  4731. target
  4732. } = event; target && target !== this; target = target.parentNode) {
  4733. for (const domElement of domElements) {
  4734. if (domElement !== target) {
  4735. continue;
  4736. }
  4737. hydrateObj(event, {
  4738. delegateTarget: target
  4739. });
  4740. if (handler.oneOff) {
  4741. EventHandler.off(element, event.type, selector, fn);
  4742. }
  4743. return fn.apply(target, [event]);
  4744. }
  4745. }
  4746. };
  4747. }
  4748. function findHandler(events, callable, delegationSelector = null) {
  4749. return Object.values(events).find(event => event.callable === callable && event.delegationSelector === delegationSelector);
  4750. }
  4751. function normalizeParameters(originalTypeEvent, handler, delegationFunction) {
  4752. const isDelegated = typeof handler === 'string'; // todo: tooltip passes `false` instead of selector, so we need to check
  4753. const callable = isDelegated ? delegationFunction : handler || delegationFunction;
  4754. let typeEvent = getTypeEvent(originalTypeEvent);
  4755. if (!nativeEvents.has(typeEvent)) {
  4756. typeEvent = originalTypeEvent;
  4757. }
  4758. return [isDelegated, callable, typeEvent];
  4759. }
  4760. function addHandler(element, originalTypeEvent, handler, delegationFunction, oneOff) {
  4761. if (typeof originalTypeEvent !== 'string' || !element) {
  4762. return;
  4763. }
  4764. let [isDelegated, callable, typeEvent] = normalizeParameters(originalTypeEvent, handler, delegationFunction); // in case of mouseenter or mouseleave wrap the handler within a function that checks for its DOM position
  4765. // this prevents the handler from being dispatched the same way as mouseover or mouseout does
  4766. if (originalTypeEvent in customEvents) {
  4767. const wrapFunction = fn => {
  4768. return function (event) {
  4769. if (!event.relatedTarget || event.relatedTarget !== event.delegateTarget && !event.delegateTarget.contains(event.relatedTarget)) {
  4770. return fn.call(this, event);
  4771. }
  4772. };
  4773. };
  4774. callable = wrapFunction(callable);
  4775. }
  4776. const events = getElementEvents(element);
  4777. const handlers = events[typeEvent] || (events[typeEvent] = {});
  4778. const previousFunction = findHandler(handlers, callable, isDelegated ? handler : null);
  4779. if (previousFunction) {
  4780. previousFunction.oneOff = previousFunction.oneOff && oneOff;
  4781. return;
  4782. }
  4783. const uid = makeEventUid(callable, originalTypeEvent.replace(namespaceRegex, ''));
  4784. const fn = isDelegated ? bootstrapDelegationHandler(element, handler, callable) : bootstrapHandler(element, callable);
  4785. fn.delegationSelector = isDelegated ? handler : null;
  4786. fn.callable = callable;
  4787. fn.oneOff = oneOff;
  4788. fn.uidEvent = uid;
  4789. handlers[uid] = fn;
  4790. element.addEventListener(typeEvent, fn, isDelegated);
  4791. }
  4792. function removeHandler(element, events, typeEvent, handler, delegationSelector) {
  4793. const fn = findHandler(events[typeEvent], handler, delegationSelector);
  4794. if (!fn) {
  4795. return;
  4796. }
  4797. element.removeEventListener(typeEvent, fn, Boolean(delegationSelector));
  4798. delete events[typeEvent][fn.uidEvent];
  4799. }
  4800. function removeNamespacedHandlers(element, events, typeEvent, namespace) {
  4801. const storeElementEvent = events[typeEvent] || {};
  4802. for (const handlerKey of Object.keys(storeElementEvent)) {
  4803. if (handlerKey.includes(namespace)) {
  4804. const event = storeElementEvent[handlerKey];
  4805. removeHandler(element, events, typeEvent, event.callable, event.delegationSelector);
  4806. }
  4807. }
  4808. }
  4809. function getTypeEvent(event) {
  4810. // allow to get the native events from namespaced events ('click.bs.button' --> 'click')
  4811. event = event.replace(stripNameRegex, '');
  4812. return customEvents[event] || event;
  4813. }
  4814. const EventHandler = {
  4815. on(element, event, handler, delegationFunction) {
  4816. addHandler(element, event, handler, delegationFunction, false);
  4817. },
  4818. one(element, event, handler, delegationFunction) {
  4819. addHandler(element, event, handler, delegationFunction, true);
  4820. },
  4821. off(element, originalTypeEvent, handler, delegationFunction) {
  4822. if (typeof originalTypeEvent !== 'string' || !element) {
  4823. return;
  4824. }
  4825. const [isDelegated, callable, typeEvent] = normalizeParameters(originalTypeEvent, handler, delegationFunction);
  4826. const inNamespace = typeEvent !== originalTypeEvent;
  4827. const events = getElementEvents(element);
  4828. const storeElementEvent = events[typeEvent] || {};
  4829. const isNamespace = originalTypeEvent.startsWith('.');
  4830. if (typeof callable !== 'undefined') {
  4831. // Simplest case: handler is passed, remove that listener ONLY.
  4832. if (!Object.keys(storeElementEvent).length) {
  4833. return;
  4834. }
  4835. removeHandler(element, events, typeEvent, callable, isDelegated ? handler : null);
  4836. return;
  4837. }
  4838. if (isNamespace) {
  4839. for (const elementEvent of Object.keys(events)) {
  4840. removeNamespacedHandlers(element, events, elementEvent, originalTypeEvent.slice(1));
  4841. }
  4842. }
  4843. for (const keyHandlers of Object.keys(storeElementEvent)) {
  4844. const handlerKey = keyHandlers.replace(stripUidRegex, '');
  4845. if (!inNamespace || originalTypeEvent.includes(handlerKey)) {
  4846. const event = storeElementEvent[keyHandlers];
  4847. removeHandler(element, events, typeEvent, event.callable, event.delegationSelector);
  4848. }
  4849. }
  4850. },
  4851. trigger(element, event, args) {
  4852. if (typeof event !== 'string' || !element) {
  4853. return null;
  4854. }
  4855. const $ = getjQuery();
  4856. const typeEvent = getTypeEvent(event);
  4857. const inNamespace = event !== typeEvent;
  4858. let jQueryEvent = null;
  4859. let bubbles = true;
  4860. let nativeDispatch = true;
  4861. let defaultPrevented = false;
  4862. if (inNamespace && $) {
  4863. jQueryEvent = $.Event(event, args);
  4864. $(element).trigger(jQueryEvent);
  4865. bubbles = !jQueryEvent.isPropagationStopped();
  4866. nativeDispatch = !jQueryEvent.isImmediatePropagationStopped();
  4867. defaultPrevented = jQueryEvent.isDefaultPrevented();
  4868. }
  4869. let evt = new Event(event, {
  4870. bubbles,
  4871. cancelable: true
  4872. });
  4873. evt = hydrateObj(evt, args);
  4874. if (defaultPrevented) {
  4875. evt.preventDefault();
  4876. }
  4877. if (nativeDispatch) {
  4878. element.dispatchEvent(evt);
  4879. }
  4880. if (evt.defaultPrevented && jQueryEvent) {
  4881. jQueryEvent.preventDefault();
  4882. }
  4883. return evt;
  4884. }
  4885. };
  4886. function hydrateObj(obj, meta) {
  4887. for (const [key, value] of Object.entries(meta || {})) {
  4888. try {
  4889. obj[key] = value;
  4890. } catch (_unused) {
  4891. Object.defineProperty(obj, key, {
  4892. configurable: true,
  4893. get() {
  4894. return value;
  4895. }
  4896. });
  4897. }
  4898. }
  4899. return obj;
  4900. }
  4901. /**
  4902. * --------------------------------------------------------------------------
  4903. * Bootstrap (v5.2.3): dom/data.js
  4904. * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
  4905. * --------------------------------------------------------------------------
  4906. */
  4907. /**
  4908. * Constants
  4909. */
  4910. const elementMap = new Map();
  4911. const Data = {
  4912. set(element, key, instance) {
  4913. if (!elementMap.has(element)) {
  4914. elementMap.set(element, new Map());
  4915. }
  4916. const instanceMap = elementMap.get(element); // make it clear we only want one instance per element
  4917. // can be removed later when multiple key/instances are fine to be used
  4918. if (!instanceMap.has(key) && instanceMap.size !== 0) {
  4919. // eslint-disable-next-line no-console
  4920. console.error(`Bootstrap doesn't allow more than one instance per element. Bound instance: ${Array.from(instanceMap.keys())[0]}.`);
  4921. return;
  4922. }
  4923. instanceMap.set(key, instance);
  4924. },
  4925. get(element, key) {
  4926. if (elementMap.has(element)) {
  4927. return elementMap.get(element).get(key) || null;
  4928. }
  4929. return null;
  4930. },
  4931. remove(element, key) {
  4932. if (!elementMap.has(element)) {
  4933. return;
  4934. }
  4935. const instanceMap = elementMap.get(element);
  4936. instanceMap.delete(key); // free up element references if there are no instances left for an element
  4937. if (instanceMap.size === 0) {
  4938. elementMap.delete(element);
  4939. }
  4940. }
  4941. };
  4942. /**
  4943. * --------------------------------------------------------------------------
  4944. * Bootstrap (v5.2.3): dom/manipulator.js
  4945. * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
  4946. * --------------------------------------------------------------------------
  4947. */
  4948. function normalizeData(value) {
  4949. if (value === 'true') {
  4950. return true;
  4951. }
  4952. if (value === 'false') {
  4953. return false;
  4954. }
  4955. if (value === Number(value).toString()) {
  4956. return Number(value);
  4957. }
  4958. if (value === '' || value === 'null') {
  4959. return null;
  4960. }
  4961. if (typeof value !== 'string') {
  4962. return value;
  4963. }
  4964. try {
  4965. return JSON.parse(decodeURIComponent(value));
  4966. } catch (_unused) {
  4967. return value;
  4968. }
  4969. }
  4970. function normalizeDataKey(key) {
  4971. return key.replace(/[A-Z]/g, chr => `-${chr.toLowerCase()}`);
  4972. }
  4973. const Manipulator = {
  4974. setDataAttribute(element, key, value) {
  4975. element.setAttribute(`data-bs-${normalizeDataKey(key)}`, value);
  4976. },
  4977. removeDataAttribute(element, key) {
  4978. element.removeAttribute(`data-bs-${normalizeDataKey(key)}`);
  4979. },
  4980. getDataAttributes(element) {
  4981. if (!element) {
  4982. return {};
  4983. }
  4984. const attributes = {};
  4985. const bsKeys = Object.keys(element.dataset).filter(key => key.startsWith('bs') && !key.startsWith('bsConfig'));
  4986. for (const key of bsKeys) {
  4987. let pureKey = key.replace(/^bs/, '');
  4988. pureKey = pureKey.charAt(0).toLowerCase() + pureKey.slice(1, pureKey.length);
  4989. attributes[pureKey] = normalizeData(element.dataset[key]);
  4990. }
  4991. return attributes;
  4992. },
  4993. getDataAttribute(element, key) {
  4994. return normalizeData(element.getAttribute(`data-bs-${normalizeDataKey(key)}`));
  4995. }
  4996. };
  4997. /**
  4998. * --------------------------------------------------------------------------
  4999. * Bootstrap (v5.2.3): util/config.js
  5000. * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
  5001. * --------------------------------------------------------------------------
  5002. */
  5003. /**
  5004. * Class definition
  5005. */
  5006. class Config {
  5007. // Getters
  5008. static get Default() {
  5009. return {};
  5010. }
  5011. static get DefaultType() {
  5012. return {};
  5013. }
  5014. static get NAME() {
  5015. throw new Error('You have to implement the static method "NAME", for each component!');
  5016. }
  5017. _getConfig(config) {
  5018. config = this._mergeConfigObj(config);
  5019. config = this._configAfterMerge(config);
  5020. this._typeCheckConfig(config);
  5021. return config;
  5022. }
  5023. _configAfterMerge(config) {
  5024. return config;
  5025. }
  5026. _mergeConfigObj(config, element) {
  5027. const jsonConfig = isElement(element) ? Manipulator.getDataAttribute(element, 'config') : {}; // try to parse
  5028. return { ...this.constructor.Default,
  5029. ...(typeof jsonConfig === 'object' ? jsonConfig : {}),
  5030. ...(isElement(element) ? Manipulator.getDataAttributes(element) : {}),
  5031. ...(typeof config === 'object' ? config : {})
  5032. };
  5033. }
  5034. _typeCheckConfig(config, configTypes = this.constructor.DefaultType) {
  5035. for (const property of Object.keys(configTypes)) {
  5036. const expectedTypes = configTypes[property];
  5037. const value = config[property];
  5038. const valueType = isElement(value) ? 'element' : toType(value);
  5039. if (!new RegExp(expectedTypes).test(valueType)) {
  5040. throw new TypeError(`${this.constructor.NAME.toUpperCase()}: Option "${property}" provided type "${valueType}" but expected type "${expectedTypes}".`);
  5041. }
  5042. }
  5043. }
  5044. }
  5045. /**
  5046. * --------------------------------------------------------------------------
  5047. * Bootstrap (v5.2.3): base-component.js
  5048. * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
  5049. * --------------------------------------------------------------------------
  5050. */
  5051. /**
  5052. * Constants
  5053. */
  5054. const VERSION = '5.2.3';
  5055. /**
  5056. * Class definition
  5057. */
  5058. class BaseComponent extends Config {
  5059. constructor(element, config) {
  5060. super();
  5061. element = getElement(element);
  5062. if (!element) {
  5063. return;
  5064. }
  5065. this._element = element;
  5066. this._config = this._getConfig(config);
  5067. Data.set(this._element, this.constructor.DATA_KEY, this);
  5068. } // Public
  5069. dispose() {
  5070. Data.remove(this._element, this.constructor.DATA_KEY);
  5071. EventHandler.off(this._element, this.constructor.EVENT_KEY);
  5072. for (const propertyName of Object.getOwnPropertyNames(this)) {
  5073. this[propertyName] = null;
  5074. }
  5075. }
  5076. _queueCallback(callback, element, isAnimated = true) {
  5077. executeAfterTransition(callback, element, isAnimated);
  5078. }
  5079. _getConfig(config) {
  5080. config = this._mergeConfigObj(config, this._element);
  5081. config = this._configAfterMerge(config);
  5082. this._typeCheckConfig(config);
  5083. return config;
  5084. } // Static
  5085. static getInstance(element) {
  5086. return Data.get(getElement(element), this.DATA_KEY);
  5087. }
  5088. static getOrCreateInstance(element, config = {}) {
  5089. return this.getInstance(element) || new this(element, typeof config === 'object' ? config : null);
  5090. }
  5091. static get VERSION() {
  5092. return VERSION;
  5093. }
  5094. static get DATA_KEY() {
  5095. return `bs.${this.NAME}`;
  5096. }
  5097. static get EVENT_KEY() {
  5098. return `.${this.DATA_KEY}`;
  5099. }
  5100. static eventName(name) {
  5101. return `${name}${this.EVENT_KEY}`;
  5102. }
  5103. }
  5104. /**
  5105. * --------------------------------------------------------------------------
  5106. * Bootstrap (v5.2.3): util/component-functions.js
  5107. * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
  5108. * --------------------------------------------------------------------------
  5109. */
  5110. const enableDismissTrigger = (component, method = 'hide') => {
  5111. const clickEvent = `click.dismiss${component.EVENT_KEY}`;
  5112. const name = component.NAME;
  5113. EventHandler.on(document, clickEvent, `[data-bs-dismiss="${name}"]`, function (event) {
  5114. if (['A', 'AREA'].includes(this.tagName)) {
  5115. event.preventDefault();
  5116. }
  5117. if (isDisabled(this)) {
  5118. return;
  5119. }
  5120. const target = getElementFromSelector(this) || this.closest(`.${name}`);
  5121. const instance = component.getOrCreateInstance(target); // Method argument is left, for Alert and only, as it doesn't implement the 'hide' method
  5122. instance[method]();
  5123. });
  5124. };
  5125. /**
  5126. * --------------------------------------------------------------------------
  5127. * Bootstrap (v5.2.3): alert.js
  5128. * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
  5129. * --------------------------------------------------------------------------
  5130. */
  5131. /**
  5132. * Constants
  5133. */
  5134. const NAME$f = 'alert';
  5135. const DATA_KEY$a = 'bs.alert';
  5136. const EVENT_KEY$b = `.${DATA_KEY$a}`;
  5137. const EVENT_CLOSE = `close${EVENT_KEY$b}`;
  5138. const EVENT_CLOSED = `closed${EVENT_KEY$b}`;
  5139. const CLASS_NAME_FADE$5 = 'fade';
  5140. const CLASS_NAME_SHOW$8 = 'show';
  5141. /**
  5142. * Class definition
  5143. */
  5144. class Alert extends BaseComponent {
  5145. // Getters
  5146. static get NAME() {
  5147. return NAME$f;
  5148. } // Public
  5149. close() {
  5150. const closeEvent = EventHandler.trigger(this._element, EVENT_CLOSE);
  5151. if (closeEvent.defaultPrevented) {
  5152. return;
  5153. }
  5154. this._element.classList.remove(CLASS_NAME_SHOW$8);
  5155. const isAnimated = this._element.classList.contains(CLASS_NAME_FADE$5);
  5156. this._queueCallback(() => this._destroyElement(), this._element, isAnimated);
  5157. } // Private
  5158. _destroyElement() {
  5159. this._element.remove();
  5160. EventHandler.trigger(this._element, EVENT_CLOSED);
  5161. this.dispose();
  5162. } // Static
  5163. static jQueryInterface(config) {
  5164. return this.each(function () {
  5165. const data = Alert.getOrCreateInstance(this);
  5166. if (typeof config !== 'string') {
  5167. return;
  5168. }
  5169. if (data[config] === undefined || config.startsWith('_') || config === 'constructor') {
  5170. throw new TypeError(`No method named "${config}"`);
  5171. }
  5172. data[config](this);
  5173. });
  5174. }
  5175. }
  5176. /**
  5177. * Data API implementation
  5178. */
  5179. enableDismissTrigger(Alert, 'close');
  5180. /**
  5181. * jQuery
  5182. */
  5183. defineJQueryPlugin(Alert);
  5184. /**
  5185. * --------------------------------------------------------------------------
  5186. * Bootstrap (v5.2.3): button.js
  5187. * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
  5188. * --------------------------------------------------------------------------
  5189. */
  5190. /**
  5191. * Constants
  5192. */
  5193. const NAME$e = 'button';
  5194. const DATA_KEY$9 = 'bs.button';
  5195. const EVENT_KEY$a = `.${DATA_KEY$9}`;
  5196. const DATA_API_KEY$6 = '.data-api';
  5197. const CLASS_NAME_ACTIVE$3 = 'active';
  5198. const SELECTOR_DATA_TOGGLE$5 = '[data-bs-toggle="button"]';
  5199. const EVENT_CLICK_DATA_API$6 = `click${EVENT_KEY$a}${DATA_API_KEY$6}`;
  5200. /**
  5201. * Class definition
  5202. */
  5203. class Button extends BaseComponent {
  5204. // Getters
  5205. static get NAME() {
  5206. return NAME$e;
  5207. } // Public
  5208. toggle() {
  5209. // Toggle class and sync the `aria-pressed` attribute with the return value of the `.toggle()` method
  5210. this._element.setAttribute('aria-pressed', this._element.classList.toggle(CLASS_NAME_ACTIVE$3));
  5211. } // Static
  5212. static jQueryInterface(config) {
  5213. return this.each(function () {
  5214. const data = Button.getOrCreateInstance(this);
  5215. if (config === 'toggle') {
  5216. data[config]();
  5217. }
  5218. });
  5219. }
  5220. }
  5221. /**
  5222. * Data API implementation
  5223. */
  5224. EventHandler.on(document, EVENT_CLICK_DATA_API$6, SELECTOR_DATA_TOGGLE$5, event => {
  5225. event.preventDefault();
  5226. const button = event.target.closest(SELECTOR_DATA_TOGGLE$5);
  5227. const data = Button.getOrCreateInstance(button);
  5228. data.toggle();
  5229. });
  5230. /**
  5231. * jQuery
  5232. */
  5233. defineJQueryPlugin(Button);
  5234. /**
  5235. * --------------------------------------------------------------------------
  5236. * Bootstrap (v5.2.3): dom/selector-engine.js
  5237. * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
  5238. * --------------------------------------------------------------------------
  5239. */
  5240. /**
  5241. * Constants
  5242. */
  5243. const SelectorEngine = {
  5244. find(selector, element = document.documentElement) {
  5245. return [].concat(...Element.prototype.querySelectorAll.call(element, selector));
  5246. },
  5247. findOne(selector, element = document.documentElement) {
  5248. return Element.prototype.querySelector.call(element, selector);
  5249. },
  5250. children(element, selector) {
  5251. return [].concat(...element.children).filter(child => child.matches(selector));
  5252. },
  5253. parents(element, selector) {
  5254. const parents = [];
  5255. let ancestor = element.parentNode.closest(selector);
  5256. while (ancestor) {
  5257. parents.push(ancestor);
  5258. ancestor = ancestor.parentNode.closest(selector);
  5259. }
  5260. return parents;
  5261. },
  5262. prev(element, selector) {
  5263. let previous = element.previousElementSibling;
  5264. while (previous) {
  5265. if (previous.matches(selector)) {
  5266. return [previous];
  5267. }
  5268. previous = previous.previousElementSibling;
  5269. }
  5270. return [];
  5271. },
  5272. // TODO: this is now unused; remove later along with prev()
  5273. next(element, selector) {
  5274. let next = element.nextElementSibling;
  5275. while (next) {
  5276. if (next.matches(selector)) {
  5277. return [next];
  5278. }
  5279. next = next.nextElementSibling;
  5280. }
  5281. return [];
  5282. },
  5283. focusableChildren(element) {
  5284. const focusables = ['a', 'button', 'input', 'textarea', 'select', 'details', '[tabindex]', '[contenteditable="true"]'].map(selector => `${selector}:not([tabindex^="-"])`).join(',');
  5285. return this.find(focusables, element).filter(el => !isDisabled(el) && isVisible(el));
  5286. }
  5287. };
  5288. /**
  5289. * --------------------------------------------------------------------------
  5290. * Bootstrap (v5.2.3): util/swipe.js
  5291. * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
  5292. * --------------------------------------------------------------------------
  5293. */
  5294. /**
  5295. * Constants
  5296. */
  5297. const NAME$d = 'swipe';
  5298. const EVENT_KEY$9 = '.bs.swipe';
  5299. const EVENT_TOUCHSTART = `touchstart${EVENT_KEY$9}`;
  5300. const EVENT_TOUCHMOVE = `touchmove${EVENT_KEY$9}`;
  5301. const EVENT_TOUCHEND = `touchend${EVENT_KEY$9}`;
  5302. const EVENT_POINTERDOWN = `pointerdown${EVENT_KEY$9}`;
  5303. const EVENT_POINTERUP = `pointerup${EVENT_KEY$9}`;
  5304. const POINTER_TYPE_TOUCH = 'touch';
  5305. const POINTER_TYPE_PEN = 'pen';
  5306. const CLASS_NAME_POINTER_EVENT = 'pointer-event';
  5307. const SWIPE_THRESHOLD = 40;
  5308. const Default$c = {
  5309. endCallback: null,
  5310. leftCallback: null,
  5311. rightCallback: null
  5312. };
  5313. const DefaultType$c = {
  5314. endCallback: '(function|null)',
  5315. leftCallback: '(function|null)',
  5316. rightCallback: '(function|null)'
  5317. };
  5318. /**
  5319. * Class definition
  5320. */
  5321. class Swipe extends Config {
  5322. constructor(element, config) {
  5323. super();
  5324. this._element = element;
  5325. if (!element || !Swipe.isSupported()) {
  5326. return;
  5327. }
  5328. this._config = this._getConfig(config);
  5329. this._deltaX = 0;
  5330. this._supportPointerEvents = Boolean(window.PointerEvent);
  5331. this._initEvents();
  5332. } // Getters
  5333. static get Default() {
  5334. return Default$c;
  5335. }
  5336. static get DefaultType() {
  5337. return DefaultType$c;
  5338. }
  5339. static get NAME() {
  5340. return NAME$d;
  5341. } // Public
  5342. dispose() {
  5343. EventHandler.off(this._element, EVENT_KEY$9);
  5344. } // Private
  5345. _start(event) {
  5346. if (!this._supportPointerEvents) {
  5347. this._deltaX = event.touches[0].clientX;
  5348. return;
  5349. }
  5350. if (this._eventIsPointerPenTouch(event)) {
  5351. this._deltaX = event.clientX;
  5352. }
  5353. }
  5354. _end(event) {
  5355. if (this._eventIsPointerPenTouch(event)) {
  5356. this._deltaX = event.clientX - this._deltaX;
  5357. }
  5358. this._handleSwipe();
  5359. execute(this._config.endCallback);
  5360. }
  5361. _move(event) {
  5362. this._deltaX = event.touches && event.touches.length > 1 ? 0 : event.touches[0].clientX - this._deltaX;
  5363. }
  5364. _handleSwipe() {
  5365. const absDeltaX = Math.abs(this._deltaX);
  5366. if (absDeltaX <= SWIPE_THRESHOLD) {
  5367. return;
  5368. }
  5369. const direction = absDeltaX / this._deltaX;
  5370. this._deltaX = 0;
  5371. if (!direction) {
  5372. return;
  5373. }
  5374. execute(direction > 0 ? this._config.rightCallback : this._config.leftCallback);
  5375. }
  5376. _initEvents() {
  5377. if (this._supportPointerEvents) {
  5378. EventHandler.on(this._element, EVENT_POINTERDOWN, event => this._start(event));
  5379. EventHandler.on(this._element, EVENT_POINTERUP, event => this._end(event));
  5380. this._element.classList.add(CLASS_NAME_POINTER_EVENT);
  5381. } else {
  5382. EventHandler.on(this._element, EVENT_TOUCHSTART, event => this._start(event));
  5383. EventHandler.on(this._element, EVENT_TOUCHMOVE, event => this._move(event));
  5384. EventHandler.on(this._element, EVENT_TOUCHEND, event => this._end(event));
  5385. }
  5386. }
  5387. _eventIsPointerPenTouch(event) {
  5388. return this._supportPointerEvents && (event.pointerType === POINTER_TYPE_PEN || event.pointerType === POINTER_TYPE_TOUCH);
  5389. } // Static
  5390. static isSupported() {
  5391. return 'ontouchstart' in document.documentElement || navigator.maxTouchPoints > 0;
  5392. }
  5393. }
  5394. /**
  5395. * --------------------------------------------------------------------------
  5396. * Bootstrap (v5.2.3): carousel.js
  5397. * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
  5398. * --------------------------------------------------------------------------
  5399. */
  5400. /**
  5401. * Constants
  5402. */
  5403. const NAME$c = 'carousel';
  5404. const DATA_KEY$8 = 'bs.carousel';
  5405. const EVENT_KEY$8 = `.${DATA_KEY$8}`;
  5406. const DATA_API_KEY$5 = '.data-api';
  5407. const ARROW_LEFT_KEY$1 = 'ArrowLeft';
  5408. const ARROW_RIGHT_KEY$1 = 'ArrowRight';
  5409. const TOUCHEVENT_COMPAT_WAIT = 500; // Time for mouse compat events to fire after touch
  5410. const ORDER_NEXT = 'next';
  5411. const ORDER_PREV = 'prev';
  5412. const DIRECTION_LEFT = 'left';
  5413. const DIRECTION_RIGHT = 'right';
  5414. const EVENT_SLIDE = `slide${EVENT_KEY$8}`;
  5415. const EVENT_SLID = `slid${EVENT_KEY$8}`;
  5416. const EVENT_KEYDOWN$1 = `keydown${EVENT_KEY$8}`;
  5417. const EVENT_MOUSEENTER$1 = `mouseenter${EVENT_KEY$8}`;
  5418. const EVENT_MOUSELEAVE$1 = `mouseleave${EVENT_KEY$8}`;
  5419. const EVENT_DRAG_START = `dragstart${EVENT_KEY$8}`;
  5420. const EVENT_LOAD_DATA_API$3 = `load${EVENT_KEY$8}${DATA_API_KEY$5}`;
  5421. const EVENT_CLICK_DATA_API$5 = `click${EVENT_KEY$8}${DATA_API_KEY$5}`;
  5422. const CLASS_NAME_CAROUSEL = 'carousel';
  5423. const CLASS_NAME_ACTIVE$2 = 'active';
  5424. const CLASS_NAME_SLIDE = 'slide';
  5425. const CLASS_NAME_END = 'carousel-item-end';
  5426. const CLASS_NAME_START = 'carousel-item-start';
  5427. const CLASS_NAME_NEXT = 'carousel-item-next';
  5428. const CLASS_NAME_PREV = 'carousel-item-prev';
  5429. const SELECTOR_ACTIVE = '.active';
  5430. const SELECTOR_ITEM = '.carousel-item';
  5431. const SELECTOR_ACTIVE_ITEM = SELECTOR_ACTIVE + SELECTOR_ITEM;
  5432. const SELECTOR_ITEM_IMG = '.carousel-item img';
  5433. const SELECTOR_INDICATORS = '.carousel-indicators';
  5434. const SELECTOR_DATA_SLIDE = '[data-bs-slide], [data-bs-slide-to]';
  5435. const SELECTOR_DATA_RIDE = '[data-bs-ride="carousel"]';
  5436. const KEY_TO_DIRECTION = {
  5437. [ARROW_LEFT_KEY$1]: DIRECTION_RIGHT,
  5438. [ARROW_RIGHT_KEY$1]: DIRECTION_LEFT
  5439. };
  5440. const Default$b = {
  5441. interval: 5000,
  5442. keyboard: true,
  5443. pause: 'hover',
  5444. ride: false,
  5445. touch: true,
  5446. wrap: true
  5447. };
  5448. const DefaultType$b = {
  5449. interval: '(number|boolean)',
  5450. // TODO:v6 remove boolean support
  5451. keyboard: 'boolean',
  5452. pause: '(string|boolean)',
  5453. ride: '(boolean|string)',
  5454. touch: 'boolean',
  5455. wrap: 'boolean'
  5456. };
  5457. /**
  5458. * Class definition
  5459. */
  5460. class Carousel extends BaseComponent {
  5461. constructor(element, config) {
  5462. super(element, config);
  5463. this._interval = null;
  5464. this._activeElement = null;
  5465. this._isSliding = false;
  5466. this.touchTimeout = null;
  5467. this._swipeHelper = null;
  5468. this._indicatorsElement = SelectorEngine.findOne(SELECTOR_INDICATORS, this._element);
  5469. this._addEventListeners();
  5470. if (this._config.ride === CLASS_NAME_CAROUSEL) {
  5471. this.cycle();
  5472. }
  5473. } // Getters
  5474. static get Default() {
  5475. return Default$b;
  5476. }
  5477. static get DefaultType() {
  5478. return DefaultType$b;
  5479. }
  5480. static get NAME() {
  5481. return NAME$c;
  5482. } // Public
  5483. next() {
  5484. this._slide(ORDER_NEXT);
  5485. }
  5486. nextWhenVisible() {
  5487. // FIXME TODO use `document.visibilityState`
  5488. // Don't call next when the page isn't visible
  5489. // or the carousel or its parent isn't visible
  5490. if (!document.hidden && isVisible(this._element)) {
  5491. this.next();
  5492. }
  5493. }
  5494. prev() {
  5495. this._slide(ORDER_PREV);
  5496. }
  5497. pause() {
  5498. if (this._isSliding) {
  5499. triggerTransitionEnd(this._element);
  5500. }
  5501. this._clearInterval();
  5502. }
  5503. cycle() {
  5504. this._clearInterval();
  5505. this._updateInterval();
  5506. this._interval = setInterval(() => this.nextWhenVisible(), this._config.interval);
  5507. }
  5508. _maybeEnableCycle() {
  5509. if (!this._config.ride) {
  5510. return;
  5511. }
  5512. if (this._isSliding) {
  5513. EventHandler.one(this._element, EVENT_SLID, () => this.cycle());
  5514. return;
  5515. }
  5516. this.cycle();
  5517. }
  5518. to(index) {
  5519. const items = this._getItems();
  5520. if (index > items.length - 1 || index < 0) {
  5521. return;
  5522. }
  5523. if (this._isSliding) {
  5524. EventHandler.one(this._element, EVENT_SLID, () => this.to(index));
  5525. return;
  5526. }
  5527. const activeIndex = this._getItemIndex(this._getActive());
  5528. if (activeIndex === index) {
  5529. return;
  5530. }
  5531. const order = index > activeIndex ? ORDER_NEXT : ORDER_PREV;
  5532. this._slide(order, items[index]);
  5533. }
  5534. dispose() {
  5535. if (this._swipeHelper) {
  5536. this._swipeHelper.dispose();
  5537. }
  5538. super.dispose();
  5539. } // Private
  5540. _configAfterMerge(config) {
  5541. config.defaultInterval = config.interval;
  5542. return config;
  5543. }
  5544. _addEventListeners() {
  5545. if (this._config.keyboard) {
  5546. EventHandler.on(this._element, EVENT_KEYDOWN$1, event => this._keydown(event));
  5547. }
  5548. if (this._config.pause === 'hover') {
  5549. EventHandler.on(this._element, EVENT_MOUSEENTER$1, () => this.pause());
  5550. EventHandler.on(this._element, EVENT_MOUSELEAVE$1, () => this._maybeEnableCycle());
  5551. }
  5552. if (this._config.touch && Swipe.isSupported()) {
  5553. this._addTouchEventListeners();
  5554. }
  5555. }
  5556. _addTouchEventListeners() {
  5557. for (const img of SelectorEngine.find(SELECTOR_ITEM_IMG, this._element)) {
  5558. EventHandler.on(img, EVENT_DRAG_START, event => event.preventDefault());
  5559. }
  5560. const endCallBack = () => {
  5561. if (this._config.pause !== 'hover') {
  5562. return;
  5563. } // If it's a touch-enabled device, mouseenter/leave are fired as
  5564. // part of the mouse compatibility events on first tap - the carousel
  5565. // would stop cycling until user tapped out of it;
  5566. // here, we listen for touchend, explicitly pause the carousel
  5567. // (as if it's the second time we tap on it, mouseenter compat event
  5568. // is NOT fired) and after a timeout (to allow for mouse compatibility
  5569. // events to fire) we explicitly restart cycling
  5570. this.pause();
  5571. if (this.touchTimeout) {
  5572. clearTimeout(this.touchTimeout);
  5573. }
  5574. this.touchTimeout = setTimeout(() => this._maybeEnableCycle(), TOUCHEVENT_COMPAT_WAIT + this._config.interval);
  5575. };
  5576. const swipeConfig = {
  5577. leftCallback: () => this._slide(this._directionToOrder(DIRECTION_LEFT)),
  5578. rightCallback: () => this._slide(this._directionToOrder(DIRECTION_RIGHT)),
  5579. endCallback: endCallBack
  5580. };
  5581. this._swipeHelper = new Swipe(this._element, swipeConfig);
  5582. }
  5583. _keydown(event) {
  5584. if (/input|textarea/i.test(event.target.tagName)) {
  5585. return;
  5586. }
  5587. const direction = KEY_TO_DIRECTION[event.key];
  5588. if (direction) {
  5589. event.preventDefault();
  5590. this._slide(this._directionToOrder(direction));
  5591. }
  5592. }
  5593. _getItemIndex(element) {
  5594. return this._getItems().indexOf(element);
  5595. }
  5596. _setActiveIndicatorElement(index) {
  5597. if (!this._indicatorsElement) {
  5598. return;
  5599. }
  5600. const activeIndicator = SelectorEngine.findOne(SELECTOR_ACTIVE, this._indicatorsElement);
  5601. activeIndicator.classList.remove(CLASS_NAME_ACTIVE$2);
  5602. activeIndicator.removeAttribute('aria-current');
  5603. const newActiveIndicator = SelectorEngine.findOne(`[data-bs-slide-to="${index}"]`, this._indicatorsElement);
  5604. if (newActiveIndicator) {
  5605. newActiveIndicator.classList.add(CLASS_NAME_ACTIVE$2);
  5606. newActiveIndicator.setAttribute('aria-current', 'true');
  5607. }
  5608. }
  5609. _updateInterval() {
  5610. const element = this._activeElement || this._getActive();
  5611. if (!element) {
  5612. return;
  5613. }
  5614. const elementInterval = Number.parseInt(element.getAttribute('data-bs-interval'), 10);
  5615. this._config.interval = elementInterval || this._config.defaultInterval;
  5616. }
  5617. _slide(order, element = null) {
  5618. if (this._isSliding) {
  5619. return;
  5620. }
  5621. const activeElement = this._getActive();
  5622. const isNext = order === ORDER_NEXT;
  5623. const nextElement = element || getNextActiveElement(this._getItems(), activeElement, isNext, this._config.wrap);
  5624. if (nextElement === activeElement) {
  5625. return;
  5626. }
  5627. const nextElementIndex = this._getItemIndex(nextElement);
  5628. const triggerEvent = eventName => {
  5629. return EventHandler.trigger(this._element, eventName, {
  5630. relatedTarget: nextElement,
  5631. direction: this._orderToDirection(order),
  5632. from: this._getItemIndex(activeElement),
  5633. to: nextElementIndex
  5634. });
  5635. };
  5636. const slideEvent = triggerEvent(EVENT_SLIDE);
  5637. if (slideEvent.defaultPrevented) {
  5638. return;
  5639. }
  5640. if (!activeElement || !nextElement) {
  5641. // Some weirdness is happening, so we bail
  5642. // todo: change tests that use empty divs to avoid this check
  5643. return;
  5644. }
  5645. const isCycling = Boolean(this._interval);
  5646. this.pause();
  5647. this._isSliding = true;
  5648. this._setActiveIndicatorElement(nextElementIndex);
  5649. this._activeElement = nextElement;
  5650. const directionalClassName = isNext ? CLASS_NAME_START : CLASS_NAME_END;
  5651. const orderClassName = isNext ? CLASS_NAME_NEXT : CLASS_NAME_PREV;
  5652. nextElement.classList.add(orderClassName);
  5653. reflow(nextElement);
  5654. activeElement.classList.add(directionalClassName);
  5655. nextElement.classList.add(directionalClassName);
  5656. const completeCallBack = () => {
  5657. nextElement.classList.remove(directionalClassName, orderClassName);
  5658. nextElement.classList.add(CLASS_NAME_ACTIVE$2);
  5659. activeElement.classList.remove(CLASS_NAME_ACTIVE$2, orderClassName, directionalClassName);
  5660. this._isSliding = false;
  5661. triggerEvent(EVENT_SLID);
  5662. };
  5663. this._queueCallback(completeCallBack, activeElement, this._isAnimated());
  5664. if (isCycling) {
  5665. this.cycle();
  5666. }
  5667. }
  5668. _isAnimated() {
  5669. return this._element.classList.contains(CLASS_NAME_SLIDE);
  5670. }
  5671. _getActive() {
  5672. return SelectorEngine.findOne(SELECTOR_ACTIVE_ITEM, this._element);
  5673. }
  5674. _getItems() {
  5675. return SelectorEngine.find(SELECTOR_ITEM, this._element);
  5676. }
  5677. _clearInterval() {
  5678. if (this._interval) {
  5679. clearInterval(this._interval);
  5680. this._interval = null;
  5681. }
  5682. }
  5683. _directionToOrder(direction) {
  5684. if (isRTL()) {
  5685. return direction === DIRECTION_LEFT ? ORDER_PREV : ORDER_NEXT;
  5686. }
  5687. return direction === DIRECTION_LEFT ? ORDER_NEXT : ORDER_PREV;
  5688. }
  5689. _orderToDirection(order) {
  5690. if (isRTL()) {
  5691. return order === ORDER_PREV ? DIRECTION_LEFT : DIRECTION_RIGHT;
  5692. }
  5693. return order === ORDER_PREV ? DIRECTION_RIGHT : DIRECTION_LEFT;
  5694. } // Static
  5695. static jQueryInterface(config) {
  5696. return this.each(function () {
  5697. const data = Carousel.getOrCreateInstance(this, config);
  5698. if (typeof config === 'number') {
  5699. data.to(config);
  5700. return;
  5701. }
  5702. if (typeof config === 'string') {
  5703. if (data[config] === undefined || config.startsWith('_') || config === 'constructor') {
  5704. throw new TypeError(`No method named "${config}"`);
  5705. }
  5706. data[config]();
  5707. }
  5708. });
  5709. }
  5710. }
  5711. /**
  5712. * Data API implementation
  5713. */
  5714. EventHandler.on(document, EVENT_CLICK_DATA_API$5, SELECTOR_DATA_SLIDE, function (event) {
  5715. const target = getElementFromSelector(this);
  5716. if (!target || !target.classList.contains(CLASS_NAME_CAROUSEL)) {
  5717. return;
  5718. }
  5719. event.preventDefault();
  5720. const carousel = Carousel.getOrCreateInstance(target);
  5721. const slideIndex = this.getAttribute('data-bs-slide-to');
  5722. if (slideIndex) {
  5723. carousel.to(slideIndex);
  5724. carousel._maybeEnableCycle();
  5725. return;
  5726. }
  5727. if (Manipulator.getDataAttribute(this, 'slide') === 'next') {
  5728. carousel.next();
  5729. carousel._maybeEnableCycle();
  5730. return;
  5731. }
  5732. carousel.prev();
  5733. carousel._maybeEnableCycle();
  5734. });
  5735. EventHandler.on(window, EVENT_LOAD_DATA_API$3, () => {
  5736. const carousels = SelectorEngine.find(SELECTOR_DATA_RIDE);
  5737. for (const carousel of carousels) {
  5738. Carousel.getOrCreateInstance(carousel);
  5739. }
  5740. });
  5741. /**
  5742. * jQuery
  5743. */
  5744. defineJQueryPlugin(Carousel);
  5745. /**
  5746. * --------------------------------------------------------------------------
  5747. * Bootstrap (v5.2.3): collapse.js
  5748. * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
  5749. * --------------------------------------------------------------------------
  5750. */
  5751. /**
  5752. * Constants
  5753. */
  5754. const NAME$b = 'collapse';
  5755. const DATA_KEY$7 = 'bs.collapse';
  5756. const EVENT_KEY$7 = `.${DATA_KEY$7}`;
  5757. const DATA_API_KEY$4 = '.data-api';
  5758. const EVENT_SHOW$6 = `show${EVENT_KEY$7}`;
  5759. const EVENT_SHOWN$6 = `shown${EVENT_KEY$7}`;
  5760. const EVENT_HIDE$6 = `hide${EVENT_KEY$7}`;
  5761. const EVENT_HIDDEN$6 = `hidden${EVENT_KEY$7}`;
  5762. const EVENT_CLICK_DATA_API$4 = `click${EVENT_KEY$7}${DATA_API_KEY$4}`;
  5763. const CLASS_NAME_SHOW$7 = 'show';
  5764. const CLASS_NAME_COLLAPSE = 'collapse';
  5765. const CLASS_NAME_COLLAPSING = 'collapsing';
  5766. const CLASS_NAME_COLLAPSED = 'collapsed';
  5767. const CLASS_NAME_DEEPER_CHILDREN = `:scope .${CLASS_NAME_COLLAPSE} .${CLASS_NAME_COLLAPSE}`;
  5768. const CLASS_NAME_HORIZONTAL = 'collapse-horizontal';
  5769. const WIDTH = 'width';
  5770. const HEIGHT = 'height';
  5771. const SELECTOR_ACTIVES = '.collapse.show, .collapse.collapsing';
  5772. const SELECTOR_DATA_TOGGLE$4 = '[data-bs-toggle="collapse"]';
  5773. const Default$a = {
  5774. parent: null,
  5775. toggle: true
  5776. };
  5777. const DefaultType$a = {
  5778. parent: '(null|element)',
  5779. toggle: 'boolean'
  5780. };
  5781. /**
  5782. * Class definition
  5783. */
  5784. class Collapse extends BaseComponent {
  5785. constructor(element, config) {
  5786. super(element, config);
  5787. this._isTransitioning = false;
  5788. this._triggerArray = [];
  5789. const toggleList = SelectorEngine.find(SELECTOR_DATA_TOGGLE$4);
  5790. for (const elem of toggleList) {
  5791. const selector = getSelectorFromElement(elem);
  5792. const filterElement = SelectorEngine.find(selector).filter(foundElement => foundElement === this._element);
  5793. if (selector !== null && filterElement.length) {
  5794. this._triggerArray.push(elem);
  5795. }
  5796. }
  5797. this._initializeChildren();
  5798. if (!this._config.parent) {
  5799. this._addAriaAndCollapsedClass(this._triggerArray, this._isShown());
  5800. }
  5801. if (this._config.toggle) {
  5802. this.toggle();
  5803. }
  5804. } // Getters
  5805. static get Default() {
  5806. return Default$a;
  5807. }
  5808. static get DefaultType() {
  5809. return DefaultType$a;
  5810. }
  5811. static get NAME() {
  5812. return NAME$b;
  5813. } // Public
  5814. toggle() {
  5815. if (this._isShown()) {
  5816. this.hide();
  5817. } else {
  5818. this.show();
  5819. }
  5820. }
  5821. show() {
  5822. if (this._isTransitioning || this._isShown()) {
  5823. return;
  5824. }
  5825. let activeChildren = []; // find active children
  5826. if (this._config.parent) {
  5827. activeChildren = this._getFirstLevelChildren(SELECTOR_ACTIVES).filter(element => element !== this._element).map(element => Collapse.getOrCreateInstance(element, {
  5828. toggle: false
  5829. }));
  5830. }
  5831. if (activeChildren.length && activeChildren[0]._isTransitioning) {
  5832. return;
  5833. }
  5834. const startEvent = EventHandler.trigger(this._element, EVENT_SHOW$6);
  5835. if (startEvent.defaultPrevented) {
  5836. return;
  5837. }
  5838. for (const activeInstance of activeChildren) {
  5839. activeInstance.hide();
  5840. }
  5841. const dimension = this._getDimension();
  5842. this._element.classList.remove(CLASS_NAME_COLLAPSE);
  5843. this._element.classList.add(CLASS_NAME_COLLAPSING);
  5844. this._element.style[dimension] = 0;
  5845. this._addAriaAndCollapsedClass(this._triggerArray, true);
  5846. this._isTransitioning = true;
  5847. const complete = () => {
  5848. this._isTransitioning = false;
  5849. this._element.classList.remove(CLASS_NAME_COLLAPSING);
  5850. this._element.classList.add(CLASS_NAME_COLLAPSE, CLASS_NAME_SHOW$7);
  5851. this._element.style[dimension] = '';
  5852. EventHandler.trigger(this._element, EVENT_SHOWN$6);
  5853. };
  5854. const capitalizedDimension = dimension[0].toUpperCase() + dimension.slice(1);
  5855. const scrollSize = `scroll${capitalizedDimension}`;
  5856. this._queueCallback(complete, this._element, true);
  5857. this._element.style[dimension] = `${this._element[scrollSize]}px`;
  5858. }
  5859. hide() {
  5860. if (this._isTransitioning || !this._isShown()) {
  5861. return;
  5862. }
  5863. const startEvent = EventHandler.trigger(this._element, EVENT_HIDE$6);
  5864. if (startEvent.defaultPrevented) {
  5865. return;
  5866. }
  5867. const dimension = this._getDimension();
  5868. this._element.style[dimension] = `${this._element.getBoundingClientRect()[dimension]}px`;
  5869. reflow(this._element);
  5870. this._element.classList.add(CLASS_NAME_COLLAPSING);
  5871. this._element.classList.remove(CLASS_NAME_COLLAPSE, CLASS_NAME_SHOW$7);
  5872. for (const trigger of this._triggerArray) {
  5873. const element = getElementFromSelector(trigger);
  5874. if (element && !this._isShown(element)) {
  5875. this._addAriaAndCollapsedClass([trigger], false);
  5876. }
  5877. }
  5878. this._isTransitioning = true;
  5879. const complete = () => {
  5880. this._isTransitioning = false;
  5881. this._element.classList.remove(CLASS_NAME_COLLAPSING);
  5882. this._element.classList.add(CLASS_NAME_COLLAPSE);
  5883. EventHandler.trigger(this._element, EVENT_HIDDEN$6);
  5884. };
  5885. this._element.style[dimension] = '';
  5886. this._queueCallback(complete, this._element, true);
  5887. }
  5888. _isShown(element = this._element) {
  5889. return element.classList.contains(CLASS_NAME_SHOW$7);
  5890. } // Private
  5891. _configAfterMerge(config) {
  5892. config.toggle = Boolean(config.toggle); // Coerce string values
  5893. config.parent = getElement(config.parent);
  5894. return config;
  5895. }
  5896. _getDimension() {
  5897. return this._element.classList.contains(CLASS_NAME_HORIZONTAL) ? WIDTH : HEIGHT;
  5898. }
  5899. _initializeChildren() {
  5900. if (!this._config.parent) {
  5901. return;
  5902. }
  5903. const children = this._getFirstLevelChildren(SELECTOR_DATA_TOGGLE$4);
  5904. for (const element of children) {
  5905. const selected = getElementFromSelector(element);
  5906. if (selected) {
  5907. this._addAriaAndCollapsedClass([element], this._isShown(selected));
  5908. }
  5909. }
  5910. }
  5911. _getFirstLevelChildren(selector) {
  5912. const children = SelectorEngine.find(CLASS_NAME_DEEPER_CHILDREN, this._config.parent); // remove children if greater depth
  5913. return SelectorEngine.find(selector, this._config.parent).filter(element => !children.includes(element));
  5914. }
  5915. _addAriaAndCollapsedClass(triggerArray, isOpen) {
  5916. if (!triggerArray.length) {
  5917. return;
  5918. }
  5919. for (const element of triggerArray) {
  5920. element.classList.toggle(CLASS_NAME_COLLAPSED, !isOpen);
  5921. element.setAttribute('aria-expanded', isOpen);
  5922. }
  5923. } // Static
  5924. static jQueryInterface(config) {
  5925. const _config = {};
  5926. if (typeof config === 'string' && /show|hide/.test(config)) {
  5927. _config.toggle = false;
  5928. }
  5929. return this.each(function () {
  5930. const data = Collapse.getOrCreateInstance(this, _config);
  5931. if (typeof config === 'string') {
  5932. if (typeof data[config] === 'undefined') {
  5933. throw new TypeError(`No method named "${config}"`);
  5934. }
  5935. data[config]();
  5936. }
  5937. });
  5938. }
  5939. }
  5940. /**
  5941. * Data API implementation
  5942. */
  5943. EventHandler.on(document, EVENT_CLICK_DATA_API$4, SELECTOR_DATA_TOGGLE$4, function (event) {
  5944. // preventDefault only for <a> elements (which change the URL) not inside the collapsible element
  5945. if (event.target.tagName === 'A' || event.delegateTarget && event.delegateTarget.tagName === 'A') {
  5946. event.preventDefault();
  5947. }
  5948. const selector = getSelectorFromElement(this);
  5949. const selectorElements = SelectorEngine.find(selector);
  5950. for (const element of selectorElements) {
  5951. Collapse.getOrCreateInstance(element, {
  5952. toggle: false
  5953. }).toggle();
  5954. }
  5955. });
  5956. /**
  5957. * jQuery
  5958. */
  5959. defineJQueryPlugin(Collapse);
  5960. /**
  5961. * --------------------------------------------------------------------------
  5962. * Bootstrap (v5.2.3): dropdown.js
  5963. * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
  5964. * --------------------------------------------------------------------------
  5965. */
  5966. /**
  5967. * Constants
  5968. */
  5969. const NAME$a = 'dropdown';
  5970. const DATA_KEY$6 = 'bs.dropdown';
  5971. const EVENT_KEY$6 = `.${DATA_KEY$6}`;
  5972. const DATA_API_KEY$3 = '.data-api';
  5973. const ESCAPE_KEY$2 = 'Escape';
  5974. const TAB_KEY$1 = 'Tab';
  5975. const ARROW_UP_KEY$1 = 'ArrowUp';
  5976. const ARROW_DOWN_KEY$1 = 'ArrowDown';
  5977. const RIGHT_MOUSE_BUTTON = 2; // MouseEvent.button value for the secondary button, usually the right button
  5978. const EVENT_HIDE$5 = `hide${EVENT_KEY$6}`;
  5979. const EVENT_HIDDEN$5 = `hidden${EVENT_KEY$6}`;
  5980. const EVENT_SHOW$5 = `show${EVENT_KEY$6}`;
  5981. const EVENT_SHOWN$5 = `shown${EVENT_KEY$6}`;
  5982. const EVENT_CLICK_DATA_API$3 = `click${EVENT_KEY$6}${DATA_API_KEY$3}`;
  5983. const EVENT_KEYDOWN_DATA_API = `keydown${EVENT_KEY$6}${DATA_API_KEY$3}`;
  5984. const EVENT_KEYUP_DATA_API = `keyup${EVENT_KEY$6}${DATA_API_KEY$3}`;
  5985. const CLASS_NAME_SHOW$6 = 'show';
  5986. const CLASS_NAME_DROPUP = 'dropup';
  5987. const CLASS_NAME_DROPEND = 'dropend';
  5988. const CLASS_NAME_DROPSTART = 'dropstart';
  5989. const CLASS_NAME_DROPUP_CENTER = 'dropup-center';
  5990. const CLASS_NAME_DROPDOWN_CENTER = 'dropdown-center';
  5991. const SELECTOR_DATA_TOGGLE$3 = '[data-bs-toggle="dropdown"]:not(.disabled):not(:disabled)';
  5992. const SELECTOR_DATA_TOGGLE_SHOWN = `${SELECTOR_DATA_TOGGLE$3}.${CLASS_NAME_SHOW$6}`;
  5993. const SELECTOR_MENU = '.dropdown-menu';
  5994. const SELECTOR_NAVBAR = '.navbar';
  5995. const SELECTOR_NAVBAR_NAV = '.navbar-nav';
  5996. const SELECTOR_VISIBLE_ITEMS = '.dropdown-menu .dropdown-item:not(.disabled):not(:disabled)';
  5997. const PLACEMENT_TOP = isRTL() ? 'top-end' : 'top-start';
  5998. const PLACEMENT_TOPEND = isRTL() ? 'top-start' : 'top-end';
  5999. const PLACEMENT_BOTTOM = isRTL() ? 'bottom-end' : 'bottom-start';
  6000. const PLACEMENT_BOTTOMEND = isRTL() ? 'bottom-start' : 'bottom-end';
  6001. const PLACEMENT_RIGHT = isRTL() ? 'left-start' : 'right-start';
  6002. const PLACEMENT_LEFT = isRTL() ? 'right-start' : 'left-start';
  6003. const PLACEMENT_TOPCENTER = 'top';
  6004. const PLACEMENT_BOTTOMCENTER = 'bottom';
  6005. const Default$9 = {
  6006. autoClose: true,
  6007. boundary: 'clippingParents',
  6008. display: 'dynamic',
  6009. offset: [0, 2],
  6010. popperConfig: null,
  6011. reference: 'toggle'
  6012. };
  6013. const DefaultType$9 = {
  6014. autoClose: '(boolean|string)',
  6015. boundary: '(string|element)',
  6016. display: 'string',
  6017. offset: '(array|string|function)',
  6018. popperConfig: '(null|object|function)',
  6019. reference: '(string|element|object)'
  6020. };
  6021. /**
  6022. * Class definition
  6023. */
  6024. class Dropdown extends BaseComponent {
  6025. constructor(element, config) {
  6026. super(element, config);
  6027. this._popper = null;
  6028. this._parent = this._element.parentNode; // dropdown wrapper
  6029. // todo: v6 revert #37011 & change markup https://getbootstrap.com/docs/5.2/forms/input-group/
  6030. this._menu = SelectorEngine.next(this._element, SELECTOR_MENU)[0] || SelectorEngine.prev(this._element, SELECTOR_MENU)[0] || SelectorEngine.findOne(SELECTOR_MENU, this._parent);
  6031. this._inNavbar = this._detectNavbar();
  6032. } // Getters
  6033. static get Default() {
  6034. return Default$9;
  6035. }
  6036. static get DefaultType() {
  6037. return DefaultType$9;
  6038. }
  6039. static get NAME() {
  6040. return NAME$a;
  6041. } // Public
  6042. toggle() {
  6043. return this._isShown() ? this.hide() : this.show();
  6044. }
  6045. show() {
  6046. if (isDisabled(this._element) || this._isShown()) {
  6047. return;
  6048. }
  6049. const relatedTarget = {
  6050. relatedTarget: this._element
  6051. };
  6052. const showEvent = EventHandler.trigger(this._element, EVENT_SHOW$5, relatedTarget);
  6053. if (showEvent.defaultPrevented) {
  6054. return;
  6055. }
  6056. this._createPopper(); // If this is a touch-enabled device we add extra
  6057. // empty mouseover listeners to the body's immediate children;
  6058. // only needed because of broken event delegation on iOS
  6059. // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html
  6060. if ('ontouchstart' in document.documentElement && !this._parent.closest(SELECTOR_NAVBAR_NAV)) {
  6061. for (const element of [].concat(...document.body.children)) {
  6062. EventHandler.on(element, 'mouseover', noop);
  6063. }
  6064. }
  6065. this._element.focus();
  6066. this._element.setAttribute('aria-expanded', true);
  6067. this._menu.classList.add(CLASS_NAME_SHOW$6);
  6068. this._element.classList.add(CLASS_NAME_SHOW$6);
  6069. EventHandler.trigger(this._element, EVENT_SHOWN$5, relatedTarget);
  6070. }
  6071. hide() {
  6072. if (isDisabled(this._element) || !this._isShown()) {
  6073. return;
  6074. }
  6075. const relatedTarget = {
  6076. relatedTarget: this._element
  6077. };
  6078. this._completeHide(relatedTarget);
  6079. }
  6080. dispose() {
  6081. if (this._popper) {
  6082. this._popper.destroy();
  6083. }
  6084. super.dispose();
  6085. }
  6086. update() {
  6087. this._inNavbar = this._detectNavbar();
  6088. if (this._popper) {
  6089. this._popper.update();
  6090. }
  6091. } // Private
  6092. _completeHide(relatedTarget) {
  6093. const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE$5, relatedTarget);
  6094. if (hideEvent.defaultPrevented) {
  6095. return;
  6096. } // If this is a touch-enabled device we remove the extra
  6097. // empty mouseover listeners we added for iOS support
  6098. if ('ontouchstart' in document.documentElement) {
  6099. for (const element of [].concat(...document.body.children)) {
  6100. EventHandler.off(element, 'mouseover', noop);
  6101. }
  6102. }
  6103. if (this._popper) {
  6104. this._popper.destroy();
  6105. }
  6106. this._menu.classList.remove(CLASS_NAME_SHOW$6);
  6107. this._element.classList.remove(CLASS_NAME_SHOW$6);
  6108. this._element.setAttribute('aria-expanded', 'false');
  6109. Manipulator.removeDataAttribute(this._menu, 'popper');
  6110. EventHandler.trigger(this._element, EVENT_HIDDEN$5, relatedTarget);
  6111. }
  6112. _getConfig(config) {
  6113. config = super._getConfig(config);
  6114. if (typeof config.reference === 'object' && !isElement(config.reference) && typeof config.reference.getBoundingClientRect !== 'function') {
  6115. // Popper virtual elements require a getBoundingClientRect method
  6116. throw new TypeError(`${NAME$a.toUpperCase()}: Option "reference" provided type "object" without a required "getBoundingClientRect" method.`);
  6117. }
  6118. return config;
  6119. }
  6120. _createPopper() {
  6121. if (typeof _popperjs_core__WEBPACK_IMPORTED_MODULE_0__ === 'undefined') {
  6122. throw new TypeError('Bootstrap\'s dropdowns require Popper (https://popper.js.org)');
  6123. }
  6124. let referenceElement = this._element;
  6125. if (this._config.reference === 'parent') {
  6126. referenceElement = this._parent;
  6127. } else if (isElement(this._config.reference)) {
  6128. referenceElement = getElement(this._config.reference);
  6129. } else if (typeof this._config.reference === 'object') {
  6130. referenceElement = this._config.reference;
  6131. }
  6132. const popperConfig = this._getPopperConfig();
  6133. this._popper = _popperjs_core__WEBPACK_IMPORTED_MODULE_1__.createPopper(referenceElement, this._menu, popperConfig);
  6134. }
  6135. _isShown() {
  6136. return this._menu.classList.contains(CLASS_NAME_SHOW$6);
  6137. }
  6138. _getPlacement() {
  6139. const parentDropdown = this._parent;
  6140. if (parentDropdown.classList.contains(CLASS_NAME_DROPEND)) {
  6141. return PLACEMENT_RIGHT;
  6142. }
  6143. if (parentDropdown.classList.contains(CLASS_NAME_DROPSTART)) {
  6144. return PLACEMENT_LEFT;
  6145. }
  6146. if (parentDropdown.classList.contains(CLASS_NAME_DROPUP_CENTER)) {
  6147. return PLACEMENT_TOPCENTER;
  6148. }
  6149. if (parentDropdown.classList.contains(CLASS_NAME_DROPDOWN_CENTER)) {
  6150. return PLACEMENT_BOTTOMCENTER;
  6151. } // We need to trim the value because custom properties can also include spaces
  6152. const isEnd = getComputedStyle(this._menu).getPropertyValue('--bs-position').trim() === 'end';
  6153. if (parentDropdown.classList.contains(CLASS_NAME_DROPUP)) {
  6154. return isEnd ? PLACEMENT_TOPEND : PLACEMENT_TOP;
  6155. }
  6156. return isEnd ? PLACEMENT_BOTTOMEND : PLACEMENT_BOTTOM;
  6157. }
  6158. _detectNavbar() {
  6159. return this._element.closest(SELECTOR_NAVBAR) !== null;
  6160. }
  6161. _getOffset() {
  6162. const {
  6163. offset
  6164. } = this._config;
  6165. if (typeof offset === 'string') {
  6166. return offset.split(',').map(value => Number.parseInt(value, 10));
  6167. }
  6168. if (typeof offset === 'function') {
  6169. return popperData => offset(popperData, this._element);
  6170. }
  6171. return offset;
  6172. }
  6173. _getPopperConfig() {
  6174. const defaultBsPopperConfig = {
  6175. placement: this._getPlacement(),
  6176. modifiers: [{
  6177. name: 'preventOverflow',
  6178. options: {
  6179. boundary: this._config.boundary
  6180. }
  6181. }, {
  6182. name: 'offset',
  6183. options: {
  6184. offset: this._getOffset()
  6185. }
  6186. }]
  6187. }; // Disable Popper if we have a static display or Dropdown is in Navbar
  6188. if (this._inNavbar || this._config.display === 'static') {
  6189. Manipulator.setDataAttribute(this._menu, 'popper', 'static'); // todo:v6 remove
  6190. defaultBsPopperConfig.modifiers = [{
  6191. name: 'applyStyles',
  6192. enabled: false
  6193. }];
  6194. }
  6195. return { ...defaultBsPopperConfig,
  6196. ...(typeof this._config.popperConfig === 'function' ? this._config.popperConfig(defaultBsPopperConfig) : this._config.popperConfig)
  6197. };
  6198. }
  6199. _selectMenuItem({
  6200. key,
  6201. target
  6202. }) {
  6203. const items = SelectorEngine.find(SELECTOR_VISIBLE_ITEMS, this._menu).filter(element => isVisible(element));
  6204. if (!items.length) {
  6205. return;
  6206. } // if target isn't included in items (e.g. when expanding the dropdown)
  6207. // allow cycling to get the last item in case key equals ARROW_UP_KEY
  6208. getNextActiveElement(items, target, key === ARROW_DOWN_KEY$1, !items.includes(target)).focus();
  6209. } // Static
  6210. static jQueryInterface(config) {
  6211. return this.each(function () {
  6212. const data = Dropdown.getOrCreateInstance(this, config);
  6213. if (typeof config !== 'string') {
  6214. return;
  6215. }
  6216. if (typeof data[config] === 'undefined') {
  6217. throw new TypeError(`No method named "${config}"`);
  6218. }
  6219. data[config]();
  6220. });
  6221. }
  6222. static clearMenus(event) {
  6223. if (event.button === RIGHT_MOUSE_BUTTON || event.type === 'keyup' && event.key !== TAB_KEY$1) {
  6224. return;
  6225. }
  6226. const openToggles = SelectorEngine.find(SELECTOR_DATA_TOGGLE_SHOWN);
  6227. for (const toggle of openToggles) {
  6228. const context = Dropdown.getInstance(toggle);
  6229. if (!context || context._config.autoClose === false) {
  6230. continue;
  6231. }
  6232. const composedPath = event.composedPath();
  6233. const isMenuTarget = composedPath.includes(context._menu);
  6234. if (composedPath.includes(context._element) || context._config.autoClose === 'inside' && !isMenuTarget || context._config.autoClose === 'outside' && isMenuTarget) {
  6235. continue;
  6236. } // Tab navigation through the dropdown menu or events from contained inputs shouldn't close the menu
  6237. if (context._menu.contains(event.target) && (event.type === 'keyup' && event.key === TAB_KEY$1 || /input|select|option|textarea|form/i.test(event.target.tagName))) {
  6238. continue;
  6239. }
  6240. const relatedTarget = {
  6241. relatedTarget: context._element
  6242. };
  6243. if (event.type === 'click') {
  6244. relatedTarget.clickEvent = event;
  6245. }
  6246. context._completeHide(relatedTarget);
  6247. }
  6248. }
  6249. static dataApiKeydownHandler(event) {
  6250. // If not an UP | DOWN | ESCAPE key => not a dropdown command
  6251. // If input/textarea && if key is other than ESCAPE => not a dropdown command
  6252. const isInput = /input|textarea/i.test(event.target.tagName);
  6253. const isEscapeEvent = event.key === ESCAPE_KEY$2;
  6254. const isUpOrDownEvent = [ARROW_UP_KEY$1, ARROW_DOWN_KEY$1].includes(event.key);
  6255. if (!isUpOrDownEvent && !isEscapeEvent) {
  6256. return;
  6257. }
  6258. if (isInput && !isEscapeEvent) {
  6259. return;
  6260. }
  6261. event.preventDefault(); // todo: v6 revert #37011 & change markup https://getbootstrap.com/docs/5.2/forms/input-group/
  6262. const getToggleButton = this.matches(SELECTOR_DATA_TOGGLE$3) ? this : SelectorEngine.prev(this, SELECTOR_DATA_TOGGLE$3)[0] || SelectorEngine.next(this, SELECTOR_DATA_TOGGLE$3)[0] || SelectorEngine.findOne(SELECTOR_DATA_TOGGLE$3, event.delegateTarget.parentNode);
  6263. const instance = Dropdown.getOrCreateInstance(getToggleButton);
  6264. if (isUpOrDownEvent) {
  6265. event.stopPropagation();
  6266. instance.show();
  6267. instance._selectMenuItem(event);
  6268. return;
  6269. }
  6270. if (instance._isShown()) {
  6271. // else is escape and we check if it is shown
  6272. event.stopPropagation();
  6273. instance.hide();
  6274. getToggleButton.focus();
  6275. }
  6276. }
  6277. }
  6278. /**
  6279. * Data API implementation
  6280. */
  6281. EventHandler.on(document, EVENT_KEYDOWN_DATA_API, SELECTOR_DATA_TOGGLE$3, Dropdown.dataApiKeydownHandler);
  6282. EventHandler.on(document, EVENT_KEYDOWN_DATA_API, SELECTOR_MENU, Dropdown.dataApiKeydownHandler);
  6283. EventHandler.on(document, EVENT_CLICK_DATA_API$3, Dropdown.clearMenus);
  6284. EventHandler.on(document, EVENT_KEYUP_DATA_API, Dropdown.clearMenus);
  6285. EventHandler.on(document, EVENT_CLICK_DATA_API$3, SELECTOR_DATA_TOGGLE$3, function (event) {
  6286. event.preventDefault();
  6287. Dropdown.getOrCreateInstance(this).toggle();
  6288. });
  6289. /**
  6290. * jQuery
  6291. */
  6292. defineJQueryPlugin(Dropdown);
  6293. /**
  6294. * --------------------------------------------------------------------------
  6295. * Bootstrap (v5.2.3): util/scrollBar.js
  6296. * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
  6297. * --------------------------------------------------------------------------
  6298. */
  6299. /**
  6300. * Constants
  6301. */
  6302. const SELECTOR_FIXED_CONTENT = '.fixed-top, .fixed-bottom, .is-fixed, .sticky-top';
  6303. const SELECTOR_STICKY_CONTENT = '.sticky-top';
  6304. const PROPERTY_PADDING = 'padding-right';
  6305. const PROPERTY_MARGIN = 'margin-right';
  6306. /**
  6307. * Class definition
  6308. */
  6309. class ScrollBarHelper {
  6310. constructor() {
  6311. this._element = document.body;
  6312. } // Public
  6313. getWidth() {
  6314. // https://developer.mozilla.org/en-US/docs/Web/API/Window/innerWidth#usage_notes
  6315. const documentWidth = document.documentElement.clientWidth;
  6316. return Math.abs(window.innerWidth - documentWidth);
  6317. }
  6318. hide() {
  6319. const width = this.getWidth();
  6320. this._disableOverFlow(); // give padding to element to balance the hidden scrollbar width
  6321. this._setElementAttributes(this._element, PROPERTY_PADDING, calculatedValue => calculatedValue + width); // trick: We adjust positive paddingRight and negative marginRight to sticky-top elements to keep showing fullwidth
  6322. this._setElementAttributes(SELECTOR_FIXED_CONTENT, PROPERTY_PADDING, calculatedValue => calculatedValue + width);
  6323. this._setElementAttributes(SELECTOR_STICKY_CONTENT, PROPERTY_MARGIN, calculatedValue => calculatedValue - width);
  6324. }
  6325. reset() {
  6326. this._resetElementAttributes(this._element, 'overflow');
  6327. this._resetElementAttributes(this._element, PROPERTY_PADDING);
  6328. this._resetElementAttributes(SELECTOR_FIXED_CONTENT, PROPERTY_PADDING);
  6329. this._resetElementAttributes(SELECTOR_STICKY_CONTENT, PROPERTY_MARGIN);
  6330. }
  6331. isOverflowing() {
  6332. return this.getWidth() > 0;
  6333. } // Private
  6334. _disableOverFlow() {
  6335. this._saveInitialAttribute(this._element, 'overflow');
  6336. this._element.style.overflow = 'hidden';
  6337. }
  6338. _setElementAttributes(selector, styleProperty, callback) {
  6339. const scrollbarWidth = this.getWidth();
  6340. const manipulationCallBack = element => {
  6341. if (element !== this._element && window.innerWidth > element.clientWidth + scrollbarWidth) {
  6342. return;
  6343. }
  6344. this._saveInitialAttribute(element, styleProperty);
  6345. const calculatedValue = window.getComputedStyle(element).getPropertyValue(styleProperty);
  6346. element.style.setProperty(styleProperty, `${callback(Number.parseFloat(calculatedValue))}px`);
  6347. };
  6348. this._applyManipulationCallback(selector, manipulationCallBack);
  6349. }
  6350. _saveInitialAttribute(element, styleProperty) {
  6351. const actualValue = element.style.getPropertyValue(styleProperty);
  6352. if (actualValue) {
  6353. Manipulator.setDataAttribute(element, styleProperty, actualValue);
  6354. }
  6355. }
  6356. _resetElementAttributes(selector, styleProperty) {
  6357. const manipulationCallBack = element => {
  6358. const value = Manipulator.getDataAttribute(element, styleProperty); // We only want to remove the property if the value is `null`; the value can also be zero
  6359. if (value === null) {
  6360. element.style.removeProperty(styleProperty);
  6361. return;
  6362. }
  6363. Manipulator.removeDataAttribute(element, styleProperty);
  6364. element.style.setProperty(styleProperty, value);
  6365. };
  6366. this._applyManipulationCallback(selector, manipulationCallBack);
  6367. }
  6368. _applyManipulationCallback(selector, callBack) {
  6369. if (isElement(selector)) {
  6370. callBack(selector);
  6371. return;
  6372. }
  6373. for (const sel of SelectorEngine.find(selector, this._element)) {
  6374. callBack(sel);
  6375. }
  6376. }
  6377. }
  6378. /**
  6379. * --------------------------------------------------------------------------
  6380. * Bootstrap (v5.2.3): util/backdrop.js
  6381. * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
  6382. * --------------------------------------------------------------------------
  6383. */
  6384. /**
  6385. * Constants
  6386. */
  6387. const NAME$9 = 'backdrop';
  6388. const CLASS_NAME_FADE$4 = 'fade';
  6389. const CLASS_NAME_SHOW$5 = 'show';
  6390. const EVENT_MOUSEDOWN = `mousedown.bs.${NAME$9}`;
  6391. const Default$8 = {
  6392. className: 'modal-backdrop',
  6393. clickCallback: null,
  6394. isAnimated: false,
  6395. isVisible: true,
  6396. // if false, we use the backdrop helper without adding any element to the dom
  6397. rootElement: 'body' // give the choice to place backdrop under different elements
  6398. };
  6399. const DefaultType$8 = {
  6400. className: 'string',
  6401. clickCallback: '(function|null)',
  6402. isAnimated: 'boolean',
  6403. isVisible: 'boolean',
  6404. rootElement: '(element|string)'
  6405. };
  6406. /**
  6407. * Class definition
  6408. */
  6409. class Backdrop extends Config {
  6410. constructor(config) {
  6411. super();
  6412. this._config = this._getConfig(config);
  6413. this._isAppended = false;
  6414. this._element = null;
  6415. } // Getters
  6416. static get Default() {
  6417. return Default$8;
  6418. }
  6419. static get DefaultType() {
  6420. return DefaultType$8;
  6421. }
  6422. static get NAME() {
  6423. return NAME$9;
  6424. } // Public
  6425. show(callback) {
  6426. if (!this._config.isVisible) {
  6427. execute(callback);
  6428. return;
  6429. }
  6430. this._append();
  6431. const element = this._getElement();
  6432. if (this._config.isAnimated) {
  6433. reflow(element);
  6434. }
  6435. element.classList.add(CLASS_NAME_SHOW$5);
  6436. this._emulateAnimation(() => {
  6437. execute(callback);
  6438. });
  6439. }
  6440. hide(callback) {
  6441. if (!this._config.isVisible) {
  6442. execute(callback);
  6443. return;
  6444. }
  6445. this._getElement().classList.remove(CLASS_NAME_SHOW$5);
  6446. this._emulateAnimation(() => {
  6447. this.dispose();
  6448. execute(callback);
  6449. });
  6450. }
  6451. dispose() {
  6452. if (!this._isAppended) {
  6453. return;
  6454. }
  6455. EventHandler.off(this._element, EVENT_MOUSEDOWN);
  6456. this._element.remove();
  6457. this._isAppended = false;
  6458. } // Private
  6459. _getElement() {
  6460. if (!this._element) {
  6461. const backdrop = document.createElement('div');
  6462. backdrop.className = this._config.className;
  6463. if (this._config.isAnimated) {
  6464. backdrop.classList.add(CLASS_NAME_FADE$4);
  6465. }
  6466. this._element = backdrop;
  6467. }
  6468. return this._element;
  6469. }
  6470. _configAfterMerge(config) {
  6471. // use getElement() with the default "body" to get a fresh Element on each instantiation
  6472. config.rootElement = getElement(config.rootElement);
  6473. return config;
  6474. }
  6475. _append() {
  6476. if (this._isAppended) {
  6477. return;
  6478. }
  6479. const element = this._getElement();
  6480. this._config.rootElement.append(element);
  6481. EventHandler.on(element, EVENT_MOUSEDOWN, () => {
  6482. execute(this._config.clickCallback);
  6483. });
  6484. this._isAppended = true;
  6485. }
  6486. _emulateAnimation(callback) {
  6487. executeAfterTransition(callback, this._getElement(), this._config.isAnimated);
  6488. }
  6489. }
  6490. /**
  6491. * --------------------------------------------------------------------------
  6492. * Bootstrap (v5.2.3): util/focustrap.js
  6493. * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
  6494. * --------------------------------------------------------------------------
  6495. */
  6496. /**
  6497. * Constants
  6498. */
  6499. const NAME$8 = 'focustrap';
  6500. const DATA_KEY$5 = 'bs.focustrap';
  6501. const EVENT_KEY$5 = `.${DATA_KEY$5}`;
  6502. const EVENT_FOCUSIN$2 = `focusin${EVENT_KEY$5}`;
  6503. const EVENT_KEYDOWN_TAB = `keydown.tab${EVENT_KEY$5}`;
  6504. const TAB_KEY = 'Tab';
  6505. const TAB_NAV_FORWARD = 'forward';
  6506. const TAB_NAV_BACKWARD = 'backward';
  6507. const Default$7 = {
  6508. autofocus: true,
  6509. trapElement: null // The element to trap focus inside of
  6510. };
  6511. const DefaultType$7 = {
  6512. autofocus: 'boolean',
  6513. trapElement: 'element'
  6514. };
  6515. /**
  6516. * Class definition
  6517. */
  6518. class FocusTrap extends Config {
  6519. constructor(config) {
  6520. super();
  6521. this._config = this._getConfig(config);
  6522. this._isActive = false;
  6523. this._lastTabNavDirection = null;
  6524. } // Getters
  6525. static get Default() {
  6526. return Default$7;
  6527. }
  6528. static get DefaultType() {
  6529. return DefaultType$7;
  6530. }
  6531. static get NAME() {
  6532. return NAME$8;
  6533. } // Public
  6534. activate() {
  6535. if (this._isActive) {
  6536. return;
  6537. }
  6538. if (this._config.autofocus) {
  6539. this._config.trapElement.focus();
  6540. }
  6541. EventHandler.off(document, EVENT_KEY$5); // guard against infinite focus loop
  6542. EventHandler.on(document, EVENT_FOCUSIN$2, event => this._handleFocusin(event));
  6543. EventHandler.on(document, EVENT_KEYDOWN_TAB, event => this._handleKeydown(event));
  6544. this._isActive = true;
  6545. }
  6546. deactivate() {
  6547. if (!this._isActive) {
  6548. return;
  6549. }
  6550. this._isActive = false;
  6551. EventHandler.off(document, EVENT_KEY$5);
  6552. } // Private
  6553. _handleFocusin(event) {
  6554. const {
  6555. trapElement
  6556. } = this._config;
  6557. if (event.target === document || event.target === trapElement || trapElement.contains(event.target)) {
  6558. return;
  6559. }
  6560. const elements = SelectorEngine.focusableChildren(trapElement);
  6561. if (elements.length === 0) {
  6562. trapElement.focus();
  6563. } else if (this._lastTabNavDirection === TAB_NAV_BACKWARD) {
  6564. elements[elements.length - 1].focus();
  6565. } else {
  6566. elements[0].focus();
  6567. }
  6568. }
  6569. _handleKeydown(event) {
  6570. if (event.key !== TAB_KEY) {
  6571. return;
  6572. }
  6573. this._lastTabNavDirection = event.shiftKey ? TAB_NAV_BACKWARD : TAB_NAV_FORWARD;
  6574. }
  6575. }
  6576. /**
  6577. * --------------------------------------------------------------------------
  6578. * Bootstrap (v5.2.3): modal.js
  6579. * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
  6580. * --------------------------------------------------------------------------
  6581. */
  6582. /**
  6583. * Constants
  6584. */
  6585. const NAME$7 = 'modal';
  6586. const DATA_KEY$4 = 'bs.modal';
  6587. const EVENT_KEY$4 = `.${DATA_KEY$4}`;
  6588. const DATA_API_KEY$2 = '.data-api';
  6589. const ESCAPE_KEY$1 = 'Escape';
  6590. const EVENT_HIDE$4 = `hide${EVENT_KEY$4}`;
  6591. const EVENT_HIDE_PREVENTED$1 = `hidePrevented${EVENT_KEY$4}`;
  6592. const EVENT_HIDDEN$4 = `hidden${EVENT_KEY$4}`;
  6593. const EVENT_SHOW$4 = `show${EVENT_KEY$4}`;
  6594. const EVENT_SHOWN$4 = `shown${EVENT_KEY$4}`;
  6595. const EVENT_RESIZE$1 = `resize${EVENT_KEY$4}`;
  6596. const EVENT_CLICK_DISMISS = `click.dismiss${EVENT_KEY$4}`;
  6597. const EVENT_MOUSEDOWN_DISMISS = `mousedown.dismiss${EVENT_KEY$4}`;
  6598. const EVENT_KEYDOWN_DISMISS$1 = `keydown.dismiss${EVENT_KEY$4}`;
  6599. const EVENT_CLICK_DATA_API$2 = `click${EVENT_KEY$4}${DATA_API_KEY$2}`;
  6600. const CLASS_NAME_OPEN = 'modal-open';
  6601. const CLASS_NAME_FADE$3 = 'fade';
  6602. const CLASS_NAME_SHOW$4 = 'show';
  6603. const CLASS_NAME_STATIC = 'modal-static';
  6604. const OPEN_SELECTOR$1 = '.modal.show';
  6605. const SELECTOR_DIALOG = '.modal-dialog';
  6606. const SELECTOR_MODAL_BODY = '.modal-body';
  6607. const SELECTOR_DATA_TOGGLE$2 = '[data-bs-toggle="modal"]';
  6608. const Default$6 = {
  6609. backdrop: true,
  6610. focus: true,
  6611. keyboard: true
  6612. };
  6613. const DefaultType$6 = {
  6614. backdrop: '(boolean|string)',
  6615. focus: 'boolean',
  6616. keyboard: 'boolean'
  6617. };
  6618. /**
  6619. * Class definition
  6620. */
  6621. class Modal extends BaseComponent {
  6622. constructor(element, config) {
  6623. super(element, config);
  6624. this._dialog = SelectorEngine.findOne(SELECTOR_DIALOG, this._element);
  6625. this._backdrop = this._initializeBackDrop();
  6626. this._focustrap = this._initializeFocusTrap();
  6627. this._isShown = false;
  6628. this._isTransitioning = false;
  6629. this._scrollBar = new ScrollBarHelper();
  6630. this._addEventListeners();
  6631. } // Getters
  6632. static get Default() {
  6633. return Default$6;
  6634. }
  6635. static get DefaultType() {
  6636. return DefaultType$6;
  6637. }
  6638. static get NAME() {
  6639. return NAME$7;
  6640. } // Public
  6641. toggle(relatedTarget) {
  6642. return this._isShown ? this.hide() : this.show(relatedTarget);
  6643. }
  6644. show(relatedTarget) {
  6645. if (this._isShown || this._isTransitioning) {
  6646. return;
  6647. }
  6648. const showEvent = EventHandler.trigger(this._element, EVENT_SHOW$4, {
  6649. relatedTarget
  6650. });
  6651. if (showEvent.defaultPrevented) {
  6652. return;
  6653. }
  6654. this._isShown = true;
  6655. this._isTransitioning = true;
  6656. this._scrollBar.hide();
  6657. document.body.classList.add(CLASS_NAME_OPEN);
  6658. this._adjustDialog();
  6659. this._backdrop.show(() => this._showElement(relatedTarget));
  6660. }
  6661. hide() {
  6662. if (!this._isShown || this._isTransitioning) {
  6663. return;
  6664. }
  6665. const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE$4);
  6666. if (hideEvent.defaultPrevented) {
  6667. return;
  6668. }
  6669. this._isShown = false;
  6670. this._isTransitioning = true;
  6671. this._focustrap.deactivate();
  6672. this._element.classList.remove(CLASS_NAME_SHOW$4);
  6673. this._queueCallback(() => this._hideModal(), this._element, this._isAnimated());
  6674. }
  6675. dispose() {
  6676. for (const htmlElement of [window, this._dialog]) {
  6677. EventHandler.off(htmlElement, EVENT_KEY$4);
  6678. }
  6679. this._backdrop.dispose();
  6680. this._focustrap.deactivate();
  6681. super.dispose();
  6682. }
  6683. handleUpdate() {
  6684. this._adjustDialog();
  6685. } // Private
  6686. _initializeBackDrop() {
  6687. return new Backdrop({
  6688. isVisible: Boolean(this._config.backdrop),
  6689. // 'static' option will be translated to true, and booleans will keep their value,
  6690. isAnimated: this._isAnimated()
  6691. });
  6692. }
  6693. _initializeFocusTrap() {
  6694. return new FocusTrap({
  6695. trapElement: this._element
  6696. });
  6697. }
  6698. _showElement(relatedTarget) {
  6699. // try to append dynamic modal
  6700. if (!document.body.contains(this._element)) {
  6701. document.body.append(this._element);
  6702. }
  6703. this._element.style.display = 'block';
  6704. this._element.removeAttribute('aria-hidden');
  6705. this._element.setAttribute('aria-modal', true);
  6706. this._element.setAttribute('role', 'dialog');
  6707. this._element.scrollTop = 0;
  6708. const modalBody = SelectorEngine.findOne(SELECTOR_MODAL_BODY, this._dialog);
  6709. if (modalBody) {
  6710. modalBody.scrollTop = 0;
  6711. }
  6712. reflow(this._element);
  6713. this._element.classList.add(CLASS_NAME_SHOW$4);
  6714. const transitionComplete = () => {
  6715. if (this._config.focus) {
  6716. this._focustrap.activate();
  6717. }
  6718. this._isTransitioning = false;
  6719. EventHandler.trigger(this._element, EVENT_SHOWN$4, {
  6720. relatedTarget
  6721. });
  6722. };
  6723. this._queueCallback(transitionComplete, this._dialog, this._isAnimated());
  6724. }
  6725. _addEventListeners() {
  6726. EventHandler.on(this._element, EVENT_KEYDOWN_DISMISS$1, event => {
  6727. if (event.key !== ESCAPE_KEY$1) {
  6728. return;
  6729. }
  6730. if (this._config.keyboard) {
  6731. event.preventDefault();
  6732. this.hide();
  6733. return;
  6734. }
  6735. this._triggerBackdropTransition();
  6736. });
  6737. EventHandler.on(window, EVENT_RESIZE$1, () => {
  6738. if (this._isShown && !this._isTransitioning) {
  6739. this._adjustDialog();
  6740. }
  6741. });
  6742. EventHandler.on(this._element, EVENT_MOUSEDOWN_DISMISS, event => {
  6743. // a bad trick to segregate clicks that may start inside dialog but end outside, and avoid listen to scrollbar clicks
  6744. EventHandler.one(this._element, EVENT_CLICK_DISMISS, event2 => {
  6745. if (this._element !== event.target || this._element !== event2.target) {
  6746. return;
  6747. }
  6748. if (this._config.backdrop === 'static') {
  6749. this._triggerBackdropTransition();
  6750. return;
  6751. }
  6752. if (this._config.backdrop) {
  6753. this.hide();
  6754. }
  6755. });
  6756. });
  6757. }
  6758. _hideModal() {
  6759. this._element.style.display = 'none';
  6760. this._element.setAttribute('aria-hidden', true);
  6761. this._element.removeAttribute('aria-modal');
  6762. this._element.removeAttribute('role');
  6763. this._isTransitioning = false;
  6764. this._backdrop.hide(() => {
  6765. document.body.classList.remove(CLASS_NAME_OPEN);
  6766. this._resetAdjustments();
  6767. this._scrollBar.reset();
  6768. EventHandler.trigger(this._element, EVENT_HIDDEN$4);
  6769. });
  6770. }
  6771. _isAnimated() {
  6772. return this._element.classList.contains(CLASS_NAME_FADE$3);
  6773. }
  6774. _triggerBackdropTransition() {
  6775. const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE_PREVENTED$1);
  6776. if (hideEvent.defaultPrevented) {
  6777. return;
  6778. }
  6779. const isModalOverflowing = this._element.scrollHeight > document.documentElement.clientHeight;
  6780. const initialOverflowY = this._element.style.overflowY; // return if the following background transition hasn't yet completed
  6781. if (initialOverflowY === 'hidden' || this._element.classList.contains(CLASS_NAME_STATIC)) {
  6782. return;
  6783. }
  6784. if (!isModalOverflowing) {
  6785. this._element.style.overflowY = 'hidden';
  6786. }
  6787. this._element.classList.add(CLASS_NAME_STATIC);
  6788. this._queueCallback(() => {
  6789. this._element.classList.remove(CLASS_NAME_STATIC);
  6790. this._queueCallback(() => {
  6791. this._element.style.overflowY = initialOverflowY;
  6792. }, this._dialog);
  6793. }, this._dialog);
  6794. this._element.focus();
  6795. }
  6796. /**
  6797. * The following methods are used to handle overflowing modals
  6798. */
  6799. _adjustDialog() {
  6800. const isModalOverflowing = this._element.scrollHeight > document.documentElement.clientHeight;
  6801. const scrollbarWidth = this._scrollBar.getWidth();
  6802. const isBodyOverflowing = scrollbarWidth > 0;
  6803. if (isBodyOverflowing && !isModalOverflowing) {
  6804. const property = isRTL() ? 'paddingLeft' : 'paddingRight';
  6805. this._element.style[property] = `${scrollbarWidth}px`;
  6806. }
  6807. if (!isBodyOverflowing && isModalOverflowing) {
  6808. const property = isRTL() ? 'paddingRight' : 'paddingLeft';
  6809. this._element.style[property] = `${scrollbarWidth}px`;
  6810. }
  6811. }
  6812. _resetAdjustments() {
  6813. this._element.style.paddingLeft = '';
  6814. this._element.style.paddingRight = '';
  6815. } // Static
  6816. static jQueryInterface(config, relatedTarget) {
  6817. return this.each(function () {
  6818. const data = Modal.getOrCreateInstance(this, config);
  6819. if (typeof config !== 'string') {
  6820. return;
  6821. }
  6822. if (typeof data[config] === 'undefined') {
  6823. throw new TypeError(`No method named "${config}"`);
  6824. }
  6825. data[config](relatedTarget);
  6826. });
  6827. }
  6828. }
  6829. /**
  6830. * Data API implementation
  6831. */
  6832. EventHandler.on(document, EVENT_CLICK_DATA_API$2, SELECTOR_DATA_TOGGLE$2, function (event) {
  6833. const target = getElementFromSelector(this);
  6834. if (['A', 'AREA'].includes(this.tagName)) {
  6835. event.preventDefault();
  6836. }
  6837. EventHandler.one(target, EVENT_SHOW$4, showEvent => {
  6838. if (showEvent.defaultPrevented) {
  6839. // only register focus restorer if modal will actually get shown
  6840. return;
  6841. }
  6842. EventHandler.one(target, EVENT_HIDDEN$4, () => {
  6843. if (isVisible(this)) {
  6844. this.focus();
  6845. }
  6846. });
  6847. }); // avoid conflict when clicking modal toggler while another one is open
  6848. const alreadyOpen = SelectorEngine.findOne(OPEN_SELECTOR$1);
  6849. if (alreadyOpen) {
  6850. Modal.getInstance(alreadyOpen).hide();
  6851. }
  6852. const data = Modal.getOrCreateInstance(target);
  6853. data.toggle(this);
  6854. });
  6855. enableDismissTrigger(Modal);
  6856. /**
  6857. * jQuery
  6858. */
  6859. defineJQueryPlugin(Modal);
  6860. /**
  6861. * --------------------------------------------------------------------------
  6862. * Bootstrap (v5.2.3): offcanvas.js
  6863. * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
  6864. * --------------------------------------------------------------------------
  6865. */
  6866. /**
  6867. * Constants
  6868. */
  6869. const NAME$6 = 'offcanvas';
  6870. const DATA_KEY$3 = 'bs.offcanvas';
  6871. const EVENT_KEY$3 = `.${DATA_KEY$3}`;
  6872. const DATA_API_KEY$1 = '.data-api';
  6873. const EVENT_LOAD_DATA_API$2 = `load${EVENT_KEY$3}${DATA_API_KEY$1}`;
  6874. const ESCAPE_KEY = 'Escape';
  6875. const CLASS_NAME_SHOW$3 = 'show';
  6876. const CLASS_NAME_SHOWING$1 = 'showing';
  6877. const CLASS_NAME_HIDING = 'hiding';
  6878. const CLASS_NAME_BACKDROP = 'offcanvas-backdrop';
  6879. const OPEN_SELECTOR = '.offcanvas.show';
  6880. const EVENT_SHOW$3 = `show${EVENT_KEY$3}`;
  6881. const EVENT_SHOWN$3 = `shown${EVENT_KEY$3}`;
  6882. const EVENT_HIDE$3 = `hide${EVENT_KEY$3}`;
  6883. const EVENT_HIDE_PREVENTED = `hidePrevented${EVENT_KEY$3}`;
  6884. const EVENT_HIDDEN$3 = `hidden${EVENT_KEY$3}`;
  6885. const EVENT_RESIZE = `resize${EVENT_KEY$3}`;
  6886. const EVENT_CLICK_DATA_API$1 = `click${EVENT_KEY$3}${DATA_API_KEY$1}`;
  6887. const EVENT_KEYDOWN_DISMISS = `keydown.dismiss${EVENT_KEY$3}`;
  6888. const SELECTOR_DATA_TOGGLE$1 = '[data-bs-toggle="offcanvas"]';
  6889. const Default$5 = {
  6890. backdrop: true,
  6891. keyboard: true,
  6892. scroll: false
  6893. };
  6894. const DefaultType$5 = {
  6895. backdrop: '(boolean|string)',
  6896. keyboard: 'boolean',
  6897. scroll: 'boolean'
  6898. };
  6899. /**
  6900. * Class definition
  6901. */
  6902. class Offcanvas extends BaseComponent {
  6903. constructor(element, config) {
  6904. super(element, config);
  6905. this._isShown = false;
  6906. this._backdrop = this._initializeBackDrop();
  6907. this._focustrap = this._initializeFocusTrap();
  6908. this._addEventListeners();
  6909. } // Getters
  6910. static get Default() {
  6911. return Default$5;
  6912. }
  6913. static get DefaultType() {
  6914. return DefaultType$5;
  6915. }
  6916. static get NAME() {
  6917. return NAME$6;
  6918. } // Public
  6919. toggle(relatedTarget) {
  6920. return this._isShown ? this.hide() : this.show(relatedTarget);
  6921. }
  6922. show(relatedTarget) {
  6923. if (this._isShown) {
  6924. return;
  6925. }
  6926. const showEvent = EventHandler.trigger(this._element, EVENT_SHOW$3, {
  6927. relatedTarget
  6928. });
  6929. if (showEvent.defaultPrevented) {
  6930. return;
  6931. }
  6932. this._isShown = true;
  6933. this._backdrop.show();
  6934. if (!this._config.scroll) {
  6935. new ScrollBarHelper().hide();
  6936. }
  6937. this._element.setAttribute('aria-modal', true);
  6938. this._element.setAttribute('role', 'dialog');
  6939. this._element.classList.add(CLASS_NAME_SHOWING$1);
  6940. const completeCallBack = () => {
  6941. if (!this._config.scroll || this._config.backdrop) {
  6942. this._focustrap.activate();
  6943. }
  6944. this._element.classList.add(CLASS_NAME_SHOW$3);
  6945. this._element.classList.remove(CLASS_NAME_SHOWING$1);
  6946. EventHandler.trigger(this._element, EVENT_SHOWN$3, {
  6947. relatedTarget
  6948. });
  6949. };
  6950. this._queueCallback(completeCallBack, this._element, true);
  6951. }
  6952. hide() {
  6953. if (!this._isShown) {
  6954. return;
  6955. }
  6956. const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE$3);
  6957. if (hideEvent.defaultPrevented) {
  6958. return;
  6959. }
  6960. this._focustrap.deactivate();
  6961. this._element.blur();
  6962. this._isShown = false;
  6963. this._element.classList.add(CLASS_NAME_HIDING);
  6964. this._backdrop.hide();
  6965. const completeCallback = () => {
  6966. this._element.classList.remove(CLASS_NAME_SHOW$3, CLASS_NAME_HIDING);
  6967. this._element.removeAttribute('aria-modal');
  6968. this._element.removeAttribute('role');
  6969. if (!this._config.scroll) {
  6970. new ScrollBarHelper().reset();
  6971. }
  6972. EventHandler.trigger(this._element, EVENT_HIDDEN$3);
  6973. };
  6974. this._queueCallback(completeCallback, this._element, true);
  6975. }
  6976. dispose() {
  6977. this._backdrop.dispose();
  6978. this._focustrap.deactivate();
  6979. super.dispose();
  6980. } // Private
  6981. _initializeBackDrop() {
  6982. const clickCallback = () => {
  6983. if (this._config.backdrop === 'static') {
  6984. EventHandler.trigger(this._element, EVENT_HIDE_PREVENTED);
  6985. return;
  6986. }
  6987. this.hide();
  6988. }; // 'static' option will be translated to true, and booleans will keep their value
  6989. const isVisible = Boolean(this._config.backdrop);
  6990. return new Backdrop({
  6991. className: CLASS_NAME_BACKDROP,
  6992. isVisible,
  6993. isAnimated: true,
  6994. rootElement: this._element.parentNode,
  6995. clickCallback: isVisible ? clickCallback : null
  6996. });
  6997. }
  6998. _initializeFocusTrap() {
  6999. return new FocusTrap({
  7000. trapElement: this._element
  7001. });
  7002. }
  7003. _addEventListeners() {
  7004. EventHandler.on(this._element, EVENT_KEYDOWN_DISMISS, event => {
  7005. if (event.key !== ESCAPE_KEY) {
  7006. return;
  7007. }
  7008. if (!this._config.keyboard) {
  7009. EventHandler.trigger(this._element, EVENT_HIDE_PREVENTED);
  7010. return;
  7011. }
  7012. this.hide();
  7013. });
  7014. } // Static
  7015. static jQueryInterface(config) {
  7016. return this.each(function () {
  7017. const data = Offcanvas.getOrCreateInstance(this, config);
  7018. if (typeof config !== 'string') {
  7019. return;
  7020. }
  7021. if (data[config] === undefined || config.startsWith('_') || config === 'constructor') {
  7022. throw new TypeError(`No method named "${config}"`);
  7023. }
  7024. data[config](this);
  7025. });
  7026. }
  7027. }
  7028. /**
  7029. * Data API implementation
  7030. */
  7031. EventHandler.on(document, EVENT_CLICK_DATA_API$1, SELECTOR_DATA_TOGGLE$1, function (event) {
  7032. const target = getElementFromSelector(this);
  7033. if (['A', 'AREA'].includes(this.tagName)) {
  7034. event.preventDefault();
  7035. }
  7036. if (isDisabled(this)) {
  7037. return;
  7038. }
  7039. EventHandler.one(target, EVENT_HIDDEN$3, () => {
  7040. // focus on trigger when it is closed
  7041. if (isVisible(this)) {
  7042. this.focus();
  7043. }
  7044. }); // avoid conflict when clicking a toggler of an offcanvas, while another is open
  7045. const alreadyOpen = SelectorEngine.findOne(OPEN_SELECTOR);
  7046. if (alreadyOpen && alreadyOpen !== target) {
  7047. Offcanvas.getInstance(alreadyOpen).hide();
  7048. }
  7049. const data = Offcanvas.getOrCreateInstance(target);
  7050. data.toggle(this);
  7051. });
  7052. EventHandler.on(window, EVENT_LOAD_DATA_API$2, () => {
  7053. for (const selector of SelectorEngine.find(OPEN_SELECTOR)) {
  7054. Offcanvas.getOrCreateInstance(selector).show();
  7055. }
  7056. });
  7057. EventHandler.on(window, EVENT_RESIZE, () => {
  7058. for (const element of SelectorEngine.find('[aria-modal][class*=show][class*=offcanvas-]')) {
  7059. if (getComputedStyle(element).position !== 'fixed') {
  7060. Offcanvas.getOrCreateInstance(element).hide();
  7061. }
  7062. }
  7063. });
  7064. enableDismissTrigger(Offcanvas);
  7065. /**
  7066. * jQuery
  7067. */
  7068. defineJQueryPlugin(Offcanvas);
  7069. /**
  7070. * --------------------------------------------------------------------------
  7071. * Bootstrap (v5.2.3): util/sanitizer.js
  7072. * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
  7073. * --------------------------------------------------------------------------
  7074. */
  7075. const uriAttributes = new Set(['background', 'cite', 'href', 'itemtype', 'longdesc', 'poster', 'src', 'xlink:href']);
  7076. const ARIA_ATTRIBUTE_PATTERN = /^aria-[\w-]*$/i;
  7077. /**
  7078. * A pattern that recognizes a commonly useful subset of URLs that are safe.
  7079. *
  7080. * Shout-out to Angular https://github.com/angular/angular/blob/12.2.x/packages/core/src/sanitization/url_sanitizer.ts
  7081. */
  7082. const SAFE_URL_PATTERN = /^(?:(?:https?|mailto|ftp|tel|file|sms):|[^#&/:?]*(?:[#/?]|$))/i;
  7083. /**
  7084. * A pattern that matches safe data URLs. Only matches image, video and audio types.
  7085. *
  7086. * Shout-out to Angular https://github.com/angular/angular/blob/12.2.x/packages/core/src/sanitization/url_sanitizer.ts
  7087. */
  7088. const DATA_URL_PATTERN = /^data:(?:image\/(?:bmp|gif|jpeg|jpg|png|tiff|webp)|video\/(?:mpeg|mp4|ogg|webm)|audio\/(?:mp3|oga|ogg|opus));base64,[\d+/a-z]+=*$/i;
  7089. const allowedAttribute = (attribute, allowedAttributeList) => {
  7090. const attributeName = attribute.nodeName.toLowerCase();
  7091. if (allowedAttributeList.includes(attributeName)) {
  7092. if (uriAttributes.has(attributeName)) {
  7093. return Boolean(SAFE_URL_PATTERN.test(attribute.nodeValue) || DATA_URL_PATTERN.test(attribute.nodeValue));
  7094. }
  7095. return true;
  7096. } // Check if a regular expression validates the attribute.
  7097. return allowedAttributeList.filter(attributeRegex => attributeRegex instanceof RegExp).some(regex => regex.test(attributeName));
  7098. };
  7099. const DefaultAllowlist = {
  7100. // Global attributes allowed on any supplied element below.
  7101. '*': ['class', 'dir', 'id', 'lang', 'role', ARIA_ATTRIBUTE_PATTERN],
  7102. a: ['target', 'href', 'title', 'rel'],
  7103. area: [],
  7104. b: [],
  7105. br: [],
  7106. col: [],
  7107. code: [],
  7108. div: [],
  7109. em: [],
  7110. hr: [],
  7111. h1: [],
  7112. h2: [],
  7113. h3: [],
  7114. h4: [],
  7115. h5: [],
  7116. h6: [],
  7117. i: [],
  7118. img: ['src', 'srcset', 'alt', 'title', 'width', 'height'],
  7119. li: [],
  7120. ol: [],
  7121. p: [],
  7122. pre: [],
  7123. s: [],
  7124. small: [],
  7125. span: [],
  7126. sub: [],
  7127. sup: [],
  7128. strong: [],
  7129. u: [],
  7130. ul: []
  7131. };
  7132. function sanitizeHtml(unsafeHtml, allowList, sanitizeFunction) {
  7133. if (!unsafeHtml.length) {
  7134. return unsafeHtml;
  7135. }
  7136. if (sanitizeFunction && typeof sanitizeFunction === 'function') {
  7137. return sanitizeFunction(unsafeHtml);
  7138. }
  7139. const domParser = new window.DOMParser();
  7140. const createdDocument = domParser.parseFromString(unsafeHtml, 'text/html');
  7141. const elements = [].concat(...createdDocument.body.querySelectorAll('*'));
  7142. for (const element of elements) {
  7143. const elementName = element.nodeName.toLowerCase();
  7144. if (!Object.keys(allowList).includes(elementName)) {
  7145. element.remove();
  7146. continue;
  7147. }
  7148. const attributeList = [].concat(...element.attributes);
  7149. const allowedAttributes = [].concat(allowList['*'] || [], allowList[elementName] || []);
  7150. for (const attribute of attributeList) {
  7151. if (!allowedAttribute(attribute, allowedAttributes)) {
  7152. element.removeAttribute(attribute.nodeName);
  7153. }
  7154. }
  7155. }
  7156. return createdDocument.body.innerHTML;
  7157. }
  7158. /**
  7159. * --------------------------------------------------------------------------
  7160. * Bootstrap (v5.2.3): util/template-factory.js
  7161. * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
  7162. * --------------------------------------------------------------------------
  7163. */
  7164. /**
  7165. * Constants
  7166. */
  7167. const NAME$5 = 'TemplateFactory';
  7168. const Default$4 = {
  7169. allowList: DefaultAllowlist,
  7170. content: {},
  7171. // { selector : text , selector2 : text2 , }
  7172. extraClass: '',
  7173. html: false,
  7174. sanitize: true,
  7175. sanitizeFn: null,
  7176. template: '<div></div>'
  7177. };
  7178. const DefaultType$4 = {
  7179. allowList: 'object',
  7180. content: 'object',
  7181. extraClass: '(string|function)',
  7182. html: 'boolean',
  7183. sanitize: 'boolean',
  7184. sanitizeFn: '(null|function)',
  7185. template: 'string'
  7186. };
  7187. const DefaultContentType = {
  7188. entry: '(string|element|function|null)',
  7189. selector: '(string|element)'
  7190. };
  7191. /**
  7192. * Class definition
  7193. */
  7194. class TemplateFactory extends Config {
  7195. constructor(config) {
  7196. super();
  7197. this._config = this._getConfig(config);
  7198. } // Getters
  7199. static get Default() {
  7200. return Default$4;
  7201. }
  7202. static get DefaultType() {
  7203. return DefaultType$4;
  7204. }
  7205. static get NAME() {
  7206. return NAME$5;
  7207. } // Public
  7208. getContent() {
  7209. return Object.values(this._config.content).map(config => this._resolvePossibleFunction(config)).filter(Boolean);
  7210. }
  7211. hasContent() {
  7212. return this.getContent().length > 0;
  7213. }
  7214. changeContent(content) {
  7215. this._checkContent(content);
  7216. this._config.content = { ...this._config.content,
  7217. ...content
  7218. };
  7219. return this;
  7220. }
  7221. toHtml() {
  7222. const templateWrapper = document.createElement('div');
  7223. templateWrapper.innerHTML = this._maybeSanitize(this._config.template);
  7224. for (const [selector, text] of Object.entries(this._config.content)) {
  7225. this._setContent(templateWrapper, text, selector);
  7226. }
  7227. const template = templateWrapper.children[0];
  7228. const extraClass = this._resolvePossibleFunction(this._config.extraClass);
  7229. if (extraClass) {
  7230. template.classList.add(...extraClass.split(' '));
  7231. }
  7232. return template;
  7233. } // Private
  7234. _typeCheckConfig(config) {
  7235. super._typeCheckConfig(config);
  7236. this._checkContent(config.content);
  7237. }
  7238. _checkContent(arg) {
  7239. for (const [selector, content] of Object.entries(arg)) {
  7240. super._typeCheckConfig({
  7241. selector,
  7242. entry: content
  7243. }, DefaultContentType);
  7244. }
  7245. }
  7246. _setContent(template, content, selector) {
  7247. const templateElement = SelectorEngine.findOne(selector, template);
  7248. if (!templateElement) {
  7249. return;
  7250. }
  7251. content = this._resolvePossibleFunction(content);
  7252. if (!content) {
  7253. templateElement.remove();
  7254. return;
  7255. }
  7256. if (isElement(content)) {
  7257. this._putElementInTemplate(getElement(content), templateElement);
  7258. return;
  7259. }
  7260. if (this._config.html) {
  7261. templateElement.innerHTML = this._maybeSanitize(content);
  7262. return;
  7263. }
  7264. templateElement.textContent = content;
  7265. }
  7266. _maybeSanitize(arg) {
  7267. return this._config.sanitize ? sanitizeHtml(arg, this._config.allowList, this._config.sanitizeFn) : arg;
  7268. }
  7269. _resolvePossibleFunction(arg) {
  7270. return typeof arg === 'function' ? arg(this) : arg;
  7271. }
  7272. _putElementInTemplate(element, templateElement) {
  7273. if (this._config.html) {
  7274. templateElement.innerHTML = '';
  7275. templateElement.append(element);
  7276. return;
  7277. }
  7278. templateElement.textContent = element.textContent;
  7279. }
  7280. }
  7281. /**
  7282. * --------------------------------------------------------------------------
  7283. * Bootstrap (v5.2.3): tooltip.js
  7284. * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
  7285. * --------------------------------------------------------------------------
  7286. */
  7287. /**
  7288. * Constants
  7289. */
  7290. const NAME$4 = 'tooltip';
  7291. const DISALLOWED_ATTRIBUTES = new Set(['sanitize', 'allowList', 'sanitizeFn']);
  7292. const CLASS_NAME_FADE$2 = 'fade';
  7293. const CLASS_NAME_MODAL = 'modal';
  7294. const CLASS_NAME_SHOW$2 = 'show';
  7295. const SELECTOR_TOOLTIP_INNER = '.tooltip-inner';
  7296. const SELECTOR_MODAL = `.${CLASS_NAME_MODAL}`;
  7297. const EVENT_MODAL_HIDE = 'hide.bs.modal';
  7298. const TRIGGER_HOVER = 'hover';
  7299. const TRIGGER_FOCUS = 'focus';
  7300. const TRIGGER_CLICK = 'click';
  7301. const TRIGGER_MANUAL = 'manual';
  7302. const EVENT_HIDE$2 = 'hide';
  7303. const EVENT_HIDDEN$2 = 'hidden';
  7304. const EVENT_SHOW$2 = 'show';
  7305. const EVENT_SHOWN$2 = 'shown';
  7306. const EVENT_INSERTED = 'inserted';
  7307. const EVENT_CLICK$1 = 'click';
  7308. const EVENT_FOCUSIN$1 = 'focusin';
  7309. const EVENT_FOCUSOUT$1 = 'focusout';
  7310. const EVENT_MOUSEENTER = 'mouseenter';
  7311. const EVENT_MOUSELEAVE = 'mouseleave';
  7312. const AttachmentMap = {
  7313. AUTO: 'auto',
  7314. TOP: 'top',
  7315. RIGHT: isRTL() ? 'left' : 'right',
  7316. BOTTOM: 'bottom',
  7317. LEFT: isRTL() ? 'right' : 'left'
  7318. };
  7319. const Default$3 = {
  7320. allowList: DefaultAllowlist,
  7321. animation: true,
  7322. boundary: 'clippingParents',
  7323. container: false,
  7324. customClass: '',
  7325. delay: 0,
  7326. fallbackPlacements: ['top', 'right', 'bottom', 'left'],
  7327. html: false,
  7328. offset: [0, 0],
  7329. placement: 'top',
  7330. popperConfig: null,
  7331. sanitize: true,
  7332. sanitizeFn: null,
  7333. selector: false,
  7334. template: '<div class="tooltip" role="tooltip">' + '<div class="tooltip-arrow"></div>' + '<div class="tooltip-inner"></div>' + '</div>',
  7335. title: '',
  7336. trigger: 'hover focus'
  7337. };
  7338. const DefaultType$3 = {
  7339. allowList: 'object',
  7340. animation: 'boolean',
  7341. boundary: '(string|element)',
  7342. container: '(string|element|boolean)',
  7343. customClass: '(string|function)',
  7344. delay: '(number|object)',
  7345. fallbackPlacements: 'array',
  7346. html: 'boolean',
  7347. offset: '(array|string|function)',
  7348. placement: '(string|function)',
  7349. popperConfig: '(null|object|function)',
  7350. sanitize: 'boolean',
  7351. sanitizeFn: '(null|function)',
  7352. selector: '(string|boolean)',
  7353. template: 'string',
  7354. title: '(string|element|function)',
  7355. trigger: 'string'
  7356. };
  7357. /**
  7358. * Class definition
  7359. */
  7360. class Tooltip extends BaseComponent {
  7361. constructor(element, config) {
  7362. if (typeof _popperjs_core__WEBPACK_IMPORTED_MODULE_0__ === 'undefined') {
  7363. throw new TypeError('Bootstrap\'s tooltips require Popper (https://popper.js.org)');
  7364. }
  7365. super(element, config); // Private
  7366. this._isEnabled = true;
  7367. this._timeout = 0;
  7368. this._isHovered = null;
  7369. this._activeTrigger = {};
  7370. this._popper = null;
  7371. this._templateFactory = null;
  7372. this._newContent = null; // Protected
  7373. this.tip = null;
  7374. this._setListeners();
  7375. if (!this._config.selector) {
  7376. this._fixTitle();
  7377. }
  7378. } // Getters
  7379. static get Default() {
  7380. return Default$3;
  7381. }
  7382. static get DefaultType() {
  7383. return DefaultType$3;
  7384. }
  7385. static get NAME() {
  7386. return NAME$4;
  7387. } // Public
  7388. enable() {
  7389. this._isEnabled = true;
  7390. }
  7391. disable() {
  7392. this._isEnabled = false;
  7393. }
  7394. toggleEnabled() {
  7395. this._isEnabled = !this._isEnabled;
  7396. }
  7397. toggle() {
  7398. if (!this._isEnabled) {
  7399. return;
  7400. }
  7401. this._activeTrigger.click = !this._activeTrigger.click;
  7402. if (this._isShown()) {
  7403. this._leave();
  7404. return;
  7405. }
  7406. this._enter();
  7407. }
  7408. dispose() {
  7409. clearTimeout(this._timeout);
  7410. EventHandler.off(this._element.closest(SELECTOR_MODAL), EVENT_MODAL_HIDE, this._hideModalHandler);
  7411. if (this._element.getAttribute('data-bs-original-title')) {
  7412. this._element.setAttribute('title', this._element.getAttribute('data-bs-original-title'));
  7413. }
  7414. this._disposePopper();
  7415. super.dispose();
  7416. }
  7417. show() {
  7418. if (this._element.style.display === 'none') {
  7419. throw new Error('Please use show on visible elements');
  7420. }
  7421. if (!(this._isWithContent() && this._isEnabled)) {
  7422. return;
  7423. }
  7424. const showEvent = EventHandler.trigger(this._element, this.constructor.eventName(EVENT_SHOW$2));
  7425. const shadowRoot = findShadowRoot(this._element);
  7426. const isInTheDom = (shadowRoot || this._element.ownerDocument.documentElement).contains(this._element);
  7427. if (showEvent.defaultPrevented || !isInTheDom) {
  7428. return;
  7429. } // todo v6 remove this OR make it optional
  7430. this._disposePopper();
  7431. const tip = this._getTipElement();
  7432. this._element.setAttribute('aria-describedby', tip.getAttribute('id'));
  7433. const {
  7434. container
  7435. } = this._config;
  7436. if (!this._element.ownerDocument.documentElement.contains(this.tip)) {
  7437. container.append(tip);
  7438. EventHandler.trigger(this._element, this.constructor.eventName(EVENT_INSERTED));
  7439. }
  7440. this._popper = this._createPopper(tip);
  7441. tip.classList.add(CLASS_NAME_SHOW$2); // If this is a touch-enabled device we add extra
  7442. // empty mouseover listeners to the body's immediate children;
  7443. // only needed because of broken event delegation on iOS
  7444. // https://www.quirksmode.org/blog/archives/2014/02/mouse_event_bub.html
  7445. if ('ontouchstart' in document.documentElement) {
  7446. for (const element of [].concat(...document.body.children)) {
  7447. EventHandler.on(element, 'mouseover', noop);
  7448. }
  7449. }
  7450. const complete = () => {
  7451. EventHandler.trigger(this._element, this.constructor.eventName(EVENT_SHOWN$2));
  7452. if (this._isHovered === false) {
  7453. this._leave();
  7454. }
  7455. this._isHovered = false;
  7456. };
  7457. this._queueCallback(complete, this.tip, this._isAnimated());
  7458. }
  7459. hide() {
  7460. if (!this._isShown()) {
  7461. return;
  7462. }
  7463. const hideEvent = EventHandler.trigger(this._element, this.constructor.eventName(EVENT_HIDE$2));
  7464. if (hideEvent.defaultPrevented) {
  7465. return;
  7466. }
  7467. const tip = this._getTipElement();
  7468. tip.classList.remove(CLASS_NAME_SHOW$2); // If this is a touch-enabled device we remove the extra
  7469. // empty mouseover listeners we added for iOS support
  7470. if ('ontouchstart' in document.documentElement) {
  7471. for (const element of [].concat(...document.body.children)) {
  7472. EventHandler.off(element, 'mouseover', noop);
  7473. }
  7474. }
  7475. this._activeTrigger[TRIGGER_CLICK] = false;
  7476. this._activeTrigger[TRIGGER_FOCUS] = false;
  7477. this._activeTrigger[TRIGGER_HOVER] = false;
  7478. this._isHovered = null; // it is a trick to support manual triggering
  7479. const complete = () => {
  7480. if (this._isWithActiveTrigger()) {
  7481. return;
  7482. }
  7483. if (!this._isHovered) {
  7484. this._disposePopper();
  7485. }
  7486. this._element.removeAttribute('aria-describedby');
  7487. EventHandler.trigger(this._element, this.constructor.eventName(EVENT_HIDDEN$2));
  7488. };
  7489. this._queueCallback(complete, this.tip, this._isAnimated());
  7490. }
  7491. update() {
  7492. if (this._popper) {
  7493. this._popper.update();
  7494. }
  7495. } // Protected
  7496. _isWithContent() {
  7497. return Boolean(this._getTitle());
  7498. }
  7499. _getTipElement() {
  7500. if (!this.tip) {
  7501. this.tip = this._createTipElement(this._newContent || this._getContentForTemplate());
  7502. }
  7503. return this.tip;
  7504. }
  7505. _createTipElement(content) {
  7506. const tip = this._getTemplateFactory(content).toHtml(); // todo: remove this check on v6
  7507. if (!tip) {
  7508. return null;
  7509. }
  7510. tip.classList.remove(CLASS_NAME_FADE$2, CLASS_NAME_SHOW$2); // todo: on v6 the following can be achieved with CSS only
  7511. tip.classList.add(`bs-${this.constructor.NAME}-auto`);
  7512. const tipId = getUID(this.constructor.NAME).toString();
  7513. tip.setAttribute('id', tipId);
  7514. if (this._isAnimated()) {
  7515. tip.classList.add(CLASS_NAME_FADE$2);
  7516. }
  7517. return tip;
  7518. }
  7519. setContent(content) {
  7520. this._newContent = content;
  7521. if (this._isShown()) {
  7522. this._disposePopper();
  7523. this.show();
  7524. }
  7525. }
  7526. _getTemplateFactory(content) {
  7527. if (this._templateFactory) {
  7528. this._templateFactory.changeContent(content);
  7529. } else {
  7530. this._templateFactory = new TemplateFactory({ ...this._config,
  7531. // the `content` var has to be after `this._config`
  7532. // to override config.content in case of popover
  7533. content,
  7534. extraClass: this._resolvePossibleFunction(this._config.customClass)
  7535. });
  7536. }
  7537. return this._templateFactory;
  7538. }
  7539. _getContentForTemplate() {
  7540. return {
  7541. [SELECTOR_TOOLTIP_INNER]: this._getTitle()
  7542. };
  7543. }
  7544. _getTitle() {
  7545. return this._resolvePossibleFunction(this._config.title) || this._element.getAttribute('data-bs-original-title');
  7546. } // Private
  7547. _initializeOnDelegatedTarget(event) {
  7548. return this.constructor.getOrCreateInstance(event.delegateTarget, this._getDelegateConfig());
  7549. }
  7550. _isAnimated() {
  7551. return this._config.animation || this.tip && this.tip.classList.contains(CLASS_NAME_FADE$2);
  7552. }
  7553. _isShown() {
  7554. return this.tip && this.tip.classList.contains(CLASS_NAME_SHOW$2);
  7555. }
  7556. _createPopper(tip) {
  7557. const placement = typeof this._config.placement === 'function' ? this._config.placement.call(this, tip, this._element) : this._config.placement;
  7558. const attachment = AttachmentMap[placement.toUpperCase()];
  7559. return _popperjs_core__WEBPACK_IMPORTED_MODULE_1__.createPopper(this._element, tip, this._getPopperConfig(attachment));
  7560. }
  7561. _getOffset() {
  7562. const {
  7563. offset
  7564. } = this._config;
  7565. if (typeof offset === 'string') {
  7566. return offset.split(',').map(value => Number.parseInt(value, 10));
  7567. }
  7568. if (typeof offset === 'function') {
  7569. return popperData => offset(popperData, this._element);
  7570. }
  7571. return offset;
  7572. }
  7573. _resolvePossibleFunction(arg) {
  7574. return typeof arg === 'function' ? arg.call(this._element) : arg;
  7575. }
  7576. _getPopperConfig(attachment) {
  7577. const defaultBsPopperConfig = {
  7578. placement: attachment,
  7579. modifiers: [{
  7580. name: 'flip',
  7581. options: {
  7582. fallbackPlacements: this._config.fallbackPlacements
  7583. }
  7584. }, {
  7585. name: 'offset',
  7586. options: {
  7587. offset: this._getOffset()
  7588. }
  7589. }, {
  7590. name: 'preventOverflow',
  7591. options: {
  7592. boundary: this._config.boundary
  7593. }
  7594. }, {
  7595. name: 'arrow',
  7596. options: {
  7597. element: `.${this.constructor.NAME}-arrow`
  7598. }
  7599. }, {
  7600. name: 'preSetPlacement',
  7601. enabled: true,
  7602. phase: 'beforeMain',
  7603. fn: data => {
  7604. // Pre-set Popper's placement attribute in order to read the arrow sizes properly.
  7605. // Otherwise, Popper mixes up the width and height dimensions since the initial arrow style is for top placement
  7606. this._getTipElement().setAttribute('data-popper-placement', data.state.placement);
  7607. }
  7608. }]
  7609. };
  7610. return { ...defaultBsPopperConfig,
  7611. ...(typeof this._config.popperConfig === 'function' ? this._config.popperConfig(defaultBsPopperConfig) : this._config.popperConfig)
  7612. };
  7613. }
  7614. _setListeners() {
  7615. const triggers = this._config.trigger.split(' ');
  7616. for (const trigger of triggers) {
  7617. if (trigger === 'click') {
  7618. EventHandler.on(this._element, this.constructor.eventName(EVENT_CLICK$1), this._config.selector, event => {
  7619. const context = this._initializeOnDelegatedTarget(event);
  7620. context.toggle();
  7621. });
  7622. } else if (trigger !== TRIGGER_MANUAL) {
  7623. const eventIn = trigger === TRIGGER_HOVER ? this.constructor.eventName(EVENT_MOUSEENTER) : this.constructor.eventName(EVENT_FOCUSIN$1);
  7624. const eventOut = trigger === TRIGGER_HOVER ? this.constructor.eventName(EVENT_MOUSELEAVE) : this.constructor.eventName(EVENT_FOCUSOUT$1);
  7625. EventHandler.on(this._element, eventIn, this._config.selector, event => {
  7626. const context = this._initializeOnDelegatedTarget(event);
  7627. context._activeTrigger[event.type === 'focusin' ? TRIGGER_FOCUS : TRIGGER_HOVER] = true;
  7628. context._enter();
  7629. });
  7630. EventHandler.on(this._element, eventOut, this._config.selector, event => {
  7631. const context = this._initializeOnDelegatedTarget(event);
  7632. context._activeTrigger[event.type === 'focusout' ? TRIGGER_FOCUS : TRIGGER_HOVER] = context._element.contains(event.relatedTarget);
  7633. context._leave();
  7634. });
  7635. }
  7636. }
  7637. this._hideModalHandler = () => {
  7638. if (this._element) {
  7639. this.hide();
  7640. }
  7641. };
  7642. EventHandler.on(this._element.closest(SELECTOR_MODAL), EVENT_MODAL_HIDE, this._hideModalHandler);
  7643. }
  7644. _fixTitle() {
  7645. const title = this._element.getAttribute('title');
  7646. if (!title) {
  7647. return;
  7648. }
  7649. if (!this._element.getAttribute('aria-label') && !this._element.textContent.trim()) {
  7650. this._element.setAttribute('aria-label', title);
  7651. }
  7652. this._element.setAttribute('data-bs-original-title', title); // DO NOT USE IT. Is only for backwards compatibility
  7653. this._element.removeAttribute('title');
  7654. }
  7655. _enter() {
  7656. if (this._isShown() || this._isHovered) {
  7657. this._isHovered = true;
  7658. return;
  7659. }
  7660. this._isHovered = true;
  7661. this._setTimeout(() => {
  7662. if (this._isHovered) {
  7663. this.show();
  7664. }
  7665. }, this._config.delay.show);
  7666. }
  7667. _leave() {
  7668. if (this._isWithActiveTrigger()) {
  7669. return;
  7670. }
  7671. this._isHovered = false;
  7672. this._setTimeout(() => {
  7673. if (!this._isHovered) {
  7674. this.hide();
  7675. }
  7676. }, this._config.delay.hide);
  7677. }
  7678. _setTimeout(handler, timeout) {
  7679. clearTimeout(this._timeout);
  7680. this._timeout = setTimeout(handler, timeout);
  7681. }
  7682. _isWithActiveTrigger() {
  7683. return Object.values(this._activeTrigger).includes(true);
  7684. }
  7685. _getConfig(config) {
  7686. const dataAttributes = Manipulator.getDataAttributes(this._element);
  7687. for (const dataAttribute of Object.keys(dataAttributes)) {
  7688. if (DISALLOWED_ATTRIBUTES.has(dataAttribute)) {
  7689. delete dataAttributes[dataAttribute];
  7690. }
  7691. }
  7692. config = { ...dataAttributes,
  7693. ...(typeof config === 'object' && config ? config : {})
  7694. };
  7695. config = this._mergeConfigObj(config);
  7696. config = this._configAfterMerge(config);
  7697. this._typeCheckConfig(config);
  7698. return config;
  7699. }
  7700. _configAfterMerge(config) {
  7701. config.container = config.container === false ? document.body : getElement(config.container);
  7702. if (typeof config.delay === 'number') {
  7703. config.delay = {
  7704. show: config.delay,
  7705. hide: config.delay
  7706. };
  7707. }
  7708. if (typeof config.title === 'number') {
  7709. config.title = config.title.toString();
  7710. }
  7711. if (typeof config.content === 'number') {
  7712. config.content = config.content.toString();
  7713. }
  7714. return config;
  7715. }
  7716. _getDelegateConfig() {
  7717. const config = {};
  7718. for (const key in this._config) {
  7719. if (this.constructor.Default[key] !== this._config[key]) {
  7720. config[key] = this._config[key];
  7721. }
  7722. }
  7723. config.selector = false;
  7724. config.trigger = 'manual'; // In the future can be replaced with:
  7725. // const keysWithDifferentValues = Object.entries(this._config).filter(entry => this.constructor.Default[entry[0]] !== this._config[entry[0]])
  7726. // `Object.fromEntries(keysWithDifferentValues)`
  7727. return config;
  7728. }
  7729. _disposePopper() {
  7730. if (this._popper) {
  7731. this._popper.destroy();
  7732. this._popper = null;
  7733. }
  7734. if (this.tip) {
  7735. this.tip.remove();
  7736. this.tip = null;
  7737. }
  7738. } // Static
  7739. static jQueryInterface(config) {
  7740. return this.each(function () {
  7741. const data = Tooltip.getOrCreateInstance(this, config);
  7742. if (typeof config !== 'string') {
  7743. return;
  7744. }
  7745. if (typeof data[config] === 'undefined') {
  7746. throw new TypeError(`No method named "${config}"`);
  7747. }
  7748. data[config]();
  7749. });
  7750. }
  7751. }
  7752. /**
  7753. * jQuery
  7754. */
  7755. defineJQueryPlugin(Tooltip);
  7756. /**
  7757. * --------------------------------------------------------------------------
  7758. * Bootstrap (v5.2.3): popover.js
  7759. * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
  7760. * --------------------------------------------------------------------------
  7761. */
  7762. /**
  7763. * Constants
  7764. */
  7765. const NAME$3 = 'popover';
  7766. const SELECTOR_TITLE = '.popover-header';
  7767. const SELECTOR_CONTENT = '.popover-body';
  7768. const Default$2 = { ...Tooltip.Default,
  7769. content: '',
  7770. offset: [0, 8],
  7771. placement: 'right',
  7772. template: '<div class="popover" role="tooltip">' + '<div class="popover-arrow"></div>' + '<h3 class="popover-header"></h3>' + '<div class="popover-body"></div>' + '</div>',
  7773. trigger: 'click'
  7774. };
  7775. const DefaultType$2 = { ...Tooltip.DefaultType,
  7776. content: '(null|string|element|function)'
  7777. };
  7778. /**
  7779. * Class definition
  7780. */
  7781. class Popover extends Tooltip {
  7782. // Getters
  7783. static get Default() {
  7784. return Default$2;
  7785. }
  7786. static get DefaultType() {
  7787. return DefaultType$2;
  7788. }
  7789. static get NAME() {
  7790. return NAME$3;
  7791. } // Overrides
  7792. _isWithContent() {
  7793. return this._getTitle() || this._getContent();
  7794. } // Private
  7795. _getContentForTemplate() {
  7796. return {
  7797. [SELECTOR_TITLE]: this._getTitle(),
  7798. [SELECTOR_CONTENT]: this._getContent()
  7799. };
  7800. }
  7801. _getContent() {
  7802. return this._resolvePossibleFunction(this._config.content);
  7803. } // Static
  7804. static jQueryInterface(config) {
  7805. return this.each(function () {
  7806. const data = Popover.getOrCreateInstance(this, config);
  7807. if (typeof config !== 'string') {
  7808. return;
  7809. }
  7810. if (typeof data[config] === 'undefined') {
  7811. throw new TypeError(`No method named "${config}"`);
  7812. }
  7813. data[config]();
  7814. });
  7815. }
  7816. }
  7817. /**
  7818. * jQuery
  7819. */
  7820. defineJQueryPlugin(Popover);
  7821. /**
  7822. * --------------------------------------------------------------------------
  7823. * Bootstrap (v5.2.3): scrollspy.js
  7824. * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
  7825. * --------------------------------------------------------------------------
  7826. */
  7827. /**
  7828. * Constants
  7829. */
  7830. const NAME$2 = 'scrollspy';
  7831. const DATA_KEY$2 = 'bs.scrollspy';
  7832. const EVENT_KEY$2 = `.${DATA_KEY$2}`;
  7833. const DATA_API_KEY = '.data-api';
  7834. const EVENT_ACTIVATE = `activate${EVENT_KEY$2}`;
  7835. const EVENT_CLICK = `click${EVENT_KEY$2}`;
  7836. const EVENT_LOAD_DATA_API$1 = `load${EVENT_KEY$2}${DATA_API_KEY}`;
  7837. const CLASS_NAME_DROPDOWN_ITEM = 'dropdown-item';
  7838. const CLASS_NAME_ACTIVE$1 = 'active';
  7839. const SELECTOR_DATA_SPY = '[data-bs-spy="scroll"]';
  7840. const SELECTOR_TARGET_LINKS = '[href]';
  7841. const SELECTOR_NAV_LIST_GROUP = '.nav, .list-group';
  7842. const SELECTOR_NAV_LINKS = '.nav-link';
  7843. const SELECTOR_NAV_ITEMS = '.nav-item';
  7844. const SELECTOR_LIST_ITEMS = '.list-group-item';
  7845. const SELECTOR_LINK_ITEMS = `${SELECTOR_NAV_LINKS}, ${SELECTOR_NAV_ITEMS} > ${SELECTOR_NAV_LINKS}, ${SELECTOR_LIST_ITEMS}`;
  7846. const SELECTOR_DROPDOWN = '.dropdown';
  7847. const SELECTOR_DROPDOWN_TOGGLE$1 = '.dropdown-toggle';
  7848. const Default$1 = {
  7849. offset: null,
  7850. // TODO: v6 @deprecated, keep it for backwards compatibility reasons
  7851. rootMargin: '0px 0px -25%',
  7852. smoothScroll: false,
  7853. target: null,
  7854. threshold: [0.1, 0.5, 1]
  7855. };
  7856. const DefaultType$1 = {
  7857. offset: '(number|null)',
  7858. // TODO v6 @deprecated, keep it for backwards compatibility reasons
  7859. rootMargin: 'string',
  7860. smoothScroll: 'boolean',
  7861. target: 'element',
  7862. threshold: 'array'
  7863. };
  7864. /**
  7865. * Class definition
  7866. */
  7867. class ScrollSpy extends BaseComponent {
  7868. constructor(element, config) {
  7869. super(element, config); // this._element is the observablesContainer and config.target the menu links wrapper
  7870. this._targetLinks = new Map();
  7871. this._observableSections = new Map();
  7872. this._rootElement = getComputedStyle(this._element).overflowY === 'visible' ? null : this._element;
  7873. this._activeTarget = null;
  7874. this._observer = null;
  7875. this._previousScrollData = {
  7876. visibleEntryTop: 0,
  7877. parentScrollTop: 0
  7878. };
  7879. this.refresh(); // initialize
  7880. } // Getters
  7881. static get Default() {
  7882. return Default$1;
  7883. }
  7884. static get DefaultType() {
  7885. return DefaultType$1;
  7886. }
  7887. static get NAME() {
  7888. return NAME$2;
  7889. } // Public
  7890. refresh() {
  7891. this._initializeTargetsAndObservables();
  7892. this._maybeEnableSmoothScroll();
  7893. if (this._observer) {
  7894. this._observer.disconnect();
  7895. } else {
  7896. this._observer = this._getNewObserver();
  7897. }
  7898. for (const section of this._observableSections.values()) {
  7899. this._observer.observe(section);
  7900. }
  7901. }
  7902. dispose() {
  7903. this._observer.disconnect();
  7904. super.dispose();
  7905. } // Private
  7906. _configAfterMerge(config) {
  7907. // TODO: on v6 target should be given explicitly & remove the {target: 'ss-target'} case
  7908. config.target = getElement(config.target) || document.body; // TODO: v6 Only for backwards compatibility reasons. Use rootMargin only
  7909. config.rootMargin = config.offset ? `${config.offset}px 0px -30%` : config.rootMargin;
  7910. if (typeof config.threshold === 'string') {
  7911. config.threshold = config.threshold.split(',').map(value => Number.parseFloat(value));
  7912. }
  7913. return config;
  7914. }
  7915. _maybeEnableSmoothScroll() {
  7916. if (!this._config.smoothScroll) {
  7917. return;
  7918. } // unregister any previous listeners
  7919. EventHandler.off(this._config.target, EVENT_CLICK);
  7920. EventHandler.on(this._config.target, EVENT_CLICK, SELECTOR_TARGET_LINKS, event => {
  7921. const observableSection = this._observableSections.get(event.target.hash);
  7922. if (observableSection) {
  7923. event.preventDefault();
  7924. const root = this._rootElement || window;
  7925. const height = observableSection.offsetTop - this._element.offsetTop;
  7926. if (root.scrollTo) {
  7927. root.scrollTo({
  7928. top: height,
  7929. behavior: 'smooth'
  7930. });
  7931. return;
  7932. } // Chrome 60 doesn't support `scrollTo`
  7933. root.scrollTop = height;
  7934. }
  7935. });
  7936. }
  7937. _getNewObserver() {
  7938. const options = {
  7939. root: this._rootElement,
  7940. threshold: this._config.threshold,
  7941. rootMargin: this._config.rootMargin
  7942. };
  7943. return new IntersectionObserver(entries => this._observerCallback(entries), options);
  7944. } // The logic of selection
  7945. _observerCallback(entries) {
  7946. const targetElement = entry => this._targetLinks.get(`#${entry.target.id}`);
  7947. const activate = entry => {
  7948. this._previousScrollData.visibleEntryTop = entry.target.offsetTop;
  7949. this._process(targetElement(entry));
  7950. };
  7951. const parentScrollTop = (this._rootElement || document.documentElement).scrollTop;
  7952. const userScrollsDown = parentScrollTop >= this._previousScrollData.parentScrollTop;
  7953. this._previousScrollData.parentScrollTop = parentScrollTop;
  7954. for (const entry of entries) {
  7955. if (!entry.isIntersecting) {
  7956. this._activeTarget = null;
  7957. this._clearActiveClass(targetElement(entry));
  7958. continue;
  7959. }
  7960. const entryIsLowerThanPrevious = entry.target.offsetTop >= this._previousScrollData.visibleEntryTop; // if we are scrolling down, pick the bigger offsetTop
  7961. if (userScrollsDown && entryIsLowerThanPrevious) {
  7962. activate(entry); // if parent isn't scrolled, let's keep the first visible item, breaking the iteration
  7963. if (!parentScrollTop) {
  7964. return;
  7965. }
  7966. continue;
  7967. } // if we are scrolling up, pick the smallest offsetTop
  7968. if (!userScrollsDown && !entryIsLowerThanPrevious) {
  7969. activate(entry);
  7970. }
  7971. }
  7972. }
  7973. _initializeTargetsAndObservables() {
  7974. this._targetLinks = new Map();
  7975. this._observableSections = new Map();
  7976. const targetLinks = SelectorEngine.find(SELECTOR_TARGET_LINKS, this._config.target);
  7977. for (const anchor of targetLinks) {
  7978. // ensure that the anchor has an id and is not disabled
  7979. if (!anchor.hash || isDisabled(anchor)) {
  7980. continue;
  7981. }
  7982. const observableSection = SelectorEngine.findOne(anchor.hash, this._element); // ensure that the observableSection exists & is visible
  7983. if (isVisible(observableSection)) {
  7984. this._targetLinks.set(anchor.hash, anchor);
  7985. this._observableSections.set(anchor.hash, observableSection);
  7986. }
  7987. }
  7988. }
  7989. _process(target) {
  7990. if (this._activeTarget === target) {
  7991. return;
  7992. }
  7993. this._clearActiveClass(this._config.target);
  7994. this._activeTarget = target;
  7995. target.classList.add(CLASS_NAME_ACTIVE$1);
  7996. this._activateParents(target);
  7997. EventHandler.trigger(this._element, EVENT_ACTIVATE, {
  7998. relatedTarget: target
  7999. });
  8000. }
  8001. _activateParents(target) {
  8002. // Activate dropdown parents
  8003. if (target.classList.contains(CLASS_NAME_DROPDOWN_ITEM)) {
  8004. SelectorEngine.findOne(SELECTOR_DROPDOWN_TOGGLE$1, target.closest(SELECTOR_DROPDOWN)).classList.add(CLASS_NAME_ACTIVE$1);
  8005. return;
  8006. }
  8007. for (const listGroup of SelectorEngine.parents(target, SELECTOR_NAV_LIST_GROUP)) {
  8008. // Set triggered links parents as active
  8009. // With both <ul> and <nav> markup a parent is the previous sibling of any nav ancestor
  8010. for (const item of SelectorEngine.prev(listGroup, SELECTOR_LINK_ITEMS)) {
  8011. item.classList.add(CLASS_NAME_ACTIVE$1);
  8012. }
  8013. }
  8014. }
  8015. _clearActiveClass(parent) {
  8016. parent.classList.remove(CLASS_NAME_ACTIVE$1);
  8017. const activeNodes = SelectorEngine.find(`${SELECTOR_TARGET_LINKS}.${CLASS_NAME_ACTIVE$1}`, parent);
  8018. for (const node of activeNodes) {
  8019. node.classList.remove(CLASS_NAME_ACTIVE$1);
  8020. }
  8021. } // Static
  8022. static jQueryInterface(config) {
  8023. return this.each(function () {
  8024. const data = ScrollSpy.getOrCreateInstance(this, config);
  8025. if (typeof config !== 'string') {
  8026. return;
  8027. }
  8028. if (data[config] === undefined || config.startsWith('_') || config === 'constructor') {
  8029. throw new TypeError(`No method named "${config}"`);
  8030. }
  8031. data[config]();
  8032. });
  8033. }
  8034. }
  8035. /**
  8036. * Data API implementation
  8037. */
  8038. EventHandler.on(window, EVENT_LOAD_DATA_API$1, () => {
  8039. for (const spy of SelectorEngine.find(SELECTOR_DATA_SPY)) {
  8040. ScrollSpy.getOrCreateInstance(spy);
  8041. }
  8042. });
  8043. /**
  8044. * jQuery
  8045. */
  8046. defineJQueryPlugin(ScrollSpy);
  8047. /**
  8048. * --------------------------------------------------------------------------
  8049. * Bootstrap (v5.2.3): tab.js
  8050. * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
  8051. * --------------------------------------------------------------------------
  8052. */
  8053. /**
  8054. * Constants
  8055. */
  8056. const NAME$1 = 'tab';
  8057. const DATA_KEY$1 = 'bs.tab';
  8058. const EVENT_KEY$1 = `.${DATA_KEY$1}`;
  8059. const EVENT_HIDE$1 = `hide${EVENT_KEY$1}`;
  8060. const EVENT_HIDDEN$1 = `hidden${EVENT_KEY$1}`;
  8061. const EVENT_SHOW$1 = `show${EVENT_KEY$1}`;
  8062. const EVENT_SHOWN$1 = `shown${EVENT_KEY$1}`;
  8063. const EVENT_CLICK_DATA_API = `click${EVENT_KEY$1}`;
  8064. const EVENT_KEYDOWN = `keydown${EVENT_KEY$1}`;
  8065. const EVENT_LOAD_DATA_API = `load${EVENT_KEY$1}`;
  8066. const ARROW_LEFT_KEY = 'ArrowLeft';
  8067. const ARROW_RIGHT_KEY = 'ArrowRight';
  8068. const ARROW_UP_KEY = 'ArrowUp';
  8069. const ARROW_DOWN_KEY = 'ArrowDown';
  8070. const CLASS_NAME_ACTIVE = 'active';
  8071. const CLASS_NAME_FADE$1 = 'fade';
  8072. const CLASS_NAME_SHOW$1 = 'show';
  8073. const CLASS_DROPDOWN = 'dropdown';
  8074. const SELECTOR_DROPDOWN_TOGGLE = '.dropdown-toggle';
  8075. const SELECTOR_DROPDOWN_MENU = '.dropdown-menu';
  8076. const NOT_SELECTOR_DROPDOWN_TOGGLE = ':not(.dropdown-toggle)';
  8077. const SELECTOR_TAB_PANEL = '.list-group, .nav, [role="tablist"]';
  8078. const SELECTOR_OUTER = '.nav-item, .list-group-item';
  8079. const SELECTOR_INNER = `.nav-link${NOT_SELECTOR_DROPDOWN_TOGGLE}, .list-group-item${NOT_SELECTOR_DROPDOWN_TOGGLE}, [role="tab"]${NOT_SELECTOR_DROPDOWN_TOGGLE}`;
  8080. const SELECTOR_DATA_TOGGLE = '[data-bs-toggle="tab"], [data-bs-toggle="pill"], [data-bs-toggle="list"]'; // todo:v6: could be only `tab`
  8081. const SELECTOR_INNER_ELEM = `${SELECTOR_INNER}, ${SELECTOR_DATA_TOGGLE}`;
  8082. const SELECTOR_DATA_TOGGLE_ACTIVE = `.${CLASS_NAME_ACTIVE}[data-bs-toggle="tab"], .${CLASS_NAME_ACTIVE}[data-bs-toggle="pill"], .${CLASS_NAME_ACTIVE}[data-bs-toggle="list"]`;
  8083. /**
  8084. * Class definition
  8085. */
  8086. class Tab extends BaseComponent {
  8087. constructor(element) {
  8088. super(element);
  8089. this._parent = this._element.closest(SELECTOR_TAB_PANEL);
  8090. if (!this._parent) {
  8091. return; // todo: should Throw exception on v6
  8092. // throw new TypeError(`${element.outerHTML} has not a valid parent ${SELECTOR_INNER_ELEM}`)
  8093. } // Set up initial aria attributes
  8094. this._setInitialAttributes(this._parent, this._getChildren());
  8095. EventHandler.on(this._element, EVENT_KEYDOWN, event => this._keydown(event));
  8096. } // Getters
  8097. static get NAME() {
  8098. return NAME$1;
  8099. } // Public
  8100. show() {
  8101. // Shows this elem and deactivate the active sibling if exists
  8102. const innerElem = this._element;
  8103. if (this._elemIsActive(innerElem)) {
  8104. return;
  8105. } // Search for active tab on same parent to deactivate it
  8106. const active = this._getActiveElem();
  8107. const hideEvent = active ? EventHandler.trigger(active, EVENT_HIDE$1, {
  8108. relatedTarget: innerElem
  8109. }) : null;
  8110. const showEvent = EventHandler.trigger(innerElem, EVENT_SHOW$1, {
  8111. relatedTarget: active
  8112. });
  8113. if (showEvent.defaultPrevented || hideEvent && hideEvent.defaultPrevented) {
  8114. return;
  8115. }
  8116. this._deactivate(active, innerElem);
  8117. this._activate(innerElem, active);
  8118. } // Private
  8119. _activate(element, relatedElem) {
  8120. if (!element) {
  8121. return;
  8122. }
  8123. element.classList.add(CLASS_NAME_ACTIVE);
  8124. this._activate(getElementFromSelector(element)); // Search and activate/show the proper section
  8125. const complete = () => {
  8126. if (element.getAttribute('role') !== 'tab') {
  8127. element.classList.add(CLASS_NAME_SHOW$1);
  8128. return;
  8129. }
  8130. element.removeAttribute('tabindex');
  8131. element.setAttribute('aria-selected', true);
  8132. this._toggleDropDown(element, true);
  8133. EventHandler.trigger(element, EVENT_SHOWN$1, {
  8134. relatedTarget: relatedElem
  8135. });
  8136. };
  8137. this._queueCallback(complete, element, element.classList.contains(CLASS_NAME_FADE$1));
  8138. }
  8139. _deactivate(element, relatedElem) {
  8140. if (!element) {
  8141. return;
  8142. }
  8143. element.classList.remove(CLASS_NAME_ACTIVE);
  8144. element.blur();
  8145. this._deactivate(getElementFromSelector(element)); // Search and deactivate the shown section too
  8146. const complete = () => {
  8147. if (element.getAttribute('role') !== 'tab') {
  8148. element.classList.remove(CLASS_NAME_SHOW$1);
  8149. return;
  8150. }
  8151. element.setAttribute('aria-selected', false);
  8152. element.setAttribute('tabindex', '-1');
  8153. this._toggleDropDown(element, false);
  8154. EventHandler.trigger(element, EVENT_HIDDEN$1, {
  8155. relatedTarget: relatedElem
  8156. });
  8157. };
  8158. this._queueCallback(complete, element, element.classList.contains(CLASS_NAME_FADE$1));
  8159. }
  8160. _keydown(event) {
  8161. if (![ARROW_LEFT_KEY, ARROW_RIGHT_KEY, ARROW_UP_KEY, ARROW_DOWN_KEY].includes(event.key)) {
  8162. return;
  8163. }
  8164. event.stopPropagation(); // stopPropagation/preventDefault both added to support up/down keys without scrolling the page
  8165. event.preventDefault();
  8166. const isNext = [ARROW_RIGHT_KEY, ARROW_DOWN_KEY].includes(event.key);
  8167. const nextActiveElement = getNextActiveElement(this._getChildren().filter(element => !isDisabled(element)), event.target, isNext, true);
  8168. if (nextActiveElement) {
  8169. nextActiveElement.focus({
  8170. preventScroll: true
  8171. });
  8172. Tab.getOrCreateInstance(nextActiveElement).show();
  8173. }
  8174. }
  8175. _getChildren() {
  8176. // collection of inner elements
  8177. return SelectorEngine.find(SELECTOR_INNER_ELEM, this._parent);
  8178. }
  8179. _getActiveElem() {
  8180. return this._getChildren().find(child => this._elemIsActive(child)) || null;
  8181. }
  8182. _setInitialAttributes(parent, children) {
  8183. this._setAttributeIfNotExists(parent, 'role', 'tablist');
  8184. for (const child of children) {
  8185. this._setInitialAttributesOnChild(child);
  8186. }
  8187. }
  8188. _setInitialAttributesOnChild(child) {
  8189. child = this._getInnerElement(child);
  8190. const isActive = this._elemIsActive(child);
  8191. const outerElem = this._getOuterElement(child);
  8192. child.setAttribute('aria-selected', isActive);
  8193. if (outerElem !== child) {
  8194. this._setAttributeIfNotExists(outerElem, 'role', 'presentation');
  8195. }
  8196. if (!isActive) {
  8197. child.setAttribute('tabindex', '-1');
  8198. }
  8199. this._setAttributeIfNotExists(child, 'role', 'tab'); // set attributes to the related panel too
  8200. this._setInitialAttributesOnTargetPanel(child);
  8201. }
  8202. _setInitialAttributesOnTargetPanel(child) {
  8203. const target = getElementFromSelector(child);
  8204. if (!target) {
  8205. return;
  8206. }
  8207. this._setAttributeIfNotExists(target, 'role', 'tabpanel');
  8208. if (child.id) {
  8209. this._setAttributeIfNotExists(target, 'aria-labelledby', `#${child.id}`);
  8210. }
  8211. }
  8212. _toggleDropDown(element, open) {
  8213. const outerElem = this._getOuterElement(element);
  8214. if (!outerElem.classList.contains(CLASS_DROPDOWN)) {
  8215. return;
  8216. }
  8217. const toggle = (selector, className) => {
  8218. const element = SelectorEngine.findOne(selector, outerElem);
  8219. if (element) {
  8220. element.classList.toggle(className, open);
  8221. }
  8222. };
  8223. toggle(SELECTOR_DROPDOWN_TOGGLE, CLASS_NAME_ACTIVE);
  8224. toggle(SELECTOR_DROPDOWN_MENU, CLASS_NAME_SHOW$1);
  8225. outerElem.setAttribute('aria-expanded', open);
  8226. }
  8227. _setAttributeIfNotExists(element, attribute, value) {
  8228. if (!element.hasAttribute(attribute)) {
  8229. element.setAttribute(attribute, value);
  8230. }
  8231. }
  8232. _elemIsActive(elem) {
  8233. return elem.classList.contains(CLASS_NAME_ACTIVE);
  8234. } // Try to get the inner element (usually the .nav-link)
  8235. _getInnerElement(elem) {
  8236. return elem.matches(SELECTOR_INNER_ELEM) ? elem : SelectorEngine.findOne(SELECTOR_INNER_ELEM, elem);
  8237. } // Try to get the outer element (usually the .nav-item)
  8238. _getOuterElement(elem) {
  8239. return elem.closest(SELECTOR_OUTER) || elem;
  8240. } // Static
  8241. static jQueryInterface(config) {
  8242. return this.each(function () {
  8243. const data = Tab.getOrCreateInstance(this);
  8244. if (typeof config !== 'string') {
  8245. return;
  8246. }
  8247. if (data[config] === undefined || config.startsWith('_') || config === 'constructor') {
  8248. throw new TypeError(`No method named "${config}"`);
  8249. }
  8250. data[config]();
  8251. });
  8252. }
  8253. }
  8254. /**
  8255. * Data API implementation
  8256. */
  8257. EventHandler.on(document, EVENT_CLICK_DATA_API, SELECTOR_DATA_TOGGLE, function (event) {
  8258. if (['A', 'AREA'].includes(this.tagName)) {
  8259. event.preventDefault();
  8260. }
  8261. if (isDisabled(this)) {
  8262. return;
  8263. }
  8264. Tab.getOrCreateInstance(this).show();
  8265. });
  8266. /**
  8267. * Initialize on focus
  8268. */
  8269. EventHandler.on(window, EVENT_LOAD_DATA_API, () => {
  8270. for (const element of SelectorEngine.find(SELECTOR_DATA_TOGGLE_ACTIVE)) {
  8271. Tab.getOrCreateInstance(element);
  8272. }
  8273. });
  8274. /**
  8275. * jQuery
  8276. */
  8277. defineJQueryPlugin(Tab);
  8278. /**
  8279. * --------------------------------------------------------------------------
  8280. * Bootstrap (v5.2.3): toast.js
  8281. * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
  8282. * --------------------------------------------------------------------------
  8283. */
  8284. /**
  8285. * Constants
  8286. */
  8287. const NAME = 'toast';
  8288. const DATA_KEY = 'bs.toast';
  8289. const EVENT_KEY = `.${DATA_KEY}`;
  8290. const EVENT_MOUSEOVER = `mouseover${EVENT_KEY}`;
  8291. const EVENT_MOUSEOUT = `mouseout${EVENT_KEY}`;
  8292. const EVENT_FOCUSIN = `focusin${EVENT_KEY}`;
  8293. const EVENT_FOCUSOUT = `focusout${EVENT_KEY}`;
  8294. const EVENT_HIDE = `hide${EVENT_KEY}`;
  8295. const EVENT_HIDDEN = `hidden${EVENT_KEY}`;
  8296. const EVENT_SHOW = `show${EVENT_KEY}`;
  8297. const EVENT_SHOWN = `shown${EVENT_KEY}`;
  8298. const CLASS_NAME_FADE = 'fade';
  8299. const CLASS_NAME_HIDE = 'hide'; // @deprecated - kept here only for backwards compatibility
  8300. const CLASS_NAME_SHOW = 'show';
  8301. const CLASS_NAME_SHOWING = 'showing';
  8302. const DefaultType = {
  8303. animation: 'boolean',
  8304. autohide: 'boolean',
  8305. delay: 'number'
  8306. };
  8307. const Default = {
  8308. animation: true,
  8309. autohide: true,
  8310. delay: 5000
  8311. };
  8312. /**
  8313. * Class definition
  8314. */
  8315. class Toast extends BaseComponent {
  8316. constructor(element, config) {
  8317. super(element, config);
  8318. this._timeout = null;
  8319. this._hasMouseInteraction = false;
  8320. this._hasKeyboardInteraction = false;
  8321. this._setListeners();
  8322. } // Getters
  8323. static get Default() {
  8324. return Default;
  8325. }
  8326. static get DefaultType() {
  8327. return DefaultType;
  8328. }
  8329. static get NAME() {
  8330. return NAME;
  8331. } // Public
  8332. show() {
  8333. const showEvent = EventHandler.trigger(this._element, EVENT_SHOW);
  8334. if (showEvent.defaultPrevented) {
  8335. return;
  8336. }
  8337. this._clearTimeout();
  8338. if (this._config.animation) {
  8339. this._element.classList.add(CLASS_NAME_FADE);
  8340. }
  8341. const complete = () => {
  8342. this._element.classList.remove(CLASS_NAME_SHOWING);
  8343. EventHandler.trigger(this._element, EVENT_SHOWN);
  8344. this._maybeScheduleHide();
  8345. };
  8346. this._element.classList.remove(CLASS_NAME_HIDE); // @deprecated
  8347. reflow(this._element);
  8348. this._element.classList.add(CLASS_NAME_SHOW, CLASS_NAME_SHOWING);
  8349. this._queueCallback(complete, this._element, this._config.animation);
  8350. }
  8351. hide() {
  8352. if (!this.isShown()) {
  8353. return;
  8354. }
  8355. const hideEvent = EventHandler.trigger(this._element, EVENT_HIDE);
  8356. if (hideEvent.defaultPrevented) {
  8357. return;
  8358. }
  8359. const complete = () => {
  8360. this._element.classList.add(CLASS_NAME_HIDE); // @deprecated
  8361. this._element.classList.remove(CLASS_NAME_SHOWING, CLASS_NAME_SHOW);
  8362. EventHandler.trigger(this._element, EVENT_HIDDEN);
  8363. };
  8364. this._element.classList.add(CLASS_NAME_SHOWING);
  8365. this._queueCallback(complete, this._element, this._config.animation);
  8366. }
  8367. dispose() {
  8368. this._clearTimeout();
  8369. if (this.isShown()) {
  8370. this._element.classList.remove(CLASS_NAME_SHOW);
  8371. }
  8372. super.dispose();
  8373. }
  8374. isShown() {
  8375. return this._element.classList.contains(CLASS_NAME_SHOW);
  8376. } // Private
  8377. _maybeScheduleHide() {
  8378. if (!this._config.autohide) {
  8379. return;
  8380. }
  8381. if (this._hasMouseInteraction || this._hasKeyboardInteraction) {
  8382. return;
  8383. }
  8384. this._timeout = setTimeout(() => {
  8385. this.hide();
  8386. }, this._config.delay);
  8387. }
  8388. _onInteraction(event, isInteracting) {
  8389. switch (event.type) {
  8390. case 'mouseover':
  8391. case 'mouseout':
  8392. {
  8393. this._hasMouseInteraction = isInteracting;
  8394. break;
  8395. }
  8396. case 'focusin':
  8397. case 'focusout':
  8398. {
  8399. this._hasKeyboardInteraction = isInteracting;
  8400. break;
  8401. }
  8402. }
  8403. if (isInteracting) {
  8404. this._clearTimeout();
  8405. return;
  8406. }
  8407. const nextElement = event.relatedTarget;
  8408. if (this._element === nextElement || this._element.contains(nextElement)) {
  8409. return;
  8410. }
  8411. this._maybeScheduleHide();
  8412. }
  8413. _setListeners() {
  8414. EventHandler.on(this._element, EVENT_MOUSEOVER, event => this._onInteraction(event, true));
  8415. EventHandler.on(this._element, EVENT_MOUSEOUT, event => this._onInteraction(event, false));
  8416. EventHandler.on(this._element, EVENT_FOCUSIN, event => this._onInteraction(event, true));
  8417. EventHandler.on(this._element, EVENT_FOCUSOUT, event => this._onInteraction(event, false));
  8418. }
  8419. _clearTimeout() {
  8420. clearTimeout(this._timeout);
  8421. this._timeout = null;
  8422. } // Static
  8423. static jQueryInterface(config) {
  8424. return this.each(function () {
  8425. const data = Toast.getOrCreateInstance(this, config);
  8426. if (typeof config === 'string') {
  8427. if (typeof data[config] === 'undefined') {
  8428. throw new TypeError(`No method named "${config}"`);
  8429. }
  8430. data[config](this);
  8431. }
  8432. });
  8433. }
  8434. }
  8435. /**
  8436. * Data API implementation
  8437. */
  8438. enableDismissTrigger(Toast);
  8439. /**
  8440. * jQuery
  8441. */
  8442. defineJQueryPlugin(Toast);
  8443. //# sourceMappingURL=bootstrap.esm.js.map
  8444. /***/ }),
  8445. /***/ "./resources/css/app.css":
  8446. /*!*******************************!*\
  8447. !*** ./resources/css/app.css ***!
  8448. \*******************************/
  8449. /***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
  8450. "use strict";
  8451. __webpack_require__.r(__webpack_exports__);
  8452. // extracted by mini-css-extract-plugin
  8453. /***/ }),
  8454. /***/ "./node_modules/process/browser.js":
  8455. /*!*****************************************!*\
  8456. !*** ./node_modules/process/browser.js ***!
  8457. \*****************************************/
  8458. /***/ ((module) => {
  8459. // shim for using process in browser
  8460. var process = module.exports = {};
  8461. // cached from whatever global is present so that test runners that stub it
  8462. // don't break things. But we need to wrap it in a try catch in case it is
  8463. // wrapped in strict mode code which doesn't define any globals. It's inside a
  8464. // function because try/catches deoptimize in certain engines.
  8465. var cachedSetTimeout;
  8466. var cachedClearTimeout;
  8467. function defaultSetTimout() {
  8468. throw new Error('setTimeout has not been defined');
  8469. }
  8470. function defaultClearTimeout () {
  8471. throw new Error('clearTimeout has not been defined');
  8472. }
  8473. (function () {
  8474. try {
  8475. if (typeof setTimeout === 'function') {
  8476. cachedSetTimeout = setTimeout;
  8477. } else {
  8478. cachedSetTimeout = defaultSetTimout;
  8479. }
  8480. } catch (e) {
  8481. cachedSetTimeout = defaultSetTimout;
  8482. }
  8483. try {
  8484. if (typeof clearTimeout === 'function') {
  8485. cachedClearTimeout = clearTimeout;
  8486. } else {
  8487. cachedClearTimeout = defaultClearTimeout;
  8488. }
  8489. } catch (e) {
  8490. cachedClearTimeout = defaultClearTimeout;
  8491. }
  8492. } ())
  8493. function runTimeout(fun) {
  8494. if (cachedSetTimeout === setTimeout) {
  8495. //normal enviroments in sane situations
  8496. return setTimeout(fun, 0);
  8497. }
  8498. // if setTimeout wasn't available but was latter defined
  8499. if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {
  8500. cachedSetTimeout = setTimeout;
  8501. return setTimeout(fun, 0);
  8502. }
  8503. try {
  8504. // when when somebody has screwed with setTimeout but no I.E. maddness
  8505. return cachedSetTimeout(fun, 0);
  8506. } catch(e){
  8507. try {
  8508. // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally
  8509. return cachedSetTimeout.call(null, fun, 0);
  8510. } catch(e){
  8511. // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error
  8512. return cachedSetTimeout.call(this, fun, 0);
  8513. }
  8514. }
  8515. }
  8516. function runClearTimeout(marker) {
  8517. if (cachedClearTimeout === clearTimeout) {
  8518. //normal enviroments in sane situations
  8519. return clearTimeout(marker);
  8520. }
  8521. // if clearTimeout wasn't available but was latter defined
  8522. if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {
  8523. cachedClearTimeout = clearTimeout;
  8524. return clearTimeout(marker);
  8525. }
  8526. try {
  8527. // when when somebody has screwed with setTimeout but no I.E. maddness
  8528. return cachedClearTimeout(marker);
  8529. } catch (e){
  8530. try {
  8531. // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally
  8532. return cachedClearTimeout.call(null, marker);
  8533. } catch (e){
  8534. // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.
  8535. // Some versions of I.E. have different rules for clearTimeout vs setTimeout
  8536. return cachedClearTimeout.call(this, marker);
  8537. }
  8538. }
  8539. }
  8540. var queue = [];
  8541. var draining = false;
  8542. var currentQueue;
  8543. var queueIndex = -1;
  8544. function cleanUpNextTick() {
  8545. if (!draining || !currentQueue) {
  8546. return;
  8547. }
  8548. draining = false;
  8549. if (currentQueue.length) {
  8550. queue = currentQueue.concat(queue);
  8551. } else {
  8552. queueIndex = -1;
  8553. }
  8554. if (queue.length) {
  8555. drainQueue();
  8556. }
  8557. }
  8558. function drainQueue() {
  8559. if (draining) {
  8560. return;
  8561. }
  8562. var timeout = runTimeout(cleanUpNextTick);
  8563. draining = true;
  8564. var len = queue.length;
  8565. while(len) {
  8566. currentQueue = queue;
  8567. queue = [];
  8568. while (++queueIndex < len) {
  8569. if (currentQueue) {
  8570. currentQueue[queueIndex].run();
  8571. }
  8572. }
  8573. queueIndex = -1;
  8574. len = queue.length;
  8575. }
  8576. currentQueue = null;
  8577. draining = false;
  8578. runClearTimeout(timeout);
  8579. }
  8580. process.nextTick = function (fun) {
  8581. var args = new Array(arguments.length - 1);
  8582. if (arguments.length > 1) {
  8583. for (var i = 1; i < arguments.length; i++) {
  8584. args[i - 1] = arguments[i];
  8585. }
  8586. }
  8587. queue.push(new Item(fun, args));
  8588. if (queue.length === 1 && !draining) {
  8589. runTimeout(drainQueue);
  8590. }
  8591. };
  8592. // v8 likes predictible objects
  8593. function Item(fun, array) {
  8594. this.fun = fun;
  8595. this.array = array;
  8596. }
  8597. Item.prototype.run = function () {
  8598. this.fun.apply(null, this.array);
  8599. };
  8600. process.title = 'browser';
  8601. process.browser = true;
  8602. process.env = {};
  8603. process.argv = [];
  8604. process.version = ''; // empty string to avoid regexp issues
  8605. process.versions = {};
  8606. function noop() {}
  8607. process.on = noop;
  8608. process.addListener = noop;
  8609. process.once = noop;
  8610. process.off = noop;
  8611. process.removeListener = noop;
  8612. process.removeAllListeners = noop;
  8613. process.emit = noop;
  8614. process.prependListener = noop;
  8615. process.prependOnceListener = noop;
  8616. process.listeners = function (name) { return [] }
  8617. process.binding = function (name) {
  8618. throw new Error('process.binding is not supported');
  8619. };
  8620. process.cwd = function () { return '/' };
  8621. process.chdir = function (dir) {
  8622. throw new Error('process.chdir is not supported');
  8623. };
  8624. process.umask = function() { return 0; };
  8625. /***/ })
  8626. /******/ });
  8627. /************************************************************************/
  8628. /******/ // The module cache
  8629. /******/ var __webpack_module_cache__ = {};
  8630. /******/
  8631. /******/ // The require function
  8632. /******/ function __webpack_require__(moduleId) {
  8633. /******/ // Check if module is in cache
  8634. /******/ var cachedModule = __webpack_module_cache__[moduleId];
  8635. /******/ if (cachedModule !== undefined) {
  8636. /******/ return cachedModule.exports;
  8637. /******/ }
  8638. /******/ // Create a new module (and put it into the cache)
  8639. /******/ var module = __webpack_module_cache__[moduleId] = {
  8640. /******/ // no module.id needed
  8641. /******/ // no module.loaded needed
  8642. /******/ exports: {}
  8643. /******/ };
  8644. /******/
  8645. /******/ // Execute the module function
  8646. /******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__);
  8647. /******/
  8648. /******/ // Return the exports of the module
  8649. /******/ return module.exports;
  8650. /******/ }
  8651. /******/
  8652. /******/ // expose the modules object (__webpack_modules__)
  8653. /******/ __webpack_require__.m = __webpack_modules__;
  8654. /******/
  8655. /************************************************************************/
  8656. /******/ /* webpack/runtime/chunk loaded */
  8657. /******/ (() => {
  8658. /******/ var deferred = [];
  8659. /******/ __webpack_require__.O = (result, chunkIds, fn, priority) => {
  8660. /******/ if(chunkIds) {
  8661. /******/ priority = priority || 0;
  8662. /******/ for(var i = deferred.length; i > 0 && deferred[i - 1][2] > priority; i--) deferred[i] = deferred[i - 1];
  8663. /******/ deferred[i] = [chunkIds, fn, priority];
  8664. /******/ return;
  8665. /******/ }
  8666. /******/ var notFulfilled = Infinity;
  8667. /******/ for (var i = 0; i < deferred.length; i++) {
  8668. /******/ var [chunkIds, fn, priority] = deferred[i];
  8669. /******/ var fulfilled = true;
  8670. /******/ for (var j = 0; j < chunkIds.length; j++) {
  8671. /******/ if ((priority & 1 === 0 || notFulfilled >= priority) && Object.keys(__webpack_require__.O).every((key) => (__webpack_require__.O[key](chunkIds[j])))) {
  8672. /******/ chunkIds.splice(j--, 1);
  8673. /******/ } else {
  8674. /******/ fulfilled = false;
  8675. /******/ if(priority < notFulfilled) notFulfilled = priority;
  8676. /******/ }
  8677. /******/ }
  8678. /******/ if(fulfilled) {
  8679. /******/ deferred.splice(i--, 1)
  8680. /******/ var r = fn();
  8681. /******/ if (r !== undefined) result = r;
  8682. /******/ }
  8683. /******/ }
  8684. /******/ return result;
  8685. /******/ };
  8686. /******/ })();
  8687. /******/
  8688. /******/ /* webpack/runtime/compat get default export */
  8689. /******/ (() => {
  8690. /******/ // getDefaultExport function for compatibility with non-harmony modules
  8691. /******/ __webpack_require__.n = (module) => {
  8692. /******/ var getter = module && module.__esModule ?
  8693. /******/ () => (module['default']) :
  8694. /******/ () => (module);
  8695. /******/ __webpack_require__.d(getter, { a: getter });
  8696. /******/ return getter;
  8697. /******/ };
  8698. /******/ })();
  8699. /******/
  8700. /******/ /* webpack/runtime/define property getters */
  8701. /******/ (() => {
  8702. /******/ // define getter functions for harmony exports
  8703. /******/ __webpack_require__.d = (exports, definition) => {
  8704. /******/ for(var key in definition) {
  8705. /******/ if(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {
  8706. /******/ Object.defineProperty(exports, key, { enumerable: true, get: definition[key] });
  8707. /******/ }
  8708. /******/ }
  8709. /******/ };
  8710. /******/ })();
  8711. /******/
  8712. /******/ /* webpack/runtime/hasOwnProperty shorthand */
  8713. /******/ (() => {
  8714. /******/ __webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))
  8715. /******/ })();
  8716. /******/
  8717. /******/ /* webpack/runtime/make namespace object */
  8718. /******/ (() => {
  8719. /******/ // define __esModule on exports
  8720. /******/ __webpack_require__.r = (exports) => {
  8721. /******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
  8722. /******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
  8723. /******/ }
  8724. /******/ Object.defineProperty(exports, '__esModule', { value: true });
  8725. /******/ };
  8726. /******/ })();
  8727. /******/
  8728. /******/ /* webpack/runtime/jsonp chunk loading */
  8729. /******/ (() => {
  8730. /******/ // no baseURI
  8731. /******/
  8732. /******/ // object to store loaded and loading chunks
  8733. /******/ // undefined = chunk not loaded, null = chunk preloaded/prefetched
  8734. /******/ // [resolve, reject, Promise] = chunk loading, 0 = chunk loaded
  8735. /******/ var installedChunks = {
  8736. /******/ "/js/app": 0,
  8737. /******/ "css/app": 0
  8738. /******/ };
  8739. /******/
  8740. /******/ // no chunk on demand loading
  8741. /******/
  8742. /******/ // no prefetching
  8743. /******/
  8744. /******/ // no preloaded
  8745. /******/
  8746. /******/ // no HMR
  8747. /******/
  8748. /******/ // no HMR manifest
  8749. /******/
  8750. /******/ __webpack_require__.O.j = (chunkId) => (installedChunks[chunkId] === 0);
  8751. /******/
  8752. /******/ // install a JSONP callback for chunk loading
  8753. /******/ var webpackJsonpCallback = (parentChunkLoadingFunction, data) => {
  8754. /******/ var [chunkIds, moreModules, runtime] = data;
  8755. /******/ // add "moreModules" to the modules object,
  8756. /******/ // then flag all "chunkIds" as loaded and fire callback
  8757. /******/ var moduleId, chunkId, i = 0;
  8758. /******/ if(chunkIds.some((id) => (installedChunks[id] !== 0))) {
  8759. /******/ for(moduleId in moreModules) {
  8760. /******/ if(__webpack_require__.o(moreModules, moduleId)) {
  8761. /******/ __webpack_require__.m[moduleId] = moreModules[moduleId];
  8762. /******/ }
  8763. /******/ }
  8764. /******/ if(runtime) var result = runtime(__webpack_require__);
  8765. /******/ }
  8766. /******/ if(parentChunkLoadingFunction) parentChunkLoadingFunction(data);
  8767. /******/ for(;i < chunkIds.length; i++) {
  8768. /******/ chunkId = chunkIds[i];
  8769. /******/ if(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {
  8770. /******/ installedChunks[chunkId][0]();
  8771. /******/ }
  8772. /******/ installedChunks[chunkId] = 0;
  8773. /******/ }
  8774. /******/ return __webpack_require__.O(result);
  8775. /******/ }
  8776. /******/
  8777. /******/ var chunkLoadingGlobal = self["webpackChunk"] = self["webpackChunk"] || [];
  8778. /******/ chunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));
  8779. /******/ chunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));
  8780. /******/ })();
  8781. /******/
  8782. /************************************************************************/
  8783. /******/
  8784. /******/ // startup
  8785. /******/ // Load entry module and return exports
  8786. /******/ // This entry module depends on other loaded chunks and execution need to be delayed
  8787. /******/ __webpack_require__.O(undefined, ["css/app"], () => (__webpack_require__("./resources/js/app.js")))
  8788. /******/ var __webpack_exports__ = __webpack_require__.O(undefined, ["css/app"], () => (__webpack_require__("./resources/css/app.css")))
  8789. /******/ __webpack_exports__ = __webpack_require__.O(__webpack_exports__);
  8790. /******/
  8791. /******/ })()
  8792. ;