12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555255625572558255925602561256225632564256525662567256825692570257125722573257425752576257725782579258025812582258325842585258625872588258925902591259225932594259525962597259825992600260126022603260426052606260726082609261026112612261326142615261626172618261926202621262226232624262526262627262826292630263126322633263426352636263726382639264026412642264326442645264626472648264926502651265226532654265526562657265826592660266126622663266426652666266726682669267026712672267326742675267626772678267926802681268226832684268526862687268826892690269126922693269426952696269726982699270027012702270327042705270627072708270927102711271227132714271527162717271827192720272127222723272427252726272727282729273027312732273327342735273627372738273927402741274227432744274527462747274827492750275127522753275427552756275727582759276027612762276327642765276627672768276927702771277227732774277527762777277827792780278127822783278427852786278727882789279027912792279327942795279627972798279928002801280228032804280528062807280828092810281128122813281428152816281728182819282028212822282328242825282628272828282928302831283228332834283528362837283828392840284128422843284428452846284728482849285028512852285328542855285628572858285928602861286228632864286528662867286828692870287128722873287428752876287728782879288028812882288328842885288628872888288928902891289228932894289528962897289828992900290129022903290429052906290729082909291029112912291329142915291629172918291929202921292229232924292529262927292829292930293129322933293429352936293729382939294029412942294329442945294629472948294929502951295229532954295529562957295829592960296129622963296429652966296729682969297029712972297329742975297629772978297929802981298229832984298529862987298829892990299129922993299429952996299729982999300030013002300330043005300630073008300930103011301230133014301530163017301830193020302130223023302430253026302730283029303030313032303330343035303630373038303930403041304230433044304530463047304830493050305130523053305430553056305730583059306030613062306330643065306630673068306930703071307230733074307530763077307830793080308130823083308430853086308730883089309030913092309330943095309630973098309931003101310231033104310531063107310831093110311131123113311431153116311731183119312031213122312331243125312631273128312931303131313231333134313531363137313831393140314131423143314431453146314731483149315031513152315331543155315631573158315931603161316231633164316531663167316831693170317131723173317431753176317731783179318031813182318331843185318631873188318931903191319231933194319531963197319831993200320132023203320432053206320732083209321032113212321332143215321632173218321932203221322232233224322532263227322832293230323132323233323432353236323732383239324032413242324332443245324632473248324932503251325232533254325532563257325832593260326132623263326432653266326732683269327032713272327332743275327632773278327932803281328232833284328532863287328832893290329132923293329432953296329732983299330033013302330333043305330633073308330933103311331233133314331533163317331833193320332133223323332433253326332733283329333033313332333333343335333633373338333933403341334233433344334533463347334833493350335133523353335433553356335733583359336033613362336333643365336633673368336933703371337233733374337533763377337833793380338133823383338433853386338733883389339033913392339333943395339633973398339934003401340234033404340534063407340834093410341134123413341434153416341734183419342034213422342334243425342634273428342934303431343234333434343534363437343834393440344134423443344434453446344734483449345034513452345334543455345634573458345934603461346234633464346534663467346834693470347134723473347434753476347734783479348034813482348334843485348634873488348934903491349234933494349534963497349834993500350135023503350435053506350735083509351035113512351335143515351635173518351935203521352235233524352535263527352835293530353135323533353435353536353735383539354035413542354335443545354635473548354935503551355235533554355535563557355835593560356135623563356435653566356735683569357035713572357335743575357635773578357935803581358235833584358535863587358835893590359135923593359435953596359735983599360036013602360336043605360636073608360936103611361236133614361536163617361836193620362136223623362436253626362736283629363036313632363336343635363636373638363936403641364236433644364536463647364836493650365136523653365436553656365736583659366036613662366336643665366636673668366936703671367236733674367536763677367836793680368136823683368436853686368736883689369036913692369336943695369636973698369937003701370237033704370537063707370837093710371137123713371437153716371737183719372037213722372337243725372637273728372937303731373237333734373537363737373837393740374137423743374437453746374737483749375037513752375337543755375637573758375937603761376237633764376537663767376837693770377137723773377437753776377737783779378037813782378337843785378637873788378937903791379237933794379537963797379837993800380138023803380438053806380738083809381038113812381338143815381638173818381938203821382238233824382538263827382838293830383138323833383438353836383738383839384038413842384338443845384638473848384938503851385238533854385538563857385838593860386138623863386438653866386738683869387038713872387338743875387638773878387938803881388238833884388538863887388838893890389138923893389438953896389738983899390039013902390339043905390639073908390939103911391239133914391539163917391839193920392139223923392439253926392739283929393039313932393339343935393639373938393939403941394239433944394539463947394839493950395139523953395439553956395739583959396039613962396339643965396639673968396939703971397239733974397539763977397839793980398139823983398439853986398739883989399039913992399339943995399639973998399940004001400240034004400540064007400840094010401140124013401440154016401740184019402040214022402340244025402640274028402940304031403240334034403540364037403840394040404140424043404440454046404740484049405040514052405340544055405640574058405940604061406240634064406540664067406840694070407140724073407440754076407740784079408040814082408340844085408640874088408940904091409240934094409540964097409840994100410141024103410441054106410741084109411041114112411341144115411641174118411941204121412241234124412541264127412841294130413141324133413441354136413741384139414041414142414341444145414641474148414941504151415241534154415541564157415841594160416141624163416441654166416741684169417041714172417341744175417641774178417941804181418241834184418541864187418841894190419141924193419441954196419741984199420042014202420342044205420642074208420942104211421242134214421542164217421842194220422142224223422442254226422742284229423042314232423342344235423642374238423942404241424242434244424542464247424842494250425142524253425442554256425742584259426042614262426342644265426642674268426942704271427242734274427542764277427842794280428142824283428442854286428742884289429042914292429342944295429642974298429943004301430243034304430543064307430843094310431143124313431443154316431743184319432043214322432343244325432643274328432943304331433243334334433543364337433843394340434143424343434443454346434743484349435043514352435343544355435643574358435943604361436243634364436543664367436843694370437143724373437443754376437743784379438043814382438343844385438643874388438943904391439243934394439543964397439843994400440144024403440444054406440744084409441044114412441344144415441644174418441944204421442244234424442544264427442844294430443144324433443444354436443744384439444044414442444344444445444644474448444944504451445244534454445544564457445844594460446144624463446444654466446744684469447044714472447344744475447644774478447944804481448244834484448544864487448844894490449144924493449444954496449744984499450045014502450345044505450645074508450945104511451245134514451545164517451845194520452145224523452445254526452745284529453045314532453345344535453645374538453945404541454245434544454545464547454845494550455145524553455445554556455745584559456045614562456345644565456645674568456945704571457245734574457545764577457845794580458145824583458445854586458745884589459045914592459345944595459645974598459946004601460246034604460546064607460846094610461146124613461446154616461746184619462046214622462346244625462646274628462946304631463246334634463546364637463846394640464146424643464446454646464746484649465046514652465346544655465646574658465946604661466246634664466546664667466846694670467146724673467446754676467746784679468046814682468346844685468646874688468946904691469246934694469546964697469846994700470147024703470447054706470747084709471047114712471347144715471647174718471947204721472247234724472547264727472847294730473147324733473447354736473747384739474047414742474347444745474647474748474947504751475247534754475547564757475847594760476147624763476447654766476747684769477047714772477347744775477647774778477947804781478247834784478547864787478847894790479147924793479447954796479747984799480048014802480348044805480648074808480948104811481248134814481548164817481848194820482148224823482448254826482748284829483048314832483348344835483648374838483948404841484248434844484548464847484848494850485148524853485448554856485748584859486048614862486348644865486648674868486948704871487248734874487548764877487848794880488148824883488448854886488748884889489048914892489348944895489648974898489949004901490249034904490549064907490849094910491149124913491449154916491749184919492049214922492349244925492649274928492949304931493249334934493549364937493849394940494149424943494449454946494749484949495049514952495349544955495649574958495949604961496249634964496549664967496849694970497149724973497449754976497749784979498049814982498349844985498649874988498949904991499249934994499549964997499849995000500150025003500450055006500750085009501050115012501350145015501650175018501950205021502250235024502550265027502850295030503150325033503450355036503750385039504050415042504350445045504650475048504950505051505250535054505550565057505850595060506150625063506450655066506750685069507050715072507350745075507650775078507950805081508250835084508550865087508850895090509150925093509450955096509750985099510051015102510351045105510651075108510951105111511251135114511551165117511851195120512151225123512451255126512751285129513051315132513351345135513651375138513951405141514251435144514551465147514851495150515151525153515451555156515751585159516051615162516351645165516651675168516951705171517251735174517551765177517851795180518151825183518451855186518751885189519051915192519351945195519651975198519952005201520252035204520552065207520852095210521152125213521452155216521752185219522052215222522352245225522652275228522952305231523252335234523552365237523852395240524152425243524452455246524752485249525052515252525352545255525652575258525952605261526252635264526552665267526852695270527152725273527452755276527752785279528052815282528352845285528652875288528952905291529252935294529552965297529852995300530153025303530453055306530753085309531053115312531353145315531653175318531953205321532253235324532553265327532853295330533153325333533453355336533753385339534053415342534353445345534653475348534953505351535253535354535553565357535853595360536153625363536453655366536753685369537053715372537353745375537653775378537953805381538253835384538553865387538853895390539153925393539453955396539753985399540054015402540354045405540654075408540954105411541254135414541554165417541854195420542154225423542454255426542754285429543054315432543354345435543654375438543954405441544254435444544554465447544854495450545154525453545454555456545754585459546054615462546354645465546654675468546954705471547254735474547554765477547854795480548154825483548454855486548754885489549054915492549354945495549654975498549955005501550255035504550555065507550855095510551155125513551455155516551755185519552055215522552355245525552655275528552955305531553255335534553555365537553855395540554155425543554455455546554755485549555055515552555355545555555655575558555955605561556255635564556555665567556855695570557155725573557455755576557755785579558055815582558355845585558655875588558955905591559255935594559555965597559855995600560156025603560456055606560756085609561056115612561356145615561656175618561956205621562256235624562556265627562856295630563156325633563456355636563756385639564056415642564356445645564656475648564956505651565256535654565556565657565856595660566156625663566456655666566756685669567056715672567356745675567656775678567956805681568256835684568556865687568856895690569156925693569456955696569756985699570057015702570357045705570657075708570957105711571257135714571557165717571857195720572157225723572457255726572757285729573057315732573357345735573657375738573957405741574257435744574557465747574857495750575157525753575457555756575757585759576057615762576357645765576657675768576957705771577257735774577557765777577857795780578157825783578457855786578757885789579057915792579357945795579657975798579958005801580258035804580558065807580858095810581158125813581458155816581758185819582058215822582358245825582658275828582958305831583258335834583558365837583858395840584158425843584458455846584758485849585058515852585358545855585658575858585958605861586258635864586558665867586858695870587158725873587458755876587758785879588058815882588358845885588658875888588958905891589258935894589558965897589858995900590159025903590459055906590759085909591059115912591359145915591659175918591959205921592259235924592559265927592859295930593159325933593459355936593759385939594059415942594359445945594659475948594959505951595259535954595559565957595859595960596159625963596459655966596759685969597059715972597359745975597659775978597959805981598259835984598559865987598859895990599159925993599459955996599759985999600060016002600360046005600660076008600960106011601260136014601560166017601860196020602160226023602460256026602760286029603060316032603360346035603660376038603960406041604260436044604560466047604860496050605160526053605460556056605760586059606060616062606360646065606660676068606960706071607260736074607560766077607860796080608160826083608460856086608760886089609060916092609360946095609660976098609961006101610261036104610561066107610861096110611161126113611461156116611761186119612061216122612361246125612661276128612961306131613261336134613561366137613861396140614161426143614461456146614761486149615061516152615361546155615661576158615961606161616261636164616561666167616861696170617161726173617461756176617761786179618061816182618361846185618661876188618961906191619261936194619561966197619861996200620162026203620462056206620762086209621062116212621362146215621662176218621962206221622262236224622562266227622862296230623162326233623462356236623762386239624062416242624362446245624662476248624962506251625262536254625562566257625862596260626162626263626462656266626762686269627062716272627362746275627662776278627962806281628262836284628562866287 |
-
- var bootstrap = (function (exports,$) {
- 'use strict';
-
- $ = $ && $.hasOwnProperty('default') ? $['default'] : $;
-
-
-
- var Util = function () {
-
-
- var transition = false;
- var MAX_UID = 1000000;
- var TransitionEndEvent = {
- WebkitTransition: 'webkitTransitionEnd',
- MozTransition: 'transitionend',
- OTransition: 'oTransitionEnd otransitionend',
- transition: 'transitionend'
-
- };
-
- function toType(obj) {
- return {}.toString.call(obj).match(/\s([a-zA-Z]+)/)[1].toLowerCase();
- }
-
- function getSpecialTransitionEndEvent() {
- return {
- bindType: transition.end,
- delegateType: transition.end,
- handle: function handle(event) {
- if ($(event.target).is(this)) {
- return event.handleObj.handler.apply(this, arguments);
- }
-
- return undefined;
- }
- };
- }
-
- function transitionEndTest() {
- if (window.QUnit) {
- return false;
- }
-
- var el = document.createElement('bootstrap');
-
- for (var name in TransitionEndEvent) {
- if (typeof el.style[name] !== 'undefined') {
- return {
- end: TransitionEndEvent[name]
- };
- }
- }
-
- return false;
- }
-
- function transitionEndEmulator(duration) {
- var _this = this;
-
- var called = false;
- $(this).one(Util.TRANSITION_END, function () {
- called = true;
- });
- setTimeout(function () {
- if (!called) {
- Util.triggerTransitionEnd(_this);
- }
- }, duration);
- return this;
- }
-
- function setTransitionEndSupport() {
- transition = transitionEndTest();
- $.fn.emulateTransitionEnd = transitionEndEmulator;
-
- if (Util.supportsTransitionEnd()) {
- $.event.special[Util.TRANSITION_END] = getSpecialTransitionEndEvent();
- }
- }
-
-
-
-
- var Util = {
- TRANSITION_END: 'bsTransitionEnd',
- getUID: function getUID(prefix) {
- do {
-
- prefix += ~~(Math.random() * MAX_UID);
- } while (document.getElementById(prefix));
-
- return prefix;
- },
- getSelectorFromElement: function getSelectorFromElement(element) {
- var selector = element.getAttribute('data-target');
-
- if (!selector || selector === '#') {
- selector = element.getAttribute('href') || '';
- }
-
- try {
- var $selector = $(document).find(selector);
- return $selector.length > 0 ? selector : null;
- } catch (error) {
- return null;
- }
- },
- reflow: function reflow(element) {
- return element.offsetHeight;
- },
- triggerTransitionEnd: function triggerTransitionEnd(element) {
- $(element).trigger(transition.end);
- },
- supportsTransitionEnd: function supportsTransitionEnd() {
- return Boolean(transition);
- },
- isElement: function isElement(obj) {
- return (obj[0] || obj).nodeType;
- },
- typeCheckConfig: function typeCheckConfig(componentName, config, configTypes) {
- for (var property in configTypes) {
- if (Object.prototype.hasOwnProperty.call(configTypes, property)) {
- var expectedTypes = configTypes[property];
- var value = config[property];
- var valueType = value && Util.isElement(value) ? 'element' : toType(value);
-
- if (!new RegExp(expectedTypes).test(valueType)) {
- throw new Error(componentName.toUpperCase() + ": " + ("Option \"" + property + "\" provided type \"" + valueType + "\" ") + ("but expected type \"" + expectedTypes + "\"."));
- }
- }
- }
- }
- };
- setTransitionEndSupport();
- return Util;
- }($);
-
- function _defineProperties(target, props) {
- for (var i = 0; i < props.length; i++) {
- var descriptor = props[i];
- descriptor.enumerable = descriptor.enumerable || false;
- descriptor.configurable = true;
- if ("value" in descriptor) descriptor.writable = true;
- Object.defineProperty(target, descriptor.key, descriptor);
- }
- }
-
- function _createClass(Constructor, protoProps, staticProps) {
- if (protoProps) _defineProperties(Constructor.prototype, protoProps);
- if (staticProps) _defineProperties(Constructor, staticProps);
- return Constructor;
- }
-
- var createClass = _createClass;
-
- function _inheritsLoose(subClass, superClass) {
- subClass.prototype = Object.create(superClass.prototype);
- subClass.prototype.constructor = subClass;
- subClass.__proto__ = superClass;
- }
-
- var inheritsLoose = _inheritsLoose;
-
-
-
- var Alert = function () {
-
-
- var NAME = 'alert';
- var VERSION = '4.0.0-beta.2';
- var DATA_KEY = 'bs.alert';
- var EVENT_KEY = "." + DATA_KEY;
- var DATA_API_KEY = '.data-api';
- var JQUERY_NO_CONFLICT = $.fn[NAME];
- var TRANSITION_DURATION = 150;
- var Selector = {
- DISMISS: '[data-dismiss="alert"]'
- };
- var Event = {
- CLOSE: "close" + EVENT_KEY,
- CLOSED: "closed" + EVENT_KEY,
- CLICK_DATA_API: "click" + EVENT_KEY + DATA_API_KEY
- };
- var ClassName = {
- ALERT: 'alert',
- FADE: 'fade',
- SHOW: 'show'
-
-
-
- };
-
- var Alert =
-
- function () {
- function Alert(element) {
- this._element = element;
- }
-
-
- var _proto = Alert.prototype;
-
-
- _proto.close = function close(element) {
- element = element || this._element;
-
- var rootElement = this._getRootElement(element);
-
- var customEvent = this._triggerCloseEvent(rootElement);
-
- if (customEvent.isDefaultPrevented()) {
- return;
- }
-
- this._removeElement(rootElement);
- };
-
- _proto.dispose = function dispose() {
- $.removeData(this._element, DATA_KEY);
- this._element = null;
- };
-
-
- _proto._getRootElement = function _getRootElement(element) {
- var selector = Util.getSelectorFromElement(element);
- var parent = false;
-
- if (selector) {
- parent = $(selector)[0];
- }
-
- if (!parent) {
- parent = $(element).closest("." + ClassName.ALERT)[0];
- }
-
- return parent;
- };
-
- _proto._triggerCloseEvent = function _triggerCloseEvent(element) {
- var closeEvent = $.Event(Event.CLOSE);
- $(element).trigger(closeEvent);
- return closeEvent;
- };
-
- _proto._removeElement = function _removeElement(element) {
- var _this = this;
-
- $(element).removeClass(ClassName.SHOW);
-
- if (!Util.supportsTransitionEnd() || !$(element).hasClass(ClassName.FADE)) {
- this._destroyElement(element);
-
- return;
- }
-
- $(element).one(Util.TRANSITION_END, function (event) {
- return _this._destroyElement(element, event);
- }).emulateTransitionEnd(TRANSITION_DURATION);
- };
-
- _proto._destroyElement = function _destroyElement(element) {
- $(element).detach().trigger(Event.CLOSED).remove();
- };
-
-
- Alert._jQueryInterface = function _jQueryInterface(config) {
- return this.each(function () {
- var $element = $(this);
- var data = $element.data(DATA_KEY);
-
- if (!data) {
- data = new Alert(this);
- $element.data(DATA_KEY, data);
- }
-
- if (config === 'close') {
- data[config](this);
- }
- });
- };
-
- Alert._handleDismiss = function _handleDismiss(alertInstance) {
- return function (event) {
- if (event) {
- event.preventDefault();
- }
-
- alertInstance.close(this);
- };
- };
-
- createClass(Alert, null, [{
- key: "VERSION",
- get: function get() {
- return VERSION;
- }
- }]);
- return Alert;
- }();
-
-
-
-
- $(document).on(Event.CLICK_DATA_API, Selector.DISMISS, Alert._handleDismiss(new Alert()));
-
-
-
- $.fn[NAME] = Alert._jQueryInterface;
- $.fn[NAME].Constructor = Alert;
-
- $.fn[NAME].noConflict = function () {
- $.fn[NAME] = JQUERY_NO_CONFLICT;
- return Alert._jQueryInterface;
- };
-
- return Alert;
- }($);
-
-
-
- var Button = function () {
-
-
- var NAME = 'button';
- var VERSION = '4.0.0-beta.2';
- var DATA_KEY = 'bs.button';
- var EVENT_KEY = "." + DATA_KEY;
- var DATA_API_KEY = '.data-api';
- var JQUERY_NO_CONFLICT = $.fn[NAME];
- var ClassName = {
- ACTIVE: 'active',
- BUTTON: 'btn',
- FOCUS: 'focus'
- };
- var Selector = {
- DATA_TOGGLE_CARROT: '[data-toggle^="button"]',
- DATA_TOGGLE: '[data-toggle="buttons"]',
- INPUT: 'input',
- ACTIVE: '.active',
- BUTTON: '.btn'
- };
- var Event = {
- CLICK_DATA_API: "click" + EVENT_KEY + DATA_API_KEY,
- FOCUS_BLUR_DATA_API: "focus" + EVENT_KEY + DATA_API_KEY + " " + ("blur" + EVENT_KEY + DATA_API_KEY)
-
-
-
- };
-
- var Button =
-
- function () {
- function Button(element) {
- this._element = element;
- }
-
-
- var _proto = Button.prototype;
-
-
- _proto.toggle = function toggle() {
- var triggerChangeEvent = true;
- var addAriaPressed = true;
- var rootElement = $(this._element).closest(Selector.DATA_TOGGLE)[0];
-
- if (rootElement) {
- var input = $(this._element).find(Selector.INPUT)[0];
-
- if (input) {
- if (input.type === 'radio') {
- if (input.checked && $(this._element).hasClass(ClassName.ACTIVE)) {
- triggerChangeEvent = false;
- } else {
- var activeElement = $(rootElement).find(Selector.ACTIVE)[0];
-
- if (activeElement) {
- $(activeElement).removeClass(ClassName.ACTIVE);
- }
- }
- }
-
- if (triggerChangeEvent) {
- if (input.hasAttribute('disabled') || rootElement.hasAttribute('disabled') || input.classList.contains('disabled') || rootElement.classList.contains('disabled')) {
- return;
- }
-
- input.checked = !$(this._element).hasClass(ClassName.ACTIVE);
- $(input).trigger('change');
- }
-
- input.focus();
- addAriaPressed = false;
- }
- }
-
- if (addAriaPressed) {
- this._element.setAttribute('aria-pressed', !$(this._element).hasClass(ClassName.ACTIVE));
- }
-
- if (triggerChangeEvent) {
- $(this._element).toggleClass(ClassName.ACTIVE);
- }
- };
-
- _proto.dispose = function dispose() {
- $.removeData(this._element, DATA_KEY);
- this._element = null;
- };
-
-
- Button._jQueryInterface = function _jQueryInterface(config) {
- return this.each(function () {
- var data = $(this).data(DATA_KEY);
-
- if (!data) {
- data = new Button(this);
- $(this).data(DATA_KEY, data);
- }
-
- if (config === 'toggle') {
- data[config]();
- }
- });
- };
-
- createClass(Button, null, [{
- key: "VERSION",
- get: function get() {
- return VERSION;
- }
- }]);
- return Button;
- }();
-
-
-
-
- $(document).on(Event.CLICK_DATA_API, Selector.DATA_TOGGLE_CARROT, function (event) {
- event.preventDefault();
- var button = event.target;
-
- if (!$(button).hasClass(ClassName.BUTTON)) {
- button = $(button).closest(Selector.BUTTON);
- }
-
- Button._jQueryInterface.call($(button), 'toggle');
- }).on(Event.FOCUS_BLUR_DATA_API, Selector.DATA_TOGGLE_CARROT, function (event) {
- var button = $(event.target).closest(Selector.BUTTON)[0];
- $(button).toggleClass(ClassName.FOCUS, /^focus(in)?$/.test(event.type));
- });
-
-
-
- $.fn[NAME] = Button._jQueryInterface;
- $.fn[NAME].Constructor = Button;
-
- $.fn[NAME].noConflict = function () {
- $.fn[NAME] = JQUERY_NO_CONFLICT;
- return Button._jQueryInterface;
- };
-
- return Button;
- }($);
-
-
-
- var Carousel = function () {
-
-
- var NAME = 'carousel';
- var VERSION = '4.0.0-beta.2';
- var DATA_KEY = 'bs.carousel';
- var EVENT_KEY = "." + DATA_KEY;
- var DATA_API_KEY = '.data-api';
- var JQUERY_NO_CONFLICT = $.fn[NAME];
- var TRANSITION_DURATION = 600;
- var ARROW_LEFT_KEYCODE = 37;
-
- var ARROW_RIGHT_KEYCODE = 39;
-
- var TOUCHEVENT_COMPAT_WAIT = 500;
-
- var Default = {
- interval: 5000,
- keyboard: true,
- slide: false,
- pause: 'hover',
- wrap: true
- };
- var DefaultType = {
- interval: '(number|boolean)',
- keyboard: 'boolean',
- slide: '(boolean|string)',
- pause: '(string|boolean)',
- wrap: 'boolean'
- };
- var Direction = {
- NEXT: 'next',
- PREV: 'prev',
- LEFT: 'left',
- RIGHT: 'right'
- };
- var Event = {
- SLIDE: "slide" + EVENT_KEY,
- SLID: "slid" + EVENT_KEY,
- KEYDOWN: "keydown" + EVENT_KEY,
- MOUSEENTER: "mouseenter" + EVENT_KEY,
- MOUSELEAVE: "mouseleave" + EVENT_KEY,
- TOUCHEND: "touchend" + EVENT_KEY,
- LOAD_DATA_API: "load" + EVENT_KEY + DATA_API_KEY,
- CLICK_DATA_API: "click" + EVENT_KEY + DATA_API_KEY
- };
- var ClassName = {
- CAROUSEL: 'carousel',
- ACTIVE: 'active',
- SLIDE: 'slide',
- RIGHT: 'carousel-item-right',
- LEFT: 'carousel-item-left',
- NEXT: 'carousel-item-next',
- PREV: 'carousel-item-prev',
- ITEM: 'carousel-item'
- };
- var Selector = {
- ACTIVE: '.active',
- ACTIVE_ITEM: '.active.carousel-item',
- ITEM: '.carousel-item',
- NEXT_PREV: '.carousel-item-next, .carousel-item-prev',
- INDICATORS: '.carousel-indicators',
- DATA_SLIDE: '[data-slide], [data-slide-to]',
- DATA_RIDE: '[data-ride="carousel"]'
-
-
-
- };
-
- var Carousel =
-
- function () {
- function Carousel(element, config) {
- this._items = null;
- this._interval = null;
- this._activeElement = null;
- this._isPaused = false;
- this._isSliding = false;
- this.touchTimeout = null;
- this._config = this._getConfig(config);
- this._element = $(element)[0];
- this._indicatorsElement = $(this._element).find(Selector.INDICATORS)[0];
-
- this._addEventListeners();
- }
-
-
- var _proto = Carousel.prototype;
-
-
- _proto.next = function next() {
- if (!this._isSliding) {
- this._slide(Direction.NEXT);
- }
- };
-
- _proto.nextWhenVisible = function nextWhenVisible() {
-
-
- if (!document.hidden && $(this._element).is(':visible') && $(this._element).css('visibility') !== 'hidden') {
- this.next();
- }
- };
-
- _proto.prev = function prev() {
- if (!this._isSliding) {
- this._slide(Direction.PREV);
- }
- };
-
- _proto.pause = function pause(event) {
- if (!event) {
- this._isPaused = true;
- }
-
- if ($(this._element).find(Selector.NEXT_PREV)[0] && Util.supportsTransitionEnd()) {
- Util.triggerTransitionEnd(this._element);
- this.cycle(true);
- }
-
- clearInterval(this._interval);
- this._interval = null;
- };
-
- _proto.cycle = function cycle(event) {
- if (!event) {
- this._isPaused = false;
- }
-
- if (this._interval) {
- clearInterval(this._interval);
- this._interval = null;
- }
-
- if (this._config.interval && !this._isPaused) {
- this._interval = setInterval((document.visibilityState ? this.nextWhenVisible : this.next).bind(this), this._config.interval);
- }
- };
-
- _proto.to = function to(index) {
- var _this = this;
-
- this._activeElement = $(this._element).find(Selector.ACTIVE_ITEM)[0];
-
- var activeIndex = this._getItemIndex(this._activeElement);
-
- if (index > this._items.length - 1 || index < 0) {
- return;
- }
-
- if (this._isSliding) {
- $(this._element).one(Event.SLID, function () {
- return _this.to(index);
- });
- return;
- }
-
- if (activeIndex === index) {
- this.pause();
- this.cycle();
- return;
- }
-
- var direction = index > activeIndex ? Direction.NEXT : Direction.PREV;
-
- this._slide(direction, this._items[index]);
- };
-
- _proto.dispose = function dispose() {
- $(this._element).off(EVENT_KEY);
- $.removeData(this._element, DATA_KEY);
- this._items = null;
- this._config = null;
- this._element = null;
- this._interval = null;
- this._isPaused = null;
- this._isSliding = null;
- this._activeElement = null;
- this._indicatorsElement = null;
- };
-
-
- _proto._getConfig = function _getConfig(config) {
- config = $.extend({}, Default, config);
- Util.typeCheckConfig(NAME, config, DefaultType);
- return config;
- };
-
- _proto._addEventListeners = function _addEventListeners() {
- var _this2 = this;
-
- if (this._config.keyboard) {
- $(this._element).on(Event.KEYDOWN, function (event) {
- return _this2._keydown(event);
- });
- }
-
- if (this._config.pause === 'hover') {
- $(this._element).on(Event.MOUSEENTER, function (event) {
- return _this2.pause(event);
- }).on(Event.MOUSELEAVE, function (event) {
- return _this2.cycle(event);
- });
-
- if ('ontouchstart' in document.documentElement) {
-
-
-
-
-
-
-
- $(this._element).on(Event.TOUCHEND, function () {
- _this2.pause();
-
- if (_this2.touchTimeout) {
- clearTimeout(_this2.touchTimeout);
- }
-
- _this2.touchTimeout = setTimeout(function (event) {
- return _this2.cycle(event);
- }, TOUCHEVENT_COMPAT_WAIT + _this2._config.interval);
- });
- }
- }
- };
-
- _proto._keydown = function _keydown(event) {
- if (/input|textarea/i.test(event.target.tagName)) {
- return;
- }
-
- switch (event.which) {
- case ARROW_LEFT_KEYCODE:
- event.preventDefault();
- this.prev();
- break;
-
- case ARROW_RIGHT_KEYCODE:
- event.preventDefault();
- this.next();
- break;
-
- default:
- return;
- }
- };
-
- _proto._getItemIndex = function _getItemIndex(element) {
- this._items = $.makeArray($(element).parent().find(Selector.ITEM));
- return this._items.indexOf(element);
- };
-
- _proto._getItemByDirection = function _getItemByDirection(direction, activeElement) {
- var isNextDirection = direction === Direction.NEXT;
- var isPrevDirection = direction === Direction.PREV;
-
- var activeIndex = this._getItemIndex(activeElement);
-
- var lastItemIndex = this._items.length - 1;
- var isGoingToWrap = isPrevDirection && activeIndex === 0 || isNextDirection && activeIndex === lastItemIndex;
-
- if (isGoingToWrap && !this._config.wrap) {
- return activeElement;
- }
-
- var delta = direction === Direction.PREV ? -1 : 1;
- var itemIndex = (activeIndex + delta) % this._items.length;
- return itemIndex === -1 ? this._items[this._items.length - 1] : this._items[itemIndex];
- };
-
- _proto._triggerSlideEvent = function _triggerSlideEvent(relatedTarget, eventDirectionName) {
- var targetIndex = this._getItemIndex(relatedTarget);
-
- var fromIndex = this._getItemIndex($(this._element).find(Selector.ACTIVE_ITEM)[0]);
-
- var slideEvent = $.Event(Event.SLIDE, {
- relatedTarget: relatedTarget,
- direction: eventDirectionName,
- from: fromIndex,
- to: targetIndex
- });
- $(this._element).trigger(slideEvent);
- return slideEvent;
- };
-
- _proto._setActiveIndicatorElement = function _setActiveIndicatorElement(element) {
- if (this._indicatorsElement) {
- $(this._indicatorsElement).find(Selector.ACTIVE).removeClass(ClassName.ACTIVE);
-
- var nextIndicator = this._indicatorsElement.children[this._getItemIndex(element)];
-
- if (nextIndicator) {
- $(nextIndicator).addClass(ClassName.ACTIVE);
- }
- }
- };
-
- _proto._slide = function _slide(direction, element) {
- var _this3 = this;
-
- var activeElement = $(this._element).find(Selector.ACTIVE_ITEM)[0];
-
- var activeElementIndex = this._getItemIndex(activeElement);
-
- var nextElement = element || activeElement && this._getItemByDirection(direction, activeElement);
-
- var nextElementIndex = this._getItemIndex(nextElement);
-
- var isCycling = Boolean(this._interval);
- var directionalClassName;
- var orderClassName;
- var eventDirectionName;
-
- if (direction === Direction.NEXT) {
- directionalClassName = ClassName.LEFT;
- orderClassName = ClassName.NEXT;
- eventDirectionName = Direction.LEFT;
- } else {
- directionalClassName = ClassName.RIGHT;
- orderClassName = ClassName.PREV;
- eventDirectionName = Direction.RIGHT;
- }
-
- if (nextElement && $(nextElement).hasClass(ClassName.ACTIVE)) {
- this._isSliding = false;
- return;
- }
-
- var slideEvent = this._triggerSlideEvent(nextElement, eventDirectionName);
-
- if (slideEvent.isDefaultPrevented()) {
- return;
- }
-
- if (!activeElement || !nextElement) {
-
- return;
- }
-
- this._isSliding = true;
-
- if (isCycling) {
- this.pause();
- }
-
- this._setActiveIndicatorElement(nextElement);
-
- var slidEvent = $.Event(Event.SLID, {
- relatedTarget: nextElement,
- direction: eventDirectionName,
- from: activeElementIndex,
- to: nextElementIndex
- });
-
- if (Util.supportsTransitionEnd() && $(this._element).hasClass(ClassName.SLIDE)) {
- $(nextElement).addClass(orderClassName);
- Util.reflow(nextElement);
- $(activeElement).addClass(directionalClassName);
- $(nextElement).addClass(directionalClassName);
- $(activeElement).one(Util.TRANSITION_END, function () {
- $(nextElement).removeClass(directionalClassName + " " + orderClassName).addClass(ClassName.ACTIVE);
- $(activeElement).removeClass(ClassName.ACTIVE + " " + orderClassName + " " + directionalClassName);
- _this3._isSliding = false;
- setTimeout(function () {
- return $(_this3._element).trigger(slidEvent);
- }, 0);
- }).emulateTransitionEnd(TRANSITION_DURATION);
- } else {
- $(activeElement).removeClass(ClassName.ACTIVE);
- $(nextElement).addClass(ClassName.ACTIVE);
- this._isSliding = false;
- $(this._element).trigger(slidEvent);
- }
-
- if (isCycling) {
- this.cycle();
- }
- };
-
-
- Carousel._jQueryInterface = function _jQueryInterface(config) {
- return this.each(function () {
- var data = $(this).data(DATA_KEY);
-
- var _config = $.extend({}, Default, $(this).data());
-
- if (typeof config === 'object') {
- $.extend(_config, config);
- }
-
- var action = typeof config === 'string' ? config : _config.slide;
-
- if (!data) {
- data = new Carousel(this, _config);
- $(this).data(DATA_KEY, data);
- }
-
- if (typeof config === 'number') {
- data.to(config);
- } else if (typeof action === 'string') {
- if (typeof data[action] === 'undefined') {
- throw new Error("No method named \"" + action + "\"");
- }
-
- data[action]();
- } else if (_config.interval) {
- data.pause();
- data.cycle();
- }
- });
- };
-
- Carousel._dataApiClickHandler = function _dataApiClickHandler(event) {
- var selector = Util.getSelectorFromElement(this);
-
- if (!selector) {
- return;
- }
-
- var target = $(selector)[0];
-
- if (!target || !$(target).hasClass(ClassName.CAROUSEL)) {
- return;
- }
-
- var config = $.extend({}, $(target).data(), $(this).data());
- var slideIndex = this.getAttribute('data-slide-to');
-
- if (slideIndex) {
- config.interval = false;
- }
-
- Carousel._jQueryInterface.call($(target), config);
-
- if (slideIndex) {
- $(target).data(DATA_KEY).to(slideIndex);
- }
-
- event.preventDefault();
- };
-
- createClass(Carousel, null, [{
- key: "VERSION",
- get: function get() {
- return VERSION;
- }
- }, {
- key: "Default",
- get: function get() {
- return Default;
- }
- }]);
- return Carousel;
- }();
-
-
-
-
- $(document).on(Event.CLICK_DATA_API, Selector.DATA_SLIDE, Carousel._dataApiClickHandler);
- $(window).on(Event.LOAD_DATA_API, function () {
- $(Selector.DATA_RIDE).each(function () {
- var $carousel = $(this);
-
- Carousel._jQueryInterface.call($carousel, $carousel.data());
- });
- });
-
-
-
- $.fn[NAME] = Carousel._jQueryInterface;
- $.fn[NAME].Constructor = Carousel;
-
- $.fn[NAME].noConflict = function () {
- $.fn[NAME] = JQUERY_NO_CONFLICT;
- return Carousel._jQueryInterface;
- };
-
- return Carousel;
- }($);
-
-
-
- var Collapse = function () {
-
-
- var NAME = 'collapse';
- var VERSION = '4.0.0-beta.2';
- var DATA_KEY = 'bs.collapse';
- var EVENT_KEY = "." + DATA_KEY;
- var DATA_API_KEY = '.data-api';
- var JQUERY_NO_CONFLICT = $.fn[NAME];
- var TRANSITION_DURATION = 600;
- var Default = {
- toggle: true,
- parent: ''
- };
- var DefaultType = {
- toggle: 'boolean',
- parent: '(string|element)'
- };
- var Event = {
- SHOW: "show" + EVENT_KEY,
- SHOWN: "shown" + EVENT_KEY,
- HIDE: "hide" + EVENT_KEY,
- HIDDEN: "hidden" + EVENT_KEY,
- CLICK_DATA_API: "click" + EVENT_KEY + DATA_API_KEY
- };
- var ClassName = {
- SHOW: 'show',
- COLLAPSE: 'collapse',
- COLLAPSING: 'collapsing',
- COLLAPSED: 'collapsed'
- };
- var Dimension = {
- WIDTH: 'width',
- HEIGHT: 'height'
- };
- var Selector = {
- ACTIVES: '.show, .collapsing',
- DATA_TOGGLE: '[data-toggle="collapse"]'
-
-
-
- };
-
- var Collapse =
-
- function () {
- function Collapse(element, config) {
- this._isTransitioning = false;
- this._element = element;
- this._config = this._getConfig(config);
- this._triggerArray = $.makeArray($("[data-toggle=\"collapse\"][href=\"#" + element.id + "\"]," + ("[data-toggle=\"collapse\"][data-target=\"#" + element.id + "\"]")));
- var tabToggles = $(Selector.DATA_TOGGLE);
-
- for (var i = 0; i < tabToggles.length; i++) {
- var elem = tabToggles[i];
- var selector = Util.getSelectorFromElement(elem);
-
- if (selector !== null && $(selector).filter(element).length > 0) {
- this._triggerArray.push(elem);
- }
- }
-
- this._parent = this._config.parent ? this._getParent() : null;
-
- if (!this._config.parent) {
- this._addAriaAndCollapsedClass(this._element, this._triggerArray);
- }
-
- if (this._config.toggle) {
- this.toggle();
- }
- }
-
-
- var _proto = Collapse.prototype;
-
-
- _proto.toggle = function toggle() {
- if ($(this._element).hasClass(ClassName.SHOW)) {
- this.hide();
- } else {
- this.show();
- }
- };
-
- _proto.show = function show() {
- var _this = this;
-
- if (this._isTransitioning || $(this._element).hasClass(ClassName.SHOW)) {
- return;
- }
-
- var actives;
- var activesData;
-
- if (this._parent) {
- actives = $.makeArray($(this._parent).children().children(Selector.ACTIVES));
-
- if (!actives.length) {
- actives = null;
- }
- }
-
- if (actives) {
- activesData = $(actives).data(DATA_KEY);
-
- if (activesData && activesData._isTransitioning) {
- return;
- }
- }
-
- var startEvent = $.Event(Event.SHOW);
- $(this._element).trigger(startEvent);
-
- if (startEvent.isDefaultPrevented()) {
- return;
- }
-
- if (actives) {
- Collapse._jQueryInterface.call($(actives), 'hide');
-
- if (!activesData) {
- $(actives).data(DATA_KEY, null);
- }
- }
-
- var dimension = this._getDimension();
-
- $(this._element).removeClass(ClassName.COLLAPSE).addClass(ClassName.COLLAPSING);
- this._element.style[dimension] = 0;
-
- if (this._triggerArray.length) {
- $(this._triggerArray).removeClass(ClassName.COLLAPSED).attr('aria-expanded', true);
- }
-
- this.setTransitioning(true);
-
- var complete = function complete() {
- $(_this._element).removeClass(ClassName.COLLAPSING).addClass(ClassName.COLLAPSE).addClass(ClassName.SHOW);
- _this._element.style[dimension] = '';
-
- _this.setTransitioning(false);
-
- $(_this._element).trigger(Event.SHOWN);
- };
-
- if (!Util.supportsTransitionEnd()) {
- complete();
- return;
- }
-
- var capitalizedDimension = dimension[0].toUpperCase() + dimension.slice(1);
- var scrollSize = "scroll" + capitalizedDimension;
- $(this._element).one(Util.TRANSITION_END, complete).emulateTransitionEnd(TRANSITION_DURATION);
- this._element.style[dimension] = this._element[scrollSize] + "px";
- };
-
- _proto.hide = function hide() {
- var _this2 = this;
-
- if (this._isTransitioning || !$(this._element).hasClass(ClassName.SHOW)) {
- return;
- }
-
- var startEvent = $.Event(Event.HIDE);
- $(this._element).trigger(startEvent);
-
- if (startEvent.isDefaultPrevented()) {
- return;
- }
-
- var dimension = this._getDimension();
-
- this._element.style[dimension] = this._element.getBoundingClientRect()[dimension] + "px";
- Util.reflow(this._element);
- $(this._element).addClass(ClassName.COLLAPSING).removeClass(ClassName.COLLAPSE).removeClass(ClassName.SHOW);
-
- if (this._triggerArray.length) {
- for (var i = 0; i < this._triggerArray.length; i++) {
- var trigger = this._triggerArray[i];
- var selector = Util.getSelectorFromElement(trigger);
-
- if (selector !== null) {
- var $elem = $(selector);
-
- if (!$elem.hasClass(ClassName.SHOW)) {
- $(trigger).addClass(ClassName.COLLAPSED).attr('aria-expanded', false);
- }
- }
- }
- }
-
- this.setTransitioning(true);
-
- var complete = function complete() {
- _this2.setTransitioning(false);
-
- $(_this2._element).removeClass(ClassName.COLLAPSING).addClass(ClassName.COLLAPSE).trigger(Event.HIDDEN);
- };
-
- this._element.style[dimension] = '';
-
- if (!Util.supportsTransitionEnd()) {
- complete();
- return;
- }
-
- $(this._element).one(Util.TRANSITION_END, complete).emulateTransitionEnd(TRANSITION_DURATION);
- };
-
- _proto.setTransitioning = function setTransitioning(isTransitioning) {
- this._isTransitioning = isTransitioning;
- };
-
- _proto.dispose = function dispose() {
- $.removeData(this._element, DATA_KEY);
- this._config = null;
- this._parent = null;
- this._element = null;
- this._triggerArray = null;
- this._isTransitioning = null;
- };
-
-
- _proto._getConfig = function _getConfig(config) {
- config = $.extend({}, Default, config);
- config.toggle = Boolean(config.toggle);
-
- Util.typeCheckConfig(NAME, config, DefaultType);
- return config;
- };
-
- _proto._getDimension = function _getDimension() {
- var hasWidth = $(this._element).hasClass(Dimension.WIDTH);
- return hasWidth ? Dimension.WIDTH : Dimension.HEIGHT;
- };
-
- _proto._getParent = function _getParent() {
- var _this3 = this;
-
- var parent = null;
-
- if (Util.isElement(this._config.parent)) {
- parent = this._config.parent;
-
- if (typeof this._config.parent.jquery !== 'undefined') {
- parent = this._config.parent[0];
- }
- } else {
- parent = $(this._config.parent)[0];
- }
-
- var selector = "[data-toggle=\"collapse\"][data-parent=\"" + this._config.parent + "\"]";
- $(parent).find(selector).each(function (i, element) {
- _this3._addAriaAndCollapsedClass(Collapse._getTargetFromElement(element), [element]);
- });
- return parent;
- };
-
- _proto._addAriaAndCollapsedClass = function _addAriaAndCollapsedClass(element, triggerArray) {
- if (element) {
- var isOpen = $(element).hasClass(ClassName.SHOW);
-
- if (triggerArray.length) {
- $(triggerArray).toggleClass(ClassName.COLLAPSED, !isOpen).attr('aria-expanded', isOpen);
- }
- }
- };
-
-
- Collapse._getTargetFromElement = function _getTargetFromElement(element) {
- var selector = Util.getSelectorFromElement(element);
- return selector ? $(selector)[0] : null;
- };
-
- Collapse._jQueryInterface = function _jQueryInterface(config) {
- return this.each(function () {
- var $this = $(this);
- var data = $this.data(DATA_KEY);
-
- var _config = $.extend({}, Default, $this.data(), typeof config === 'object' && config);
-
- if (!data && _config.toggle && /show|hide/.test(config)) {
- _config.toggle = false;
- }
-
- if (!data) {
- data = new Collapse(this, _config);
- $this.data(DATA_KEY, data);
- }
-
- if (typeof config === 'string') {
- if (typeof data[config] === 'undefined') {
- throw new Error("No method named \"" + config + "\"");
- }
-
- data[config]();
- }
- });
- };
-
- createClass(Collapse, null, [{
- key: "VERSION",
- get: function get() {
- return VERSION;
- }
- }, {
- key: "Default",
- get: function get() {
- return Default;
- }
- }]);
- return Collapse;
- }();
-
-
-
-
- $(document).on(Event.CLICK_DATA_API, Selector.DATA_TOGGLE, function (event) {
-
- if (event.currentTarget.tagName === 'A') {
- event.preventDefault();
- }
-
- var $trigger = $(this);
- var selector = Util.getSelectorFromElement(this);
- $(selector).each(function () {
- var $target = $(this);
- var data = $target.data(DATA_KEY);
- var config = data ? 'toggle' : $trigger.data();
-
- Collapse._jQueryInterface.call($target, config);
- });
- });
-
-
-
- $.fn[NAME] = Collapse._jQueryInterface;
- $.fn[NAME].Constructor = Collapse;
-
- $.fn[NAME].noConflict = function () {
- $.fn[NAME] = JQUERY_NO_CONFLICT;
- return Collapse._jQueryInterface;
- };
-
- return Collapse;
- }($);
-
-
- var nativeHints = ['native code', '[object MutationObserverConstructor]'];
-
-
- var isNative = (function (fn) {
- return nativeHints.some(function (hint) {
- return (fn || '').toString().indexOf(hint) > -1;
- });
- });
-
- var isBrowser = typeof window !== 'undefined';
- var longerTimeoutBrowsers = ['Edge', 'Trident', 'Firefox'];
- var timeoutDuration = 0;
- for (var i = 0; i < longerTimeoutBrowsers.length; i += 1) {
- if (isBrowser && navigator.userAgent.indexOf(longerTimeoutBrowsers[i]) >= 0) {
- timeoutDuration = 1;
- break;
- }
- }
-
- function microtaskDebounce(fn) {
- var scheduled = false;
- var i = 0;
- var elem = document.createElement('span');
-
-
-
-
- var observer = new MutationObserver(function () {
- fn();
- scheduled = false;
- });
-
- observer.observe(elem, { attributes: true });
-
- return function () {
- if (!scheduled) {
- scheduled = true;
- elem.setAttribute('x-index', i);
- i = i + 1;
- }
- };
- }
-
- function taskDebounce(fn) {
- var scheduled = false;
- return function () {
- if (!scheduled) {
- scheduled = true;
- setTimeout(function () {
- scheduled = false;
- fn();
- }, timeoutDuration);
- }
- };
- }
-
-
-
-
-
- var supportsNativeMutationObserver = isBrowser && isNative(window.MutationObserver);
-
-
- var debounce = supportsNativeMutationObserver ? microtaskDebounce : taskDebounce;
-
-
- function isFunction(functionToCheck) {
- var getType = {};
- return functionToCheck && getType.toString.call(functionToCheck) === '[object Function]';
- }
-
-
- function getStyleComputedProperty(element, property) {
- if (element.nodeType !== 1) {
- return [];
- }
-
- var css = window.getComputedStyle(element, null);
- return property ? css[property] : css;
- }
-
-
- function getParentNode(element) {
- if (element.nodeName === 'HTML') {
- return element;
- }
- return element.parentNode || element.host;
- }
-
-
- function getScrollParent(element) {
-
- if (!element || ['HTML', 'BODY', '#document'].indexOf(element.nodeName) !== -1) {
- return window.document.body;
- }
-
-
-
- var _getStyleComputedProp = getStyleComputedProperty(element),
- overflow = _getStyleComputedProp.overflow,
- overflowX = _getStyleComputedProp.overflowX,
- overflowY = _getStyleComputedProp.overflowY;
-
- if (/(auto|scroll)/.test(overflow + overflowY + overflowX)) {
- return element;
- }
-
- return getScrollParent(getParentNode(element));
- }
-
-
- function getOffsetParent(element) {
-
- var offsetParent = element && element.offsetParent;
- var nodeName = offsetParent && offsetParent.nodeName;
-
- if (!nodeName || nodeName === 'BODY' || nodeName === 'HTML') {
- return window.document.documentElement;
- }
-
-
-
- if (['TD', 'TABLE'].indexOf(offsetParent.nodeName) !== -1 && getStyleComputedProperty(offsetParent, 'position') === 'static') {
- return getOffsetParent(offsetParent);
- }
-
- return offsetParent;
- }
-
- function isOffsetContainer(element) {
- var nodeName = element.nodeName;
-
- if (nodeName === 'BODY') {
- return false;
- }
- return nodeName === 'HTML' || getOffsetParent(element.firstElementChild) === element;
- }
-
-
- function getRoot(node) {
- if (node.parentNode !== null) {
- return getRoot(node.parentNode);
- }
-
- return node;
- }
-
-
- function findCommonOffsetParent(element1, element2) {
-
- if (!element1 || !element1.nodeType || !element2 || !element2.nodeType) {
- return window.document.documentElement;
- }
-
-
- var order = element1.compareDocumentPosition(element2) & Node.DOCUMENT_POSITION_FOLLOWING;
- var start = order ? element1 : element2;
- var end = order ? element2 : element1;
-
-
- var range = document.createRange();
- range.setStart(start, 0);
- range.setEnd(end, 0);
- var commonAncestorContainer = range.commonAncestorContainer;
-
-
-
- if (element1 !== commonAncestorContainer && element2 !== commonAncestorContainer || start.contains(end)) {
- if (isOffsetContainer(commonAncestorContainer)) {
- return commonAncestorContainer;
- }
-
- return getOffsetParent(commonAncestorContainer);
- }
-
-
- var element1root = getRoot(element1);
- if (element1root.host) {
- return findCommonOffsetParent(element1root.host, element2);
- } else {
- return findCommonOffsetParent(element1, getRoot(element2).host);
- }
- }
-
-
- function getScroll(element) {
- var side = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'top';
-
- var upperSide = side === 'top' ? 'scrollTop' : 'scrollLeft';
- var nodeName = element.nodeName;
-
- if (nodeName === 'BODY' || nodeName === 'HTML') {
- var html = window.document.documentElement;
- var scrollingElement = window.document.scrollingElement || html;
- return scrollingElement[upperSide];
- }
-
- return element[upperSide];
- }
-
-
- function includeScroll(rect, element) {
- var subtract = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;
-
- var scrollTop = getScroll(element, 'top');
- var scrollLeft = getScroll(element, 'left');
- var modifier = subtract ? -1 : 1;
- rect.top += scrollTop * modifier;
- rect.bottom += scrollTop * modifier;
- rect.left += scrollLeft * modifier;
- rect.right += scrollLeft * modifier;
- return rect;
- }
-
-
-
- function getBordersSize(styles, axis) {
- var sideA = axis === 'x' ? 'Left' : 'Top';
- var sideB = sideA === 'Left' ? 'Right' : 'Bottom';
-
- return +styles['border' + sideA + 'Width'].split('px')[0] + +styles['border' + sideB + 'Width'].split('px')[0];
- }
-
-
- var isIE10 = undefined;
-
- var isIE10$1 = function () {
- if (isIE10 === undefined) {
- isIE10 = navigator.appVersion.indexOf('MSIE 10') !== -1;
- }
- return isIE10;
- };
-
- function getSize(axis, body, html, computedStyle) {
- return Math.max(body['offset' + axis], body['scroll' + axis], html['client' + axis], html['offset' + axis], html['scroll' + axis], isIE10$1() ? html['offset' + axis] + computedStyle['margin' + (axis === 'Height' ? 'Top' : 'Left')] + computedStyle['margin' + (axis === 'Height' ? 'Bottom' : 'Right')] : 0);
- }
-
- function getWindowSizes() {
- var body = window.document.body;
- var html = window.document.documentElement;
- var computedStyle = isIE10$1() && window.getComputedStyle(html);
-
- return {
- height: getSize('Height', body, html, computedStyle),
- width: getSize('Width', body, html, computedStyle)
- };
- }
-
- var classCallCheck = function (instance, Constructor) {
- if (!(instance instanceof Constructor)) {
- throw new TypeError("Cannot call a class as a function");
- }
- };
-
- var createClass$1 = function () {
- function defineProperties(target, props) {
- for (var i = 0; i < props.length; i++) {
- var descriptor = props[i];
- descriptor.enumerable = descriptor.enumerable || false;
- descriptor.configurable = true;
- if ("value" in descriptor) descriptor.writable = true;
- Object.defineProperty(target, descriptor.key, descriptor);
- }
- }
-
- return function (Constructor, protoProps, staticProps) {
- if (protoProps) defineProperties(Constructor.prototype, protoProps);
- if (staticProps) defineProperties(Constructor, staticProps);
- return Constructor;
- };
- }();
-
-
-
-
-
- var defineProperty = function (obj, key, value) {
- if (key in obj) {
- Object.defineProperty(obj, key, {
- value: value,
- enumerable: true,
- configurable: true,
- writable: true
- });
- } else {
- obj[key] = value;
- }
-
- return obj;
- };
-
- var _extends$1 = Object.assign || function (target) {
- for (var i = 1; i < arguments.length; i++) {
- var source = arguments[i];
-
- for (var key in source) {
- if (Object.prototype.hasOwnProperty.call(source, key)) {
- target[key] = source[key];
- }
- }
- }
-
- return target;
- };
-
-
- function getClientRect(offsets) {
- return _extends$1({}, offsets, {
- right: offsets.left + offsets.width,
- bottom: offsets.top + offsets.height
- });
- }
-
-
- function getBoundingClientRect(element) {
- var rect = {};
-
-
-
-
- if (isIE10$1()) {
- try {
- rect = element.getBoundingClientRect();
- var scrollTop = getScroll(element, 'top');
- var scrollLeft = getScroll(element, 'left');
- rect.top += scrollTop;
- rect.left += scrollLeft;
- rect.bottom += scrollTop;
- rect.right += scrollLeft;
- } catch (err) {}
- } else {
- rect = element.getBoundingClientRect();
- }
-
- var result = {
- left: rect.left,
- top: rect.top,
- width: rect.right - rect.left,
- height: rect.bottom - rect.top
- };
-
-
- var sizes = element.nodeName === 'HTML' ? getWindowSizes() : {};
- var width = sizes.width || element.clientWidth || result.right - result.left;
- var height = sizes.height || element.clientHeight || result.bottom - result.top;
-
- var horizScrollbar = element.offsetWidth - width;
- var vertScrollbar = element.offsetHeight - height;
-
-
-
- if (horizScrollbar || vertScrollbar) {
- var styles = getStyleComputedProperty(element);
- horizScrollbar -= getBordersSize(styles, 'x');
- vertScrollbar -= getBordersSize(styles, 'y');
-
- result.width -= horizScrollbar;
- result.height -= vertScrollbar;
- }
-
- return getClientRect(result);
- }
-
- function getOffsetRectRelativeToArbitraryNode(children, parent) {
- var isIE10 = isIE10$1();
- var isHTML = parent.nodeName === 'HTML';
- var childrenRect = getBoundingClientRect(children);
- var parentRect = getBoundingClientRect(parent);
- var scrollParent = getScrollParent(children);
-
- var styles = getStyleComputedProperty(parent);
- var borderTopWidth = +styles.borderTopWidth.split('px')[0];
- var borderLeftWidth = +styles.borderLeftWidth.split('px')[0];
-
- var offsets = getClientRect({
- top: childrenRect.top - parentRect.top - borderTopWidth,
- left: childrenRect.left - parentRect.left - borderLeftWidth,
- width: childrenRect.width,
- height: childrenRect.height
- });
- offsets.marginTop = 0;
- offsets.marginLeft = 0;
-
-
-
-
-
- if (!isIE10 && isHTML) {
- var marginTop = +styles.marginTop.split('px')[0];
- var marginLeft = +styles.marginLeft.split('px')[0];
-
- offsets.top -= borderTopWidth - marginTop;
- offsets.bottom -= borderTopWidth - marginTop;
- offsets.left -= borderLeftWidth - marginLeft;
- offsets.right -= borderLeftWidth - marginLeft;
-
-
- offsets.marginTop = marginTop;
- offsets.marginLeft = marginLeft;
- }
-
- if (isIE10 ? parent.contains(scrollParent) : parent === scrollParent && scrollParent.nodeName !== 'BODY') {
- offsets = includeScroll(offsets, parent);
- }
-
- return offsets;
- }
-
- function getViewportOffsetRectRelativeToArtbitraryNode(element) {
- var html = window.document.documentElement;
- var relativeOffset = getOffsetRectRelativeToArbitraryNode(element, html);
- var width = Math.max(html.clientWidth, window.innerWidth || 0);
- var height = Math.max(html.clientHeight, window.innerHeight || 0);
-
- var scrollTop = getScroll(html);
- var scrollLeft = getScroll(html, 'left');
-
- var offset = {
- top: scrollTop - relativeOffset.top + relativeOffset.marginTop,
- left: scrollLeft - relativeOffset.left + relativeOffset.marginLeft,
- width: width,
- height: height
- };
-
- return getClientRect(offset);
- }
-
-
- function isFixed(element) {
- var nodeName = element.nodeName;
- if (nodeName === 'BODY' || nodeName === 'HTML') {
- return false;
- }
- if (getStyleComputedProperty(element, 'position') === 'fixed') {
- return true;
- }
- return isFixed(getParentNode(element));
- }
-
-
- function getBoundaries(popper, reference, padding, boundariesElement) {
-
- var boundaries = { top: 0, left: 0 };
- var offsetParent = findCommonOffsetParent(popper, reference);
-
-
- if (boundariesElement === 'viewport') {
- boundaries = getViewportOffsetRectRelativeToArtbitraryNode(offsetParent);
- } else {
-
- var boundariesNode = void 0;
- if (boundariesElement === 'scrollParent') {
- boundariesNode = getScrollParent(getParentNode(popper));
- if (boundariesNode.nodeName === 'BODY') {
- boundariesNode = window.document.documentElement;
- }
- } else if (boundariesElement === 'window') {
- boundariesNode = window.document.documentElement;
- } else {
- boundariesNode = boundariesElement;
- }
-
- var offsets = getOffsetRectRelativeToArbitraryNode(boundariesNode, offsetParent);
-
-
- if (boundariesNode.nodeName === 'HTML' && !isFixed(offsetParent)) {
- var _getWindowSizes = getWindowSizes(),
- height = _getWindowSizes.height,
- width = _getWindowSizes.width;
-
- boundaries.top += offsets.top - offsets.marginTop;
- boundaries.bottom = height + offsets.top;
- boundaries.left += offsets.left - offsets.marginLeft;
- boundaries.right = width + offsets.left;
- } else {
-
- boundaries = offsets;
- }
- }
-
-
- boundaries.left += padding;
- boundaries.top += padding;
- boundaries.right -= padding;
- boundaries.bottom -= padding;
-
- return boundaries;
- }
-
- function getArea(_ref) {
- var width = _ref.width,
- height = _ref.height;
-
- return width * height;
- }
-
-
- function computeAutoPlacement(placement, refRect, popper, reference, boundariesElement) {
- var padding = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : 0;
-
- if (placement.indexOf('auto') === -1) {
- return placement;
- }
-
- var boundaries = getBoundaries(popper, reference, padding, boundariesElement);
-
- var rects = {
- top: {
- width: boundaries.width,
- height: refRect.top - boundaries.top
- },
- right: {
- width: boundaries.right - refRect.right,
- height: boundaries.height
- },
- bottom: {
- width: boundaries.width,
- height: boundaries.bottom - refRect.bottom
- },
- left: {
- width: refRect.left - boundaries.left,
- height: boundaries.height
- }
- };
-
- var sortedAreas = Object.keys(rects).map(function (key) {
- return _extends$1({
- key: key
- }, rects[key], {
- area: getArea(rects[key])
- });
- }).sort(function (a, b) {
- return b.area - a.area;
- });
-
- var filteredAreas = sortedAreas.filter(function (_ref2) {
- var width = _ref2.width,
- height = _ref2.height;
- return width >= popper.clientWidth && height >= popper.clientHeight;
- });
-
- var computedPlacement = filteredAreas.length > 0 ? filteredAreas[0].key : sortedAreas[0].key;
-
- var variation = placement.split('-')[1];
-
- return computedPlacement + (variation ? '-' + variation : '');
- }
-
-
- function getReferenceOffsets(state, popper, reference) {
- var commonOffsetParent = findCommonOffsetParent(popper, reference);
- return getOffsetRectRelativeToArbitraryNode(reference, commonOffsetParent);
- }
-
-
- function getOuterSizes(element) {
- var styles = window.getComputedStyle(element);
- var x = parseFloat(styles.marginTop) + parseFloat(styles.marginBottom);
- var y = parseFloat(styles.marginLeft) + parseFloat(styles.marginRight);
- var result = {
- width: element.offsetWidth + y,
- height: element.offsetHeight + x
- };
- return result;
- }
-
-
- function getOppositePlacement(placement) {
- var hash = { left: 'right', right: 'left', bottom: 'top', top: 'bottom' };
- return placement.replace(/left|right|bottom|top/g, function (matched) {
- return hash[matched];
- });
- }
-
-
- function getPopperOffsets(popper, referenceOffsets, placement) {
- placement = placement.split('-')[0];
-
-
- var popperRect = getOuterSizes(popper);
-
-
- var popperOffsets = {
- width: popperRect.width,
- height: popperRect.height
- };
-
-
- var isHoriz = ['right', 'left'].indexOf(placement) !== -1;
- var mainSide = isHoriz ? 'top' : 'left';
- var secondarySide = isHoriz ? 'left' : 'top';
- var measurement = isHoriz ? 'height' : 'width';
- var secondaryMeasurement = !isHoriz ? 'height' : 'width';
-
- popperOffsets[mainSide] = referenceOffsets[mainSide] + referenceOffsets[measurement] / 2 - popperRect[measurement] / 2;
- if (placement === secondarySide) {
- popperOffsets[secondarySide] = referenceOffsets[secondarySide] - popperRect[secondaryMeasurement];
- } else {
- popperOffsets[secondarySide] = referenceOffsets[getOppositePlacement(secondarySide)];
- }
-
- return popperOffsets;
- }
-
-
- function find(arr, check) {
-
- if (Array.prototype.find) {
- return arr.find(check);
- }
-
-
- return arr.filter(check)[0];
- }
-
-
- function findIndex(arr, prop, value) {
-
- if (Array.prototype.findIndex) {
- return arr.findIndex(function (cur) {
- return cur[prop] === value;
- });
- }
-
-
- var match = find(arr, function (obj) {
- return obj[prop] === value;
- });
- return arr.indexOf(match);
- }
-
-
- function runModifiers(modifiers, data, ends) {
- var modifiersToRun = ends === undefined ? modifiers : modifiers.slice(0, findIndex(modifiers, 'name', ends));
-
- modifiersToRun.forEach(function (modifier) {
- if (modifier.function) {
- console.warn('`modifier.function` is deprecated, use `modifier.fn`!');
- }
- var fn = modifier.function || modifier.fn;
- if (modifier.enabled && isFunction(fn)) {
-
-
-
- data.offsets.popper = getClientRect(data.offsets.popper);
- data.offsets.reference = getClientRect(data.offsets.reference);
-
- data = fn(data, modifier);
- }
- });
-
- return data;
- }
-
-
- function update() {
-
- if (this.state.isDestroyed) {
- return;
- }
-
- var data = {
- instance: this,
- styles: {},
- arrowStyles: {},
- attributes: {},
- flipped: false,
- offsets: {}
- };
-
-
- data.offsets.reference = getReferenceOffsets(this.state, this.popper, this.reference);
-
-
-
-
- data.placement = computeAutoPlacement(this.options.placement, data.offsets.reference, this.popper, this.reference, this.options.modifiers.flip.boundariesElement, this.options.modifiers.flip.padding);
-
-
- data.originalPlacement = data.placement;
-
-
- data.offsets.popper = getPopperOffsets(this.popper, data.offsets.reference, data.placement);
- data.offsets.popper.position = 'absolute';
-
-
- data = runModifiers(this.modifiers, data);
-
-
-
- if (!this.state.isCreated) {
- this.state.isCreated = true;
- this.options.onCreate(data);
- } else {
- this.options.onUpdate(data);
- }
- }
-
-
- function isModifierEnabled(modifiers, modifierName) {
- return modifiers.some(function (_ref) {
- var name = _ref.name,
- enabled = _ref.enabled;
- return enabled && name === modifierName;
- });
- }
-
-
- function getSupportedPropertyName(property) {
- var prefixes = [false, 'ms', 'Webkit', 'Moz', 'O'];
- var upperProp = property.charAt(0).toUpperCase() + property.slice(1);
-
- for (var i = 0; i < prefixes.length - 1; i++) {
- var prefix = prefixes[i];
- var toCheck = prefix ? '' + prefix + upperProp : property;
- if (typeof window.document.body.style[toCheck] !== 'undefined') {
- return toCheck;
- }
- }
- return null;
- }
-
-
- function destroy() {
- this.state.isDestroyed = true;
-
-
- if (isModifierEnabled(this.modifiers, 'applyStyle')) {
- this.popper.removeAttribute('x-placement');
- this.popper.style.left = '';
- this.popper.style.position = '';
- this.popper.style.top = '';
- this.popper.style[getSupportedPropertyName('transform')] = '';
- }
-
- this.disableEventListeners();
-
-
-
- if (this.options.removeOnDestroy) {
- this.popper.parentNode.removeChild(this.popper);
- }
- return this;
- }
-
- function attachToScrollParents(scrollParent, event, callback, scrollParents) {
- var isBody = scrollParent.nodeName === 'BODY';
- var target = isBody ? window : scrollParent;
- target.addEventListener(event, callback, { passive: true });
-
- if (!isBody) {
- attachToScrollParents(getScrollParent(target.parentNode), event, callback, scrollParents);
- }
- scrollParents.push(target);
- }
-
-
- function setupEventListeners(reference, options, state, updateBound) {
-
- state.updateBound = updateBound;
- window.addEventListener('resize', state.updateBound, { passive: true });
-
-
- var scrollElement = getScrollParent(reference);
- attachToScrollParents(scrollElement, 'scroll', state.updateBound, state.scrollParents);
- state.scrollElement = scrollElement;
- state.eventsEnabled = true;
-
- return state;
- }
-
-
- function enableEventListeners() {
- if (!this.state.eventsEnabled) {
- this.state = setupEventListeners(this.reference, this.options, this.state, this.scheduleUpdate);
- }
- }
-
-
- function removeEventListeners(reference, state) {
-
- window.removeEventListener('resize', state.updateBound);
-
-
- state.scrollParents.forEach(function (target) {
- target.removeEventListener('scroll', state.updateBound);
- });
-
-
- state.updateBound = null;
- state.scrollParents = [];
- state.scrollElement = null;
- state.eventsEnabled = false;
- return state;
- }
-
-
- function disableEventListeners() {
- if (this.state.eventsEnabled) {
- window.cancelAnimationFrame(this.scheduleUpdate);
- this.state = removeEventListeners(this.reference, this.state);
- }
- }
-
-
- function isNumeric(n) {
- return n !== '' && !isNaN(parseFloat(n)) && isFinite(n);
- }
-
-
- function setStyles(element, styles) {
- Object.keys(styles).forEach(function (prop) {
- var unit = '';
-
- if (['width', 'height', 'top', 'right', 'bottom', 'left'].indexOf(prop) !== -1 && isNumeric(styles[prop])) {
- unit = 'px';
- }
- element.style[prop] = styles[prop] + unit;
- });
- }
-
-
- function setAttributes(element, attributes) {
- Object.keys(attributes).forEach(function (prop) {
- var value = attributes[prop];
- if (value !== false) {
- element.setAttribute(prop, attributes[prop]);
- } else {
- element.removeAttribute(prop);
- }
- });
- }
-
-
- function applyStyle(data) {
-
-
-
-
- setStyles(data.instance.popper, data.styles);
-
-
-
- setAttributes(data.instance.popper, data.attributes);
-
-
- if (data.arrowElement && Object.keys(data.arrowStyles).length) {
- setStyles(data.arrowElement, data.arrowStyles);
- }
-
- return data;
- }
-
-
- function applyStyleOnLoad(reference, popper, options, modifierOptions, state) {
-
- var referenceOffsets = getReferenceOffsets(state, popper, reference);
-
-
-
-
- var placement = computeAutoPlacement(options.placement, referenceOffsets, popper, reference, options.modifiers.flip.boundariesElement, options.modifiers.flip.padding);
-
- popper.setAttribute('x-placement', placement);
-
-
-
- setStyles(popper, { position: 'absolute' });
-
- return options;
- }
-
-
- function computeStyle(data, options) {
- var x = options.x,
- y = options.y;
- var popper = data.offsets.popper;
-
-
-
- var legacyGpuAccelerationOption = find(data.instance.modifiers, function (modifier) {
- return modifier.name === 'applyStyle';
- }).gpuAcceleration;
- if (legacyGpuAccelerationOption !== undefined) {
- console.warn('WARNING: `gpuAcceleration` option moved to `computeStyle` modifier and will not be supported in future versions of Popper.js!');
- }
- var gpuAcceleration = legacyGpuAccelerationOption !== undefined ? legacyGpuAccelerationOption : options.gpuAcceleration;
-
- var offsetParent = getOffsetParent(data.instance.popper);
- var offsetParentRect = getBoundingClientRect(offsetParent);
-
-
- var styles = {
- position: popper.position
- };
-
-
- var offsets = {
- left: Math.floor(popper.left),
- top: Math.floor(popper.top),
- bottom: Math.floor(popper.bottom),
- right: Math.floor(popper.right)
- };
-
- var sideA = x === 'bottom' ? 'top' : 'bottom';
- var sideB = y === 'right' ? 'left' : 'right';
-
-
-
-
- var prefixedProperty = getSupportedPropertyName('transform');
-
-
-
-
-
-
-
-
-
-
- var left = void 0,
- top = void 0;
- if (sideA === 'bottom') {
- top = -offsetParentRect.height + offsets.bottom;
- } else {
- top = offsets.top;
- }
- if (sideB === 'right') {
- left = -offsetParentRect.width + offsets.right;
- } else {
- left = offsets.left;
- }
- if (gpuAcceleration && prefixedProperty) {
- styles[prefixedProperty] = 'translate3d(' + left + 'px, ' + top + 'px, 0)';
- styles[sideA] = 0;
- styles[sideB] = 0;
- styles.willChange = 'transform';
- } else {
-
- var invertTop = sideA === 'bottom' ? -1 : 1;
- var invertLeft = sideB === 'right' ? -1 : 1;
- styles[sideA] = top * invertTop;
- styles[sideB] = left * invertLeft;
- styles.willChange = sideA + ', ' + sideB;
- }
-
-
- var attributes = {
- 'x-placement': data.placement
- };
-
-
- data.attributes = _extends$1({}, attributes, data.attributes);
- data.styles = _extends$1({}, styles, data.styles);
- data.arrowStyles = _extends$1({}, data.offsets.arrow, data.arrowStyles);
-
- return data;
- }
-
-
- function isModifierRequired(modifiers, requestingName, requestedName) {
- var requesting = find(modifiers, function (_ref) {
- var name = _ref.name;
- return name === requestingName;
- });
-
- var isRequired = !!requesting && modifiers.some(function (modifier) {
- return modifier.name === requestedName && modifier.enabled && modifier.order < requesting.order;
- });
-
- if (!isRequired) {
- var _requesting = '`' + requestingName + '`';
- var requested = '`' + requestedName + '`';
- console.warn(requested + ' modifier is required by ' + _requesting + ' modifier in order to work, be sure to include it before ' + _requesting + '!');
- }
- return isRequired;
- }
-
-
- function arrow(data, options) {
-
- if (!isModifierRequired(data.instance.modifiers, 'arrow', 'keepTogether')) {
- return data;
- }
-
- var arrowElement = options.element;
-
-
- if (typeof arrowElement === 'string') {
- arrowElement = data.instance.popper.querySelector(arrowElement);
-
-
- if (!arrowElement) {
- return data;
- }
- } else {
-
-
- if (!data.instance.popper.contains(arrowElement)) {
- console.warn('WARNING: `arrow.element` must be child of its popper element!');
- return data;
- }
- }
-
- var placement = data.placement.split('-')[0];
- var _data$offsets = data.offsets,
- popper = _data$offsets.popper,
- reference = _data$offsets.reference;
-
- var isVertical = ['left', 'right'].indexOf(placement) !== -1;
-
- var len = isVertical ? 'height' : 'width';
- var sideCapitalized = isVertical ? 'Top' : 'Left';
- var side = sideCapitalized.toLowerCase();
- var altSide = isVertical ? 'left' : 'top';
- var opSide = isVertical ? 'bottom' : 'right';
- var arrowElementSize = getOuterSizes(arrowElement)[len];
-
-
-
-
-
-
-
- if (reference[opSide] - arrowElementSize < popper[side]) {
- data.offsets.popper[side] -= popper[side] - (reference[opSide] - arrowElementSize);
- }
-
- if (reference[side] + arrowElementSize > popper[opSide]) {
- data.offsets.popper[side] += reference[side] + arrowElementSize - popper[opSide];
- }
-
-
- var center = reference[side] + reference[len] / 2 - arrowElementSize / 2;
-
-
-
- var popperMarginSide = getStyleComputedProperty(data.instance.popper, 'margin' + sideCapitalized).replace('px', '');
- var sideValue = center - getClientRect(data.offsets.popper)[side] - popperMarginSide;
-
-
- sideValue = Math.max(Math.min(popper[len] - arrowElementSize, sideValue), 0);
-
- data.arrowElement = arrowElement;
- data.offsets.arrow = {};
- data.offsets.arrow[side] = Math.round(sideValue);
- data.offsets.arrow[altSide] = '';
-
- return data;
- }
-
-
- function getOppositeVariation(variation) {
- if (variation === 'end') {
- return 'start';
- } else if (variation === 'start') {
- return 'end';
- }
- return variation;
- }
-
-
- var placements = ['auto-start', 'auto', 'auto-end', 'top-start', 'top', 'top-end', 'right-start', 'right', 'right-end', 'bottom-end', 'bottom', 'bottom-start', 'left-end', 'left', 'left-start'];
-
-
- var validPlacements = placements.slice(3);
-
-
- function clockwise(placement) {
- var counter = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;
-
- var index = validPlacements.indexOf(placement);
- var arr = validPlacements.slice(index + 1).concat(validPlacements.slice(0, index));
- return counter ? arr.reverse() : arr;
- }
-
- var BEHAVIORS = {
- FLIP: 'flip',
- CLOCKWISE: 'clockwise',
- COUNTERCLOCKWISE: 'counterclockwise'
- };
-
-
- function flip(data, options) {
-
- if (isModifierEnabled(data.instance.modifiers, 'inner')) {
- return data;
- }
-
- if (data.flipped && data.placement === data.originalPlacement) {
-
- return data;
- }
-
- var boundaries = getBoundaries(data.instance.popper, data.instance.reference, options.padding, options.boundariesElement);
-
- var placement = data.placement.split('-')[0];
- var placementOpposite = getOppositePlacement(placement);
- var variation = data.placement.split('-')[1] || '';
-
- var flipOrder = [];
-
- switch (options.behavior) {
- case BEHAVIORS.FLIP:
- flipOrder = [placement, placementOpposite];
- break;
- case BEHAVIORS.CLOCKWISE:
- flipOrder = clockwise(placement);
- break;
- case BEHAVIORS.COUNTERCLOCKWISE:
- flipOrder = clockwise(placement, true);
- break;
- default:
- flipOrder = options.behavior;
- }
-
- flipOrder.forEach(function (step, index) {
- if (placement !== step || flipOrder.length === index + 1) {
- return data;
- }
-
- placement = data.placement.split('-')[0];
- placementOpposite = getOppositePlacement(placement);
-
- var popperOffsets = data.offsets.popper;
- var refOffsets = data.offsets.reference;
-
-
- var floor = Math.floor;
- var overlapsRef = placement === 'left' && floor(popperOffsets.right) > floor(refOffsets.left) || placement === 'right' && floor(popperOffsets.left) < floor(refOffsets.right) || placement === 'top' && floor(popperOffsets.bottom) > floor(refOffsets.top) || placement === 'bottom' && floor(popperOffsets.top) < floor(refOffsets.bottom);
-
- var overflowsLeft = floor(popperOffsets.left) < floor(boundaries.left);
- var overflowsRight = floor(popperOffsets.right) > floor(boundaries.right);
- var overflowsTop = floor(popperOffsets.top) < floor(boundaries.top);
- var overflowsBottom = floor(popperOffsets.bottom) > floor(boundaries.bottom);
-
- var overflowsBoundaries = placement === 'left' && overflowsLeft || placement === 'right' && overflowsRight || placement === 'top' && overflowsTop || placement === 'bottom' && overflowsBottom;
-
-
- var isVertical = ['top', 'bottom'].indexOf(placement) !== -1;
- var flippedVariation = !!options.flipVariations && (isVertical && variation === 'start' && overflowsLeft || isVertical && variation === 'end' && overflowsRight || !isVertical && variation === 'start' && overflowsTop || !isVertical && variation === 'end' && overflowsBottom);
-
- if (overlapsRef || overflowsBoundaries || flippedVariation) {
-
- data.flipped = true;
-
- if (overlapsRef || overflowsBoundaries) {
- placement = flipOrder[index + 1];
- }
-
- if (flippedVariation) {
- variation = getOppositeVariation(variation);
- }
-
- data.placement = placement + (variation ? '-' + variation : '');
-
-
-
- data.offsets.popper = _extends$1({}, data.offsets.popper, getPopperOffsets(data.instance.popper, data.offsets.reference, data.placement));
-
- data = runModifiers(data.instance.modifiers, data, 'flip');
- }
- });
- return data;
- }
-
-
- function keepTogether(data) {
- var _data$offsets = data.offsets,
- popper = _data$offsets.popper,
- reference = _data$offsets.reference;
-
- var placement = data.placement.split('-')[0];
- var floor = Math.floor;
- var isVertical = ['top', 'bottom'].indexOf(placement) !== -1;
- var side = isVertical ? 'right' : 'bottom';
- var opSide = isVertical ? 'left' : 'top';
- var measurement = isVertical ? 'width' : 'height';
-
- if (popper[side] < floor(reference[opSide])) {
- data.offsets.popper[opSide] = floor(reference[opSide]) - popper[measurement];
- }
- if (popper[opSide] > floor(reference[side])) {
- data.offsets.popper[opSide] = floor(reference[side]);
- }
-
- return data;
- }
-
-
- function toValue(str, measurement, popperOffsets, referenceOffsets) {
-
- var split = str.match(/((?:\-|\+)?\d*\.?\d*)(.*)/);
- var value = +split[1];
- var unit = split[2];
-
-
- if (!value) {
- return str;
- }
-
- if (unit.indexOf('%') === 0) {
- var element = void 0;
- switch (unit) {
- case '%p':
- element = popperOffsets;
- break;
- case '%':
- case '%r':
- default:
- element = referenceOffsets;
- }
-
- var rect = getClientRect(element);
- return rect[measurement] / 100 * value;
- } else if (unit === 'vh' || unit === 'vw') {
-
- var size = void 0;
- if (unit === 'vh') {
- size = Math.max(document.documentElement.clientHeight, window.innerHeight || 0);
- } else {
- size = Math.max(document.documentElement.clientWidth, window.innerWidth || 0);
- }
- return size / 100 * value;
- } else {
-
-
- return value;
- }
- }
-
-
- function parseOffset(offset, popperOffsets, referenceOffsets, basePlacement) {
- var offsets = [0, 0];
-
-
-
-
- var useHeight = ['right', 'left'].indexOf(basePlacement) !== -1;
-
-
-
- var fragments = offset.split(/(\+|\-)/).map(function (frag) {
- return frag.trim();
- });
-
-
-
- var divider = fragments.indexOf(find(fragments, function (frag) {
- return frag.search(/,|\s/) !== -1;
- }));
-
- if (fragments[divider] && fragments[divider].indexOf(',') === -1) {
- console.warn('Offsets separated by white space(s) are deprecated, use a comma (,) instead.');
- }
-
-
-
- var splitRegex = /\s*,\s*|\s+/;
- var ops = divider !== -1 ? [fragments.slice(0, divider).concat([fragments[divider].split(splitRegex)[0]]), [fragments[divider].split(splitRegex)[1]].concat(fragments.slice(divider + 1))] : [fragments];
-
-
- ops = ops.map(function (op, index) {
-
- var measurement = (index === 1 ? !useHeight : useHeight) ? 'height' : 'width';
- var mergeWithPrevious = false;
- return op
-
-
- .reduce(function (a, b) {
- if (a[a.length - 1] === '' && ['+', '-'].indexOf(b) !== -1) {
- a[a.length - 1] = b;
- mergeWithPrevious = true;
- return a;
- } else if (mergeWithPrevious) {
- a[a.length - 1] += b;
- mergeWithPrevious = false;
- return a;
- } else {
- return a.concat(b);
- }
- }, [])
-
- .map(function (str) {
- return toValue(str, measurement, popperOffsets, referenceOffsets);
- });
- });
-
-
- ops.forEach(function (op, index) {
- op.forEach(function (frag, index2) {
- if (isNumeric(frag)) {
- offsets[index] += frag * (op[index2 - 1] === '-' ? -1 : 1);
- }
- });
- });
- return offsets;
- }
-
-
- function offset(data, _ref) {
- var offset = _ref.offset;
- var placement = data.placement,
- _data$offsets = data.offsets,
- popper = _data$offsets.popper,
- reference = _data$offsets.reference;
-
- var basePlacement = placement.split('-')[0];
-
- var offsets = void 0;
- if (isNumeric(+offset)) {
- offsets = [+offset, 0];
- } else {
- offsets = parseOffset(offset, popper, reference, basePlacement);
- }
-
- if (basePlacement === 'left') {
- popper.top += offsets[0];
- popper.left -= offsets[1];
- } else if (basePlacement === 'right') {
- popper.top += offsets[0];
- popper.left += offsets[1];
- } else if (basePlacement === 'top') {
- popper.left += offsets[0];
- popper.top -= offsets[1];
- } else if (basePlacement === 'bottom') {
- popper.left += offsets[0];
- popper.top += offsets[1];
- }
-
- data.popper = popper;
- return data;
- }
-
-
- function preventOverflow(data, options) {
- var boundariesElement = options.boundariesElement || getOffsetParent(data.instance.popper);
-
-
-
-
- if (data.instance.reference === boundariesElement) {
- boundariesElement = getOffsetParent(boundariesElement);
- }
-
- var boundaries = getBoundaries(data.instance.popper, data.instance.reference, options.padding, boundariesElement);
- options.boundaries = boundaries;
-
- var order = options.priority;
- var popper = data.offsets.popper;
-
- var check = {
- primary: function primary(placement) {
- var value = popper[placement];
- if (popper[placement] < boundaries[placement] && !options.escapeWithReference) {
- value = Math.max(popper[placement], boundaries[placement]);
- }
- return defineProperty({}, placement, value);
- },
- secondary: function secondary(placement) {
- var mainSide = placement === 'right' ? 'left' : 'top';
- var value = popper[mainSide];
- if (popper[placement] > boundaries[placement] && !options.escapeWithReference) {
- value = Math.min(popper[mainSide], boundaries[placement] - (placement === 'right' ? popper.width : popper.height));
- }
- return defineProperty({}, mainSide, value);
- }
- };
-
- order.forEach(function (placement) {
- var side = ['left', 'top'].indexOf(placement) !== -1 ? 'primary' : 'secondary';
- popper = _extends$1({}, popper, check[side](placement));
- });
-
- data.offsets.popper = popper;
-
- return data;
- }
-
-
- function shift(data) {
- var placement = data.placement;
- var basePlacement = placement.split('-')[0];
- var shiftvariation = placement.split('-')[1];
-
-
- if (shiftvariation) {
- var _data$offsets = data.offsets,
- reference = _data$offsets.reference,
- popper = _data$offsets.popper;
-
- var isVertical = ['bottom', 'top'].indexOf(basePlacement) !== -1;
- var side = isVertical ? 'left' : 'top';
- var measurement = isVertical ? 'width' : 'height';
-
- var shiftOffsets = {
- start: defineProperty({}, side, reference[side]),
- end: defineProperty({}, side, reference[side] + reference[measurement] - popper[measurement])
- };
-
- data.offsets.popper = _extends$1({}, popper, shiftOffsets[shiftvariation]);
- }
-
- return data;
- }
-
-
- function hide(data) {
- if (!isModifierRequired(data.instance.modifiers, 'hide', 'preventOverflow')) {
- return data;
- }
-
- var refRect = data.offsets.reference;
- var bound = find(data.instance.modifiers, function (modifier) {
- return modifier.name === 'preventOverflow';
- }).boundaries;
-
- if (refRect.bottom < bound.top || refRect.left > bound.right || refRect.top > bound.bottom || refRect.right < bound.left) {
-
- if (data.hide === true) {
- return data;
- }
-
- data.hide = true;
- data.attributes['x-out-of-boundaries'] = '';
- } else {
-
- if (data.hide === false) {
- return data;
- }
-
- data.hide = false;
- data.attributes['x-out-of-boundaries'] = false;
- }
-
- return data;
- }
-
-
- function inner(data) {
- var placement = data.placement;
- var basePlacement = placement.split('-')[0];
- var _data$offsets = data.offsets,
- popper = _data$offsets.popper,
- reference = _data$offsets.reference;
-
- var isHoriz = ['left', 'right'].indexOf(basePlacement) !== -1;
-
- var subtractLength = ['top', 'left'].indexOf(basePlacement) === -1;
-
- popper[isHoriz ? 'left' : 'top'] = reference[basePlacement] - (subtractLength ? popper[isHoriz ? 'width' : 'height'] : 0);
-
- data.placement = getOppositePlacement(placement);
- data.offsets.popper = getClientRect(popper);
-
- return data;
- }
-
-
-
-
- var modifiers = {
-
-
- shift: {
-
- order: 100,
-
- enabled: true,
-
- fn: shift
- },
-
-
-
- offset: {
-
- order: 200,
-
- enabled: true,
-
- fn: offset,
-
-
- offset: 0
- },
-
-
-
- preventOverflow: {
-
- order: 300,
-
- enabled: true,
-
- fn: preventOverflow,
-
-
- priority: ['left', 'right', 'top', 'bottom'],
-
-
- padding: 5,
-
-
- boundariesElement: 'scrollParent'
- },
-
-
-
- keepTogether: {
-
- order: 400,
-
- enabled: true,
-
- fn: keepTogether
- },
-
-
-
- arrow: {
-
- order: 500,
-
- enabled: true,
-
- fn: arrow,
-
- element: '[x-arrow]'
- },
-
-
-
- flip: {
-
- order: 600,
-
- enabled: true,
-
- fn: flip,
-
-
- behavior: 'flip',
-
-
- padding: 5,
-
-
- boundariesElement: 'viewport'
- },
-
-
-
- inner: {
-
- order: 700,
-
- enabled: false,
-
- fn: inner
- },
-
-
-
- hide: {
-
- order: 800,
-
- enabled: true,
-
- fn: hide
- },
-
-
-
- computeStyle: {
-
- order: 850,
-
- enabled: true,
-
- fn: computeStyle,
-
-
- gpuAcceleration: true,
-
-
- x: 'bottom',
-
-
- y: 'right'
- },
-
-
-
- applyStyle: {
-
- order: 900,
-
- enabled: true,
-
- fn: applyStyle,
-
- onLoad: applyStyleOnLoad,
-
-
- gpuAcceleration: undefined
- }
- };
-
-
-
-
- var Defaults = {
-
-
- placement: 'bottom',
-
-
-
- eventsEnabled: true,
-
-
-
- removeOnDestroy: false,
-
-
-
- onCreate: function onCreate() {},
-
-
-
- onUpdate: function onUpdate() {},
-
-
-
- modifiers: modifiers
- };
-
-
-
-
-
-
-
- var Popper = function () {
-
-
- function Popper(reference, popper) {
- var _this = this;
-
- var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};
- classCallCheck(this, Popper);
-
- this.scheduleUpdate = function () {
- return requestAnimationFrame(_this.update);
- };
-
-
- this.update = debounce(this.update.bind(this));
-
-
- this.options = _extends$1({}, Popper.Defaults, options);
-
-
- this.state = {
- isDestroyed: false,
- isCreated: false,
- scrollParents: []
- };
-
-
- this.reference = reference.jquery ? reference[0] : reference;
- this.popper = popper.jquery ? popper[0] : popper;
-
-
- this.options.modifiers = {};
- Object.keys(_extends$1({}, Popper.Defaults.modifiers, options.modifiers)).forEach(function (name) {
- _this.options.modifiers[name] = _extends$1({}, Popper.Defaults.modifiers[name] || {}, options.modifiers ? options.modifiers[name] : {});
- });
-
-
- this.modifiers = Object.keys(this.options.modifiers).map(function (name) {
- return _extends$1({
- name: name
- }, _this.options.modifiers[name]);
- })
-
- .sort(function (a, b) {
- return a.order - b.order;
- });
-
-
-
-
-
- this.modifiers.forEach(function (modifierOptions) {
- if (modifierOptions.enabled && isFunction(modifierOptions.onLoad)) {
- modifierOptions.onLoad(_this.reference, _this.popper, _this.options, modifierOptions, _this.state);
- }
- });
-
-
- this.update();
-
- var eventsEnabled = this.options.eventsEnabled;
- if (eventsEnabled) {
-
- this.enableEventListeners();
- }
-
- this.state.eventsEnabled = eventsEnabled;
- }
-
-
-
-
-
- createClass$1(Popper, [{
- key: 'update',
- value: function update$$1() {
- return update.call(this);
- }
- }, {
- key: 'destroy',
- value: function destroy$$1() {
- return destroy.call(this);
- }
- }, {
- key: 'enableEventListeners',
- value: function enableEventListeners$$1() {
- return enableEventListeners.call(this);
- }
- }, {
- key: 'disableEventListeners',
- value: function disableEventListeners$$1() {
- return disableEventListeners.call(this);
- }
-
-
-
-
-
-
-
-
- }]);
- return Popper;
- }();
-
-
-
-
- Popper.Utils = (typeof window !== 'undefined' ? window : global).PopperUtils;
- Popper.placements = placements;
- Popper.Defaults = Defaults;
-
-
-
- var Dropdown = function () {
-
-
- if (typeof Popper === 'undefined') {
- throw new Error('Bootstrap dropdown require Popper.js (https://popper.js.org)');
- }
-
-
-
-
- var NAME = 'dropdown';
- var VERSION = '4.0.0-beta.2';
- var DATA_KEY = 'bs.dropdown';
- var EVENT_KEY = "." + DATA_KEY;
- var DATA_API_KEY = '.data-api';
- var JQUERY_NO_CONFLICT = $.fn[NAME];
- var ESCAPE_KEYCODE = 27;
-
- var SPACE_KEYCODE = 32;
-
- var TAB_KEYCODE = 9;
-
- var ARROW_UP_KEYCODE = 38;
-
- var ARROW_DOWN_KEYCODE = 40;
-
- var RIGHT_MOUSE_BUTTON_WHICH = 3;
-
- var REGEXP_KEYDOWN = new RegExp(ARROW_UP_KEYCODE + "|" + ARROW_DOWN_KEYCODE + "|" + ESCAPE_KEYCODE);
- var Event = {
- HIDE: "hide" + EVENT_KEY,
- HIDDEN: "hidden" + EVENT_KEY,
- SHOW: "show" + EVENT_KEY,
- SHOWN: "shown" + EVENT_KEY,
- CLICK: "click" + EVENT_KEY,
- CLICK_DATA_API: "click" + EVENT_KEY + DATA_API_KEY,
- KEYDOWN_DATA_API: "keydown" + EVENT_KEY + DATA_API_KEY,
- KEYUP_DATA_API: "keyup" + EVENT_KEY + DATA_API_KEY
- };
- var ClassName = {
- DISABLED: 'disabled',
- SHOW: 'show',
- DROPUP: 'dropup',
- MENURIGHT: 'dropdown-menu-right',
- MENULEFT: 'dropdown-menu-left'
- };
- var Selector = {
- DATA_TOGGLE: '[data-toggle="dropdown"]',
- FORM_CHILD: '.dropdown form',
- MENU: '.dropdown-menu',
- NAVBAR_NAV: '.navbar-nav',
- VISIBLE_ITEMS: '.dropdown-menu .dropdown-item:not(.disabled)'
- };
- var AttachmentMap = {
- TOP: 'top-start',
- TOPEND: 'top-end',
- BOTTOM: 'bottom-start',
- BOTTOMEND: 'bottom-end'
- };
- var Default = {
- offset: 0,
- flip: true
- };
- var DefaultType = {
- offset: '(number|string|function)',
- flip: 'boolean'
-
-
-
- };
-
- var Dropdown =
-
- function () {
- function Dropdown(element, config) {
- this._element = element;
- this._popper = null;
- this._config = this._getConfig(config);
- this._menu = this._getMenuElement();
- this._inNavbar = this._detectNavbar();
-
- this._addEventListeners();
- }
-
-
- var _proto = Dropdown.prototype;
-
-
- _proto.toggle = function toggle() {
- if (this._element.disabled || $(this._element).hasClass(ClassName.DISABLED)) {
- return;
- }
-
- var parent = Dropdown._getParentFromElement(this._element);
-
- var isActive = $(this._menu).hasClass(ClassName.SHOW);
-
- Dropdown._clearMenus();
-
- if (isActive) {
- return;
- }
-
- var relatedTarget = {
- relatedTarget: this._element
- };
- var showEvent = $.Event(Event.SHOW, relatedTarget);
- $(parent).trigger(showEvent);
-
- if (showEvent.isDefaultPrevented()) {
- return;
- }
-
- var element = this._element;
-
- if ($(parent).hasClass(ClassName.DROPUP)) {
- if ($(this._menu).hasClass(ClassName.MENULEFT) || $(this._menu).hasClass(ClassName.MENURIGHT)) {
- element = parent;
- }
- }
-
- this._popper = new Popper(element, this._menu, this._getPopperConfig());
-
-
-
-
- if ('ontouchstart' in document.documentElement && !$(parent).closest(Selector.NAVBAR_NAV).length) {
- $('body').children().on('mouseover', null, $.noop);
- }
-
- this._element.focus();
-
- this._element.setAttribute('aria-expanded', true);
-
- $(this._menu).toggleClass(ClassName.SHOW);
- $(parent).toggleClass(ClassName.SHOW).trigger($.Event(Event.SHOWN, relatedTarget));
- };
-
- _proto.dispose = function dispose() {
- $.removeData(this._element, DATA_KEY);
- $(this._element).off(EVENT_KEY);
- this._element = null;
- this._menu = null;
-
- if (this._popper !== null) {
- this._popper.destroy();
- }
-
- this._popper = null;
- };
-
- _proto.update = function update() {
- this._inNavbar = this._detectNavbar();
-
- if (this._popper !== null) {
- this._popper.scheduleUpdate();
- }
- };
-
-
- _proto._addEventListeners = function _addEventListeners() {
- var _this = this;
-
- $(this._element).on(Event.CLICK, function (event) {
- event.preventDefault();
- event.stopPropagation();
-
- _this.toggle();
- });
- };
-
- _proto._getConfig = function _getConfig(config) {
- config = $.extend({}, this.constructor.Default, $(this._element).data(), config);
- Util.typeCheckConfig(NAME, config, this.constructor.DefaultType);
- return config;
- };
-
- _proto._getMenuElement = function _getMenuElement() {
- if (!this._menu) {
- var parent = Dropdown._getParentFromElement(this._element);
-
- this._menu = $(parent).find(Selector.MENU)[0];
- }
-
- return this._menu;
- };
-
- _proto._getPlacement = function _getPlacement() {
- var $parentDropdown = $(this._element).parent();
- var placement = AttachmentMap.BOTTOM;
-
- if ($parentDropdown.hasClass(ClassName.DROPUP)) {
- placement = AttachmentMap.TOP;
-
- if ($(this._menu).hasClass(ClassName.MENURIGHT)) {
- placement = AttachmentMap.TOPEND;
- }
- } else if ($(this._menu).hasClass(ClassName.MENURIGHT)) {
- placement = AttachmentMap.BOTTOMEND;
- }
-
- return placement;
- };
-
- _proto._detectNavbar = function _detectNavbar() {
- return $(this._element).closest('.navbar').length > 0;
- };
-
- _proto._getPopperConfig = function _getPopperConfig() {
- var _this2 = this;
-
- var offsetConf = {};
-
- if (typeof this._config.offset === 'function') {
- offsetConf.fn = function (data) {
- data.offsets = $.extend({}, data.offsets, _this2._config.offset(data.offsets) || {});
- return data;
- };
- } else {
- offsetConf.offset = this._config.offset;
- }
-
- var popperConfig = {
- placement: this._getPlacement(),
- modifiers: {
- offset: offsetConf,
- flip: {
- enabled: this._config.flip
- }
- }
-
- };
-
- if (this._inNavbar) {
- popperConfig.modifiers.applyStyle = {
- enabled: !this._inNavbar
- };
- }
-
- return popperConfig;
- };
-
-
- Dropdown._jQueryInterface = function _jQueryInterface(config) {
- return this.each(function () {
- var data = $(this).data(DATA_KEY);
-
- var _config = typeof config === 'object' ? config : null;
-
- if (!data) {
- data = new Dropdown(this, _config);
- $(this).data(DATA_KEY, data);
- }
-
- if (typeof config === 'string') {
- if (typeof data[config] === 'undefined') {
- throw new Error("No method named \"" + config + "\"");
- }
-
- data[config]();
- }
- });
- };
-
- Dropdown._clearMenus = function _clearMenus(event) {
- if (event && (event.which === RIGHT_MOUSE_BUTTON_WHICH || event.type === 'keyup' && event.which !== TAB_KEYCODE)) {
- return;
- }
-
- var toggles = $.makeArray($(Selector.DATA_TOGGLE));
-
- for (var i = 0; i < toggles.length; i++) {
- var parent = Dropdown._getParentFromElement(toggles[i]);
-
- var context = $(toggles[i]).data(DATA_KEY);
- var relatedTarget = {
- relatedTarget: toggles[i]
- };
-
- if (!context) {
- continue;
- }
-
- var dropdownMenu = context._menu;
-
- if (!$(parent).hasClass(ClassName.SHOW)) {
- continue;
- }
-
- if (event && (event.type === 'click' && /input|textarea/i.test(event.target.tagName) || event.type === 'keyup' && event.which === TAB_KEYCODE) && $.contains(parent, event.target)) {
- continue;
- }
-
- var hideEvent = $.Event(Event.HIDE, relatedTarget);
- $(parent).trigger(hideEvent);
-
- if (hideEvent.isDefaultPrevented()) {
- continue;
- }
-
-
-
- if ('ontouchstart' in document.documentElement) {
- $('body').children().off('mouseover', null, $.noop);
- }
-
- toggles[i].setAttribute('aria-expanded', 'false');
- $(dropdownMenu).removeClass(ClassName.SHOW);
- $(parent).removeClass(ClassName.SHOW).trigger($.Event(Event.HIDDEN, relatedTarget));
- }
- };
-
- Dropdown._getParentFromElement = function _getParentFromElement(element) {
- var parent;
- var selector = Util.getSelectorFromElement(element);
-
- if (selector) {
- parent = $(selector)[0];
- }
-
- return parent || element.parentNode;
- };
-
- Dropdown._dataApiKeydownHandler = function _dataApiKeydownHandler(event) {
- if (!REGEXP_KEYDOWN.test(event.which) || /button/i.test(event.target.tagName) && event.which === SPACE_KEYCODE || /input|textarea/i.test(event.target.tagName)) {
- return;
- }
-
- event.preventDefault();
- event.stopPropagation();
-
- if (this.disabled || $(this).hasClass(ClassName.DISABLED)) {
- return;
- }
-
- var parent = Dropdown._getParentFromElement(this);
-
- var isActive = $(parent).hasClass(ClassName.SHOW);
-
- if (!isActive && (event.which !== ESCAPE_KEYCODE || event.which !== SPACE_KEYCODE) || isActive && (event.which === ESCAPE_KEYCODE || event.which === SPACE_KEYCODE)) {
- if (event.which === ESCAPE_KEYCODE) {
- var toggle = $(parent).find(Selector.DATA_TOGGLE)[0];
- $(toggle).trigger('focus');
- }
-
- $(this).trigger('click');
- return;
- }
-
- var items = $(parent).find(Selector.VISIBLE_ITEMS).get();
-
- if (!items.length) {
- return;
- }
-
- var index = items.indexOf(event.target);
-
- if (event.which === ARROW_UP_KEYCODE && index > 0) {
-
- index--;
- }
-
- if (event.which === ARROW_DOWN_KEYCODE && index < items.length - 1) {
-
- index++;
- }
-
- if (index < 0) {
- index = 0;
- }
-
- items[index].focus();
- };
-
- createClass(Dropdown, null, [{
- key: "VERSION",
- get: function get() {
- return VERSION;
- }
- }, {
- key: "Default",
- get: function get() {
- return Default;
- }
- }, {
- key: "DefaultType",
- get: function get() {
- return DefaultType;
- }
- }]);
- return Dropdown;
- }();
-
-
-
-
- $(document).on(Event.KEYDOWN_DATA_API, Selector.DATA_TOGGLE, Dropdown._dataApiKeydownHandler).on(Event.KEYDOWN_DATA_API, Selector.MENU, Dropdown._dataApiKeydownHandler).on(Event.CLICK_DATA_API + " " + Event.KEYUP_DATA_API, Dropdown._clearMenus).on(Event.CLICK_DATA_API, Selector.DATA_TOGGLE, function (event) {
- event.preventDefault();
- event.stopPropagation();
-
- Dropdown._jQueryInterface.call($(this), 'toggle');
- }).on(Event.CLICK_DATA_API, Selector.FORM_CHILD, function (e) {
- e.stopPropagation();
- });
-
-
-
- $.fn[NAME] = Dropdown._jQueryInterface;
- $.fn[NAME].Constructor = Dropdown;
-
- $.fn[NAME].noConflict = function () {
- $.fn[NAME] = JQUERY_NO_CONFLICT;
- return Dropdown._jQueryInterface;
- };
-
- return Dropdown;
- }($, Popper);
-
-
-
- var Modal = function () {
-
-
- var NAME = 'modal';
- var VERSION = '4.0.0-beta.2';
- var DATA_KEY = 'bs.modal';
- var EVENT_KEY = "." + DATA_KEY;
- var DATA_API_KEY = '.data-api';
- var JQUERY_NO_CONFLICT = $.fn[NAME];
- var TRANSITION_DURATION = 300;
- var BACKDROP_TRANSITION_DURATION = 150;
- var ESCAPE_KEYCODE = 27;
-
- var Default = {
- backdrop: true,
- keyboard: true,
- focus: true,
- show: true
- };
- var DefaultType = {
- backdrop: '(boolean|string)',
- keyboard: 'boolean',
- focus: 'boolean',
- show: 'boolean'
- };
- var Event = {
- HIDE: "hide" + EVENT_KEY,
- HIDDEN: "hidden" + EVENT_KEY,
- SHOW: "show" + EVENT_KEY,
- SHOWN: "shown" + EVENT_KEY,
- FOCUSIN: "focusin" + EVENT_KEY,
- RESIZE: "resize" + EVENT_KEY,
- CLICK_DISMISS: "click.dismiss" + EVENT_KEY,
- KEYDOWN_DISMISS: "keydown.dismiss" + EVENT_KEY,
- MOUSEUP_DISMISS: "mouseup.dismiss" + EVENT_KEY,
- MOUSEDOWN_DISMISS: "mousedown.dismiss" + EVENT_KEY,
- CLICK_DATA_API: "click" + EVENT_KEY + DATA_API_KEY
- };
- var ClassName = {
- SCROLLBAR_MEASURER: 'modal-scrollbar-measure',
- BACKDROP: 'modal-backdrop',
- OPEN: 'modal-open',
- FADE: 'fade',
- SHOW: 'show'
- };
- var Selector = {
- DIALOG: '.modal-dialog',
- DATA_TOGGLE: '[data-toggle="modal"]',
- DATA_DISMISS: '[data-dismiss="modal"]',
- FIXED_CONTENT: '.fixed-top, .fixed-bottom, .is-fixed, .sticky-top',
- STICKY_CONTENT: '.sticky-top',
- NAVBAR_TOGGLER: '.navbar-toggler'
-
-
-
- };
-
- var Modal =
-
- function () {
- function Modal(element, config) {
- this._config = this._getConfig(config);
- this._element = element;
- this._dialog = $(element).find(Selector.DIALOG)[0];
- this._backdrop = null;
- this._isShown = false;
- this._isBodyOverflowing = false;
- this._ignoreBackdropClick = false;
- this._originalBodyPadding = 0;
- this._scrollbarWidth = 0;
- }
-
-
- var _proto = Modal.prototype;
-
-
- _proto.toggle = function toggle(relatedTarget) {
- return this._isShown ? this.hide() : this.show(relatedTarget);
- };
-
- _proto.show = function show(relatedTarget) {
- var _this = this;
-
- if (this._isTransitioning || this._isShown) {
- return;
- }
-
- if (Util.supportsTransitionEnd() && $(this._element).hasClass(ClassName.FADE)) {
- this._isTransitioning = true;
- }
-
- var showEvent = $.Event(Event.SHOW, {
- relatedTarget: relatedTarget
- });
- $(this._element).trigger(showEvent);
-
- if (this._isShown || showEvent.isDefaultPrevented()) {
- return;
- }
-
- this._isShown = true;
-
- this._checkScrollbar();
-
- this._setScrollbar();
-
- this._adjustDialog();
-
- $(document.body).addClass(ClassName.OPEN);
-
- this._setEscapeEvent();
-
- this._setResizeEvent();
-
- $(this._element).on(Event.CLICK_DISMISS, Selector.DATA_DISMISS, function (event) {
- return _this.hide(event);
- });
- $(this._dialog).on(Event.MOUSEDOWN_DISMISS, function () {
- $(_this._element).one(Event.MOUSEUP_DISMISS, function (event) {
- if ($(event.target).is(_this._element)) {
- _this._ignoreBackdropClick = true;
- }
- });
- });
-
- this._showBackdrop(function () {
- return _this._showElement(relatedTarget);
- });
- };
-
- _proto.hide = function hide(event) {
- var _this2 = this;
-
- if (event) {
- event.preventDefault();
- }
-
- if (this._isTransitioning || !this._isShown) {
- return;
- }
-
- var hideEvent = $.Event(Event.HIDE);
- $(this._element).trigger(hideEvent);
-
- if (!this._isShown || hideEvent.isDefaultPrevented()) {
- return;
- }
-
- this._isShown = false;
- var transition = Util.supportsTransitionEnd() && $(this._element).hasClass(ClassName.FADE);
-
- if (transition) {
- this._isTransitioning = true;
- }
-
- this._setEscapeEvent();
-
- this._setResizeEvent();
-
- $(document).off(Event.FOCUSIN);
- $(this._element).removeClass(ClassName.SHOW);
- $(this._element).off(Event.CLICK_DISMISS);
- $(this._dialog).off(Event.MOUSEDOWN_DISMISS);
-
- if (transition) {
- $(this._element).one(Util.TRANSITION_END, function (event) {
- return _this2._hideModal(event);
- }).emulateTransitionEnd(TRANSITION_DURATION);
- } else {
- this._hideModal();
- }
- };
-
- _proto.dispose = function dispose() {
- $.removeData(this._element, DATA_KEY);
- $(window, document, this._element, this._backdrop).off(EVENT_KEY);
- this._config = null;
- this._element = null;
- this._dialog = null;
- this._backdrop = null;
- this._isShown = null;
- this._isBodyOverflowing = null;
- this._ignoreBackdropClick = null;
- this._scrollbarWidth = null;
- };
-
- _proto.handleUpdate = function handleUpdate() {
- this._adjustDialog();
- };
-
-
- _proto._getConfig = function _getConfig(config) {
- config = $.extend({}, Default, config);
- Util.typeCheckConfig(NAME, config, DefaultType);
- return config;
- };
-
- _proto._showElement = function _showElement(relatedTarget) {
- var _this3 = this;
-
- var transition = Util.supportsTransitionEnd() && $(this._element).hasClass(ClassName.FADE);
-
- if (!this._element.parentNode || this._element.parentNode.nodeType !== Node.ELEMENT_NODE) {
-
- document.body.appendChild(this._element);
- }
-
- this._element.style.display = 'block';
-
- this._element.removeAttribute('aria-hidden');
-
- this._element.scrollTop = 0;
-
- if (transition) {
- Util.reflow(this._element);
- }
-
- $(this._element).addClass(ClassName.SHOW);
-
- if (this._config.focus) {
- this._enforceFocus();
- }
-
- var shownEvent = $.Event(Event.SHOWN, {
- relatedTarget: relatedTarget
- });
-
- var transitionComplete = function transitionComplete() {
- if (_this3._config.focus) {
- _this3._element.focus();
- }
-
- _this3._isTransitioning = false;
- $(_this3._element).trigger(shownEvent);
- };
-
- if (transition) {
- $(this._dialog).one(Util.TRANSITION_END, transitionComplete).emulateTransitionEnd(TRANSITION_DURATION);
- } else {
- transitionComplete();
- }
- };
-
- _proto._enforceFocus = function _enforceFocus() {
- var _this4 = this;
-
- $(document).off(Event.FOCUSIN)
- .on(Event.FOCUSIN, function (event) {
- if (document !== event.target && _this4._element !== event.target && !$(_this4._element).has(event.target).length) {
- _this4._element.focus();
- }
- });
- };
-
- _proto._setEscapeEvent = function _setEscapeEvent() {
- var _this5 = this;
-
- if (this._isShown && this._config.keyboard) {
- $(this._element).on(Event.KEYDOWN_DISMISS, function (event) {
- if (event.which === ESCAPE_KEYCODE) {
- event.preventDefault();
-
- _this5.hide();
- }
- });
- } else if (!this._isShown) {
- $(this._element).off(Event.KEYDOWN_DISMISS);
- }
- };
-
- _proto._setResizeEvent = function _setResizeEvent() {
- var _this6 = this;
-
- if (this._isShown) {
- $(window).on(Event.RESIZE, function (event) {
- return _this6.handleUpdate(event);
- });
- } else {
- $(window).off(Event.RESIZE);
- }
- };
-
- _proto._hideModal = function _hideModal() {
- var _this7 = this;
-
- this._element.style.display = 'none';
-
- this._element.setAttribute('aria-hidden', true);
-
- this._isTransitioning = false;
-
- this._showBackdrop(function () {
- $(document.body).removeClass(ClassName.OPEN);
-
- _this7._resetAdjustments();
-
- _this7._resetScrollbar();
-
- $(_this7._element).trigger(Event.HIDDEN);
- });
- };
-
- _proto._removeBackdrop = function _removeBackdrop() {
- if (this._backdrop) {
- $(this._backdrop).remove();
- this._backdrop = null;
- }
- };
-
- _proto._showBackdrop = function _showBackdrop(callback) {
- var _this8 = this;
-
- var animate = $(this._element).hasClass(ClassName.FADE) ? ClassName.FADE : '';
-
- if (this._isShown && this._config.backdrop) {
- var doAnimate = Util.supportsTransitionEnd() && animate;
- this._backdrop = document.createElement('div');
- this._backdrop.className = ClassName.BACKDROP;
-
- if (animate) {
- $(this._backdrop).addClass(animate);
- }
-
- $(this._backdrop).appendTo(document.body);
- $(this._element).on(Event.CLICK_DISMISS, function (event) {
- if (_this8._ignoreBackdropClick) {
- _this8._ignoreBackdropClick = false;
- return;
- }
-
- if (event.target !== event.currentTarget) {
- return;
- }
-
- if (_this8._config.backdrop === 'static') {
- _this8._element.focus();
- } else {
- _this8.hide();
- }
- });
-
- if (doAnimate) {
- Util.reflow(this._backdrop);
- }
-
- $(this._backdrop).addClass(ClassName.SHOW);
-
- if (!callback) {
- return;
- }
-
- if (!doAnimate) {
- callback();
- return;
- }
-
- $(this._backdrop).one(Util.TRANSITION_END, callback).emulateTransitionEnd(BACKDROP_TRANSITION_DURATION);
- } else if (!this._isShown && this._backdrop) {
- $(this._backdrop).removeClass(ClassName.SHOW);
-
- var callbackRemove = function callbackRemove() {
- _this8._removeBackdrop();
-
- if (callback) {
- callback();
- }
- };
-
- if (Util.supportsTransitionEnd() && $(this._element).hasClass(ClassName.FADE)) {
- $(this._backdrop).one(Util.TRANSITION_END, callbackRemove).emulateTransitionEnd(BACKDROP_TRANSITION_DURATION);
- } else {
- callbackRemove();
- }
- } else if (callback) {
- callback();
- }
- };
-
-
-
-
-
- _proto._adjustDialog = function _adjustDialog() {
- var isModalOverflowing = this._element.scrollHeight > document.documentElement.clientHeight;
-
- if (!this._isBodyOverflowing && isModalOverflowing) {
- this._element.style.paddingLeft = this._scrollbarWidth + "px";
- }
-
- if (this._isBodyOverflowing && !isModalOverflowing) {
- this._element.style.paddingRight = this._scrollbarWidth + "px";
- }
- };
-
- _proto._resetAdjustments = function _resetAdjustments() {
- this._element.style.paddingLeft = '';
- this._element.style.paddingRight = '';
- };
-
- _proto._checkScrollbar = function _checkScrollbar() {
- var rect = document.body.getBoundingClientRect();
- this._isBodyOverflowing = rect.left + rect.right < window.innerWidth;
- this._scrollbarWidth = this._getScrollbarWidth();
- };
-
- _proto._setScrollbar = function _setScrollbar() {
- var _this9 = this;
-
- if (this._isBodyOverflowing) {
-
-
-
- $(Selector.FIXED_CONTENT).each(function (index, element) {
- var actualPadding = $(element)[0].style.paddingRight;
- var calculatedPadding = $(element).css('padding-right');
- $(element).data('padding-right', actualPadding).css('padding-right', parseFloat(calculatedPadding) + _this9._scrollbarWidth + "px");
- });
-
- $(Selector.STICKY_CONTENT).each(function (index, element) {
- var actualMargin = $(element)[0].style.marginRight;
- var calculatedMargin = $(element).css('margin-right');
- $(element).data('margin-right', actualMargin).css('margin-right', parseFloat(calculatedMargin) - _this9._scrollbarWidth + "px");
- });
-
- $(Selector.NAVBAR_TOGGLER).each(function (index, element) {
- var actualMargin = $(element)[0].style.marginRight;
- var calculatedMargin = $(element).css('margin-right');
- $(element).data('margin-right', actualMargin).css('margin-right', parseFloat(calculatedMargin) + _this9._scrollbarWidth + "px");
- });
-
- var actualPadding = document.body.style.paddingRight;
- var calculatedPadding = $('body').css('padding-right');
- $('body').data('padding-right', actualPadding).css('padding-right', parseFloat(calculatedPadding) + this._scrollbarWidth + "px");
- }
- };
-
- _proto._resetScrollbar = function _resetScrollbar() {
-
- $(Selector.FIXED_CONTENT).each(function (index, element) {
- var padding = $(element).data('padding-right');
-
- if (typeof padding !== 'undefined') {
- $(element).css('padding-right', padding).removeData('padding-right');
- }
- });
-
- $(Selector.STICKY_CONTENT + ", " + Selector.NAVBAR_TOGGLER).each(function (index, element) {
- var margin = $(element).data('margin-right');
-
- if (typeof margin !== 'undefined') {
- $(element).css('margin-right', margin).removeData('margin-right');
- }
- });
-
- var padding = $('body').data('padding-right');
-
- if (typeof padding !== 'undefined') {
- $('body').css('padding-right', padding).removeData('padding-right');
- }
- };
-
- _proto._getScrollbarWidth = function _getScrollbarWidth() {
-
- var scrollDiv = document.createElement('div');
- scrollDiv.className = ClassName.SCROLLBAR_MEASURER;
- document.body.appendChild(scrollDiv);
- var scrollbarWidth = scrollDiv.getBoundingClientRect().width - scrollDiv.clientWidth;
- document.body.removeChild(scrollDiv);
- return scrollbarWidth;
- };
-
-
- Modal._jQueryInterface = function _jQueryInterface(config, relatedTarget) {
- return this.each(function () {
- var data = $(this).data(DATA_KEY);
-
- var _config = $.extend({}, Modal.Default, $(this).data(), typeof config === 'object' && config);
-
- if (!data) {
- data = new Modal(this, _config);
- $(this).data(DATA_KEY, data);
- }
-
- if (typeof config === 'string') {
- if (typeof data[config] === 'undefined') {
- throw new Error("No method named \"" + config + "\"");
- }
-
- data[config](relatedTarget);
- } else if (_config.show) {
- data.show(relatedTarget);
- }
- });
- };
-
- createClass(Modal, null, [{
- key: "VERSION",
- get: function get() {
- return VERSION;
- }
- }, {
- key: "Default",
- get: function get() {
- return Default;
- }
- }]);
- return Modal;
- }();
-
-
-
-
- $(document).on(Event.CLICK_DATA_API, Selector.DATA_TOGGLE, function (event) {
- var _this10 = this;
-
- var target;
- var selector = Util.getSelectorFromElement(this);
-
- if (selector) {
- target = $(selector)[0];
- }
-
- var config = $(target).data(DATA_KEY) ? 'toggle' : $.extend({}, $(target).data(), $(this).data());
-
- if (this.tagName === 'A' || this.tagName === 'AREA') {
- event.preventDefault();
- }
-
- var $target = $(target).one(Event.SHOW, function (showEvent) {
- if (showEvent.isDefaultPrevented()) {
-
- return;
- }
-
- $target.one(Event.HIDDEN, function () {
- if ($(_this10).is(':visible')) {
- _this10.focus();
- }
- });
- });
-
- Modal._jQueryInterface.call($(target), config, this);
- });
-
-
-
- $.fn[NAME] = Modal._jQueryInterface;
- $.fn[NAME].Constructor = Modal;
-
- $.fn[NAME].noConflict = function () {
- $.fn[NAME] = JQUERY_NO_CONFLICT;
- return Modal._jQueryInterface;
- };
-
- return Modal;
- }($);
-
-
-
- var Tooltip = function () {
-
-
- if (typeof Popper === 'undefined') {
- throw new Error('Bootstrap tooltips require Popper.js (https://popper.js.org)');
- }
-
-
-
-
- var NAME = 'tooltip';
- var VERSION = '4.0.0-beta.2';
- var DATA_KEY = 'bs.tooltip';
- var EVENT_KEY = "." + DATA_KEY;
- var JQUERY_NO_CONFLICT = $.fn[NAME];
- var TRANSITION_DURATION = 150;
- var CLASS_PREFIX = 'bs-tooltip';
- var BSCLS_PREFIX_REGEX = new RegExp("(^|\\s)" + CLASS_PREFIX + "\\S+", 'g');
- var DefaultType = {
- animation: 'boolean',
- template: 'string',
- title: '(string|element|function)',
- trigger: 'string',
- delay: '(number|object)',
- html: 'boolean',
- selector: '(string|boolean)',
- placement: '(string|function)',
- offset: '(number|string)',
- container: '(string|element|boolean)',
- fallbackPlacement: '(string|array)'
- };
- var AttachmentMap = {
- AUTO: 'auto',
- TOP: 'top',
- RIGHT: 'right',
- BOTTOM: 'bottom',
- LEFT: 'left'
- };
- var Default = {
- animation: true,
- template: '<div class="tooltip" role="tooltip">' + '<div class="arrow"></div>' + '<div class="tooltip-inner"></div></div>',
- trigger: 'hover focus',
- title: '',
- delay: 0,
- html: false,
- selector: false,
- placement: 'top',
- offset: 0,
- container: false,
- fallbackPlacement: 'flip'
- };
- var HoverState = {
- SHOW: 'show',
- OUT: 'out'
- };
- var Event = {
- HIDE: "hide" + EVENT_KEY,
- HIDDEN: "hidden" + EVENT_KEY,
- SHOW: "show" + EVENT_KEY,
- SHOWN: "shown" + EVENT_KEY,
- INSERTED: "inserted" + EVENT_KEY,
- CLICK: "click" + EVENT_KEY,
- FOCUSIN: "focusin" + EVENT_KEY,
- FOCUSOUT: "focusout" + EVENT_KEY,
- MOUSEENTER: "mouseenter" + EVENT_KEY,
- MOUSELEAVE: "mouseleave" + EVENT_KEY
- };
- var ClassName = {
- FADE: 'fade',
- SHOW: 'show'
- };
- var Selector = {
- TOOLTIP: '.tooltip',
- TOOLTIP_INNER: '.tooltip-inner',
- ARROW: '.arrow'
- };
- var Trigger = {
- HOVER: 'hover',
- FOCUS: 'focus',
- CLICK: 'click',
- MANUAL: 'manual'
-
-
-
- };
-
- var Tooltip =
-
- function () {
- function Tooltip(element, config) {
-
- this._isEnabled = true;
- this._timeout = 0;
- this._hoverState = '';
- this._activeTrigger = {};
- this._popper = null;
-
- this.element = element;
- this.config = this._getConfig(config);
- this.tip = null;
-
- this._setListeners();
- }
-
-
- var _proto = Tooltip.prototype;
-
-
- _proto.enable = function enable() {
- this._isEnabled = true;
- };
-
- _proto.disable = function disable() {
- this._isEnabled = false;
- };
-
- _proto.toggleEnabled = function toggleEnabled() {
- this._isEnabled = !this._isEnabled;
- };
-
- _proto.toggle = function toggle(event) {
- if (!this._isEnabled) {
- return;
- }
-
- if (event) {
- var dataKey = this.constructor.DATA_KEY;
- var context = $(event.currentTarget).data(dataKey);
-
- if (!context) {
- context = new this.constructor(event.currentTarget, this._getDelegateConfig());
- $(event.currentTarget).data(dataKey, context);
- }
-
- context._activeTrigger.click = !context._activeTrigger.click;
-
- if (context._isWithActiveTrigger()) {
- context._enter(null, context);
- } else {
- context._leave(null, context);
- }
- } else {
- if ($(this.getTipElement()).hasClass(ClassName.SHOW)) {
- this._leave(null, this);
-
- return;
- }
-
- this._enter(null, this);
- }
- };
-
- _proto.dispose = function dispose() {
- clearTimeout(this._timeout);
- $.removeData(this.element, this.constructor.DATA_KEY);
- $(this.element).off(this.constructor.EVENT_KEY);
- $(this.element).closest('.modal').off('hide.bs.modal');
-
- if (this.tip) {
- $(this.tip).remove();
- }
-
- this._isEnabled = null;
- this._timeout = null;
- this._hoverState = null;
- this._activeTrigger = null;
-
- if (this._popper !== null) {
- this._popper.destroy();
- }
-
- this._popper = null;
- this.element = null;
- this.config = null;
- this.tip = null;
- };
-
- _proto.show = function show() {
- var _this = this;
-
- if ($(this.element).css('display') === 'none') {
- throw new Error('Please use show on visible elements');
- }
-
- var showEvent = $.Event(this.constructor.Event.SHOW);
-
- if (this.isWithContent() && this._isEnabled) {
- $(this.element).trigger(showEvent);
- var isInTheDom = $.contains(this.element.ownerDocument.documentElement, this.element);
-
- if (showEvent.isDefaultPrevented() || !isInTheDom) {
- return;
- }
-
- var tip = this.getTipElement();
- var tipId = Util.getUID(this.constructor.NAME);
- tip.setAttribute('id', tipId);
- this.element.setAttribute('aria-describedby', tipId);
- this.setContent();
-
- if (this.config.animation) {
- $(tip).addClass(ClassName.FADE);
- }
-
- var placement = typeof this.config.placement === 'function' ? this.config.placement.call(this, tip, this.element) : this.config.placement;
-
- var attachment = this._getAttachment(placement);
-
- this.addAttachmentClass(attachment);
- var container = this.config.container === false ? document.body : $(this.config.container);
- $(tip).data(this.constructor.DATA_KEY, this);
-
- if (!$.contains(this.element.ownerDocument.documentElement, this.tip)) {
- $(tip).appendTo(container);
- }
-
- $(this.element).trigger(this.constructor.Event.INSERTED);
- this._popper = new Popper(this.element, tip, {
- placement: attachment,
- modifiers: {
- offset: {
- offset: this.config.offset
- },
- flip: {
- behavior: this.config.fallbackPlacement
- },
- arrow: {
- element: Selector.ARROW
- }
- },
- onCreate: function onCreate(data) {
- if (data.originalPlacement !== data.placement) {
- _this._handlePopperPlacementChange(data);
- }
- },
- onUpdate: function onUpdate(data) {
- _this._handlePopperPlacementChange(data);
- }
- });
- $(tip).addClass(ClassName.SHOW);
-
-
-
-
- if ('ontouchstart' in document.documentElement) {
- $('body').children().on('mouseover', null, $.noop);
- }
-
- var complete = function complete() {
- if (_this.config.animation) {
- _this._fixTransition();
- }
-
- var prevHoverState = _this._hoverState;
- _this._hoverState = null;
- $(_this.element).trigger(_this.constructor.Event.SHOWN);
-
- if (prevHoverState === HoverState.OUT) {
- _this._leave(null, _this);
- }
- };
-
- if (Util.supportsTransitionEnd() && $(this.tip).hasClass(ClassName.FADE)) {
- $(this.tip).one(Util.TRANSITION_END, complete).emulateTransitionEnd(Tooltip._TRANSITION_DURATION);
- } else {
- complete();
- }
- }
- };
-
- _proto.hide = function hide(callback) {
- var _this2 = this;
-
- var tip = this.getTipElement();
- var hideEvent = $.Event(this.constructor.Event.HIDE);
-
- var complete = function complete() {
- if (_this2._hoverState !== HoverState.SHOW && tip.parentNode) {
- tip.parentNode.removeChild(tip);
- }
-
- _this2._cleanTipClass();
-
- _this2.element.removeAttribute('aria-describedby');
-
- $(_this2.element).trigger(_this2.constructor.Event.HIDDEN);
-
- if (_this2._popper !== null) {
- _this2._popper.destroy();
- }
-
- if (callback) {
- callback();
- }
- };
-
- $(this.element).trigger(hideEvent);
-
- if (hideEvent.isDefaultPrevented()) {
- return;
- }
-
- $(tip).removeClass(ClassName.SHOW);
-
-
- if ('ontouchstart' in document.documentElement) {
- $('body').children().off('mouseover', null, $.noop);
- }
-
- this._activeTrigger[Trigger.CLICK] = false;
- this._activeTrigger[Trigger.FOCUS] = false;
- this._activeTrigger[Trigger.HOVER] = false;
-
- if (Util.supportsTransitionEnd() && $(this.tip).hasClass(ClassName.FADE)) {
- $(tip).one(Util.TRANSITION_END, complete).emulateTransitionEnd(TRANSITION_DURATION);
- } else {
- complete();
- }
-
- this._hoverState = '';
- };
-
- _proto.update = function update() {
- if (this._popper !== null) {
- this._popper.scheduleUpdate();
- }
- };
-
-
- _proto.isWithContent = function isWithContent() {
- return Boolean(this.getTitle());
- };
-
- _proto.addAttachmentClass = function addAttachmentClass(attachment) {
- $(this.getTipElement()).addClass(CLASS_PREFIX + "-" + attachment);
- };
-
- _proto.getTipElement = function getTipElement() {
- this.tip = this.tip || $(this.config.template)[0];
- return this.tip;
- };
-
- _proto.setContent = function setContent() {
- var $tip = $(this.getTipElement());
- this.setElementContent($tip.find(Selector.TOOLTIP_INNER), this.getTitle());
- $tip.removeClass(ClassName.FADE + " " + ClassName.SHOW);
- };
-
- _proto.setElementContent = function setElementContent($element, content) {
- var html = this.config.html;
-
- if (typeof content === 'object' && (content.nodeType || content.jquery)) {
-
- if (html) {
- if (!$(content).parent().is($element)) {
- $element.empty().append(content);
- }
- } else {
- $element.text($(content).text());
- }
- } else {
- $element[html ? 'html' : 'text'](content);
- }
- };
-
- _proto.getTitle = function getTitle() {
- var title = this.element.getAttribute('data-original-title');
-
- if (!title) {
- title = typeof this.config.title === 'function' ? this.config.title.call(this.element) : this.config.title;
- }
-
- return title;
- };
-
-
- _proto._getAttachment = function _getAttachment(placement) {
- return AttachmentMap[placement.toUpperCase()];
- };
-
- _proto._setListeners = function _setListeners() {
- var _this3 = this;
-
- var triggers = this.config.trigger.split(' ');
- triggers.forEach(function (trigger) {
- if (trigger === 'click') {
- $(_this3.element).on(_this3.constructor.Event.CLICK, _this3.config.selector, function (event) {
- return _this3.toggle(event);
- });
- } else if (trigger !== Trigger.MANUAL) {
- var eventIn = trigger === Trigger.HOVER ? _this3.constructor.Event.MOUSEENTER : _this3.constructor.Event.FOCUSIN;
- var eventOut = trigger === Trigger.HOVER ? _this3.constructor.Event.MOUSELEAVE : _this3.constructor.Event.FOCUSOUT;
- $(_this3.element).on(eventIn, _this3.config.selector, function (event) {
- return _this3._enter(event);
- }).on(eventOut, _this3.config.selector, function (event) {
- return _this3._leave(event);
- });
- }
-
- $(_this3.element).closest('.modal').on('hide.bs.modal', function () {
- return _this3.hide();
- });
- });
-
- if (this.config.selector) {
- this.config = $.extend({}, this.config, {
- trigger: 'manual',
- selector: ''
- });
- } else {
- this._fixTitle();
- }
- };
-
- _proto._fixTitle = function _fixTitle() {
- var titleType = typeof this.element.getAttribute('data-original-title');
-
- if (this.element.getAttribute('title') || titleType !== 'string') {
- this.element.setAttribute('data-original-title', this.element.getAttribute('title') || '');
- this.element.setAttribute('title', '');
- }
- };
-
- _proto._enter = function _enter(event, context) {
- var dataKey = this.constructor.DATA_KEY;
- context = context || $(event.currentTarget).data(dataKey);
-
- if (!context) {
- context = new this.constructor(event.currentTarget, this._getDelegateConfig());
- $(event.currentTarget).data(dataKey, context);
- }
-
- if (event) {
- context._activeTrigger[event.type === 'focusin' ? Trigger.FOCUS : Trigger.HOVER] = true;
- }
-
- if ($(context.getTipElement()).hasClass(ClassName.SHOW) || context._hoverState === HoverState.SHOW) {
- context._hoverState = HoverState.SHOW;
- return;
- }
-
- clearTimeout(context._timeout);
- context._hoverState = HoverState.SHOW;
-
- if (!context.config.delay || !context.config.delay.show) {
- context.show();
- return;
- }
-
- context._timeout = setTimeout(function () {
- if (context._hoverState === HoverState.SHOW) {
- context.show();
- }
- }, context.config.delay.show);
- };
-
- _proto._leave = function _leave(event, context) {
- var dataKey = this.constructor.DATA_KEY;
- context = context || $(event.currentTarget).data(dataKey);
-
- if (!context) {
- context = new this.constructor(event.currentTarget, this._getDelegateConfig());
- $(event.currentTarget).data(dataKey, context);
- }
-
- if (event) {
- context._activeTrigger[event.type === 'focusout' ? Trigger.FOCUS : Trigger.HOVER] = false;
- }
-
- if (context._isWithActiveTrigger()) {
- return;
- }
-
- clearTimeout(context._timeout);
- context._hoverState = HoverState.OUT;
-
- if (!context.config.delay || !context.config.delay.hide) {
- context.hide();
- return;
- }
-
- context._timeout = setTimeout(function () {
- if (context._hoverState === HoverState.OUT) {
- context.hide();
- }
- }, context.config.delay.hide);
- };
-
- _proto._isWithActiveTrigger = function _isWithActiveTrigger() {
- for (var trigger in this._activeTrigger) {
- if (this._activeTrigger[trigger]) {
- return true;
- }
- }
-
- return false;
- };
-
- _proto._getConfig = function _getConfig(config) {
- config = $.extend({}, this.constructor.Default, $(this.element).data(), config);
-
- if (typeof config.delay === 'number') {
- config.delay = {
- show: config.delay,
- hide: config.delay
- };
- }
-
- if (typeof config.title === 'number') {
- config.title = config.title.toString();
- }
-
- if (typeof config.content === 'number') {
- config.content = config.content.toString();
- }
-
- Util.typeCheckConfig(NAME, config, this.constructor.DefaultType);
- return config;
- };
-
- _proto._getDelegateConfig = function _getDelegateConfig() {
- var config = {};
-
- if (this.config) {
- for (var key in this.config) {
- if (this.constructor.Default[key] !== this.config[key]) {
- config[key] = this.config[key];
- }
- }
- }
-
- return config;
- };
-
- _proto._cleanTipClass = function _cleanTipClass() {
- var $tip = $(this.getTipElement());
- var tabClass = $tip.attr('class').match(BSCLS_PREFIX_REGEX);
-
- if (tabClass !== null && tabClass.length > 0) {
- $tip.removeClass(tabClass.join(''));
- }
- };
-
- _proto._handlePopperPlacementChange = function _handlePopperPlacementChange(data) {
- this._cleanTipClass();
-
- this.addAttachmentClass(this._getAttachment(data.placement));
- };
-
- _proto._fixTransition = function _fixTransition() {
- var tip = this.getTipElement();
- var initConfigAnimation = this.config.animation;
-
- if (tip.getAttribute('x-placement') !== null) {
- return;
- }
-
- $(tip).removeClass(ClassName.FADE);
- this.config.animation = false;
- this.hide();
- this.show();
- this.config.animation = initConfigAnimation;
- };
-
-
- Tooltip._jQueryInterface = function _jQueryInterface(config) {
- return this.each(function () {
- var data = $(this).data(DATA_KEY);
-
- var _config = typeof config === 'object' && config;
-
- if (!data && /dispose|hide/.test(config)) {
- return;
- }
-
- if (!data) {
- data = new Tooltip(this, _config);
- $(this).data(DATA_KEY, data);
- }
-
- if (typeof config === 'string') {
- if (typeof data[config] === 'undefined') {
- throw new Error("No method named \"" + config + "\"");
- }
-
- data[config]();
- }
- });
- };
-
- createClass(Tooltip, null, [{
- key: "VERSION",
- get: function get() {
- return VERSION;
- }
- }, {
- key: "Default",
- get: function get() {
- return Default;
- }
- }, {
- key: "NAME",
- get: function get() {
- return NAME;
- }
- }, {
- key: "DATA_KEY",
- get: function get() {
- return DATA_KEY;
- }
- }, {
- key: "Event",
- get: function get() {
- return Event;
- }
- }, {
- key: "EVENT_KEY",
- get: function get() {
- return EVENT_KEY;
- }
- }, {
- key: "DefaultType",
- get: function get() {
- return DefaultType;
- }
- }]);
- return Tooltip;
- }();
-
-
-
-
- $.fn[NAME] = Tooltip._jQueryInterface;
- $.fn[NAME].Constructor = Tooltip;
-
- $.fn[NAME].noConflict = function () {
- $.fn[NAME] = JQUERY_NO_CONFLICT;
- return Tooltip._jQueryInterface;
- };
-
- return Tooltip;
- }($, Popper);
-
-
-
- var Popover = function () {
-
-
- var NAME = 'popover';
- var VERSION = '4.0.0-beta.2';
- var DATA_KEY = 'bs.popover';
- var EVENT_KEY = "." + DATA_KEY;
- var JQUERY_NO_CONFLICT = $.fn[NAME];
- var CLASS_PREFIX = 'bs-popover';
- var BSCLS_PREFIX_REGEX = new RegExp("(^|\\s)" + CLASS_PREFIX + "\\S+", 'g');
- var Default = $.extend({}, Tooltip.Default, {
- placement: 'right',
- trigger: 'click',
- content: '',
- template: '<div class="popover" role="tooltip">' + '<div class="arrow"></div>' + '<h3 class="popover-header"></h3>' + '<div class="popover-body"></div></div>'
- });
- var DefaultType = $.extend({}, Tooltip.DefaultType, {
- content: '(string|element|function)'
- });
- var ClassName = {
- FADE: 'fade',
- SHOW: 'show'
- };
- var Selector = {
- TITLE: '.popover-header',
- CONTENT: '.popover-body'
- };
- var Event = {
- HIDE: "hide" + EVENT_KEY,
- HIDDEN: "hidden" + EVENT_KEY,
- SHOW: "show" + EVENT_KEY,
- SHOWN: "shown" + EVENT_KEY,
- INSERTED: "inserted" + EVENT_KEY,
- CLICK: "click" + EVENT_KEY,
- FOCUSIN: "focusin" + EVENT_KEY,
- FOCUSOUT: "focusout" + EVENT_KEY,
- MOUSEENTER: "mouseenter" + EVENT_KEY,
- MOUSELEAVE: "mouseleave" + EVENT_KEY
-
-
-
- };
-
- var Popover =
-
- function (_Tooltip) {
- inheritsLoose(Popover, _Tooltip);
-
- function Popover() {
- return _Tooltip.apply(this, arguments) || this;
- }
-
- var _proto = Popover.prototype;
-
-
- _proto.isWithContent = function isWithContent() {
- return this.getTitle() || this._getContent();
- };
-
- _proto.addAttachmentClass = function addAttachmentClass(attachment) {
- $(this.getTipElement()).addClass(CLASS_PREFIX + "-" + attachment);
- };
-
- _proto.getTipElement = function getTipElement() {
- this.tip = this.tip || $(this.config.template)[0];
- return this.tip;
- };
-
- _proto.setContent = function setContent() {
- var $tip = $(this.getTipElement());
-
- this.setElementContent($tip.find(Selector.TITLE), this.getTitle());
- this.setElementContent($tip.find(Selector.CONTENT), this._getContent());
- $tip.removeClass(ClassName.FADE + " " + ClassName.SHOW);
- };
-
-
- _proto._getContent = function _getContent() {
- return this.element.getAttribute('data-content') || (typeof this.config.content === 'function' ? this.config.content.call(this.element) : this.config.content);
- };
-
- _proto._cleanTipClass = function _cleanTipClass() {
- var $tip = $(this.getTipElement());
- var tabClass = $tip.attr('class').match(BSCLS_PREFIX_REGEX);
-
- if (tabClass !== null && tabClass.length > 0) {
- $tip.removeClass(tabClass.join(''));
- }
- };
-
-
- Popover._jQueryInterface = function _jQueryInterface(config) {
- return this.each(function () {
- var data = $(this).data(DATA_KEY);
-
- var _config = typeof config === 'object' ? config : null;
-
- if (!data && /destroy|hide/.test(config)) {
- return;
- }
-
- if (!data) {
- data = new Popover(this, _config);
- $(this).data(DATA_KEY, data);
- }
-
- if (typeof config === 'string') {
- if (typeof data[config] === 'undefined') {
- throw new Error("No method named \"" + config + "\"");
- }
-
- data[config]();
- }
- });
- };
-
- createClass(Popover, null, [{
- key: "VERSION",
-
- get: function get() {
- return VERSION;
- }
- }, {
- key: "Default",
- get: function get() {
- return Default;
- }
- }, {
- key: "NAME",
- get: function get() {
- return NAME;
- }
- }, {
- key: "DATA_KEY",
- get: function get() {
- return DATA_KEY;
- }
- }, {
- key: "Event",
- get: function get() {
- return Event;
- }
- }, {
- key: "EVENT_KEY",
- get: function get() {
- return EVENT_KEY;
- }
- }, {
- key: "DefaultType",
- get: function get() {
- return DefaultType;
- }
- }]);
- return Popover;
- }(Tooltip);
-
-
-
-
- $.fn[NAME] = Popover._jQueryInterface;
- $.fn[NAME].Constructor = Popover;
-
- $.fn[NAME].noConflict = function () {
- $.fn[NAME] = JQUERY_NO_CONFLICT;
- return Popover._jQueryInterface;
- };
-
- return Popover;
- }($);
-
-
-
- var ScrollSpy = function () {
-
-
- var NAME = 'scrollspy';
- var VERSION = '4.0.0-beta.2';
- var DATA_KEY = 'bs.scrollspy';
- var EVENT_KEY = "." + DATA_KEY;
- var DATA_API_KEY = '.data-api';
- var JQUERY_NO_CONFLICT = $.fn[NAME];
- var Default = {
- offset: 10,
- method: 'auto',
- target: ''
- };
- var DefaultType = {
- offset: 'number',
- method: 'string',
- target: '(string|element)'
- };
- var Event = {
- ACTIVATE: "activate" + EVENT_KEY,
- SCROLL: "scroll" + EVENT_KEY,
- LOAD_DATA_API: "load" + EVENT_KEY + DATA_API_KEY
- };
- var ClassName = {
- DROPDOWN_ITEM: 'dropdown-item',
- DROPDOWN_MENU: 'dropdown-menu',
- ACTIVE: 'active'
- };
- var Selector = {
- DATA_SPY: '[data-spy="scroll"]',
- ACTIVE: '.active',
- NAV_LIST_GROUP: '.nav, .list-group',
- NAV_LINKS: '.nav-link',
- NAV_ITEMS: '.nav-item',
- LIST_ITEMS: '.list-group-item',
- DROPDOWN: '.dropdown',
- DROPDOWN_ITEMS: '.dropdown-item',
- DROPDOWN_TOGGLE: '.dropdown-toggle'
- };
- var OffsetMethod = {
- OFFSET: 'offset',
- POSITION: 'position'
-
-
-
- };
-
- var ScrollSpy =
-
- function () {
- function ScrollSpy(element, config) {
- var _this = this;
-
- this._element = element;
- this._scrollElement = element.tagName === 'BODY' ? window : element;
- this._config = this._getConfig(config);
- this._selector = this._config.target + " " + Selector.NAV_LINKS + "," + (this._config.target + " " + Selector.LIST_ITEMS + ",") + (this._config.target + " " + Selector.DROPDOWN_ITEMS);
- this._offsets = [];
- this._targets = [];
- this._activeTarget = null;
- this._scrollHeight = 0;
- $(this._scrollElement).on(Event.SCROLL, function (event) {
- return _this._process(event);
- });
- this.refresh();
-
- this._process();
- }
-
-
- var _proto = ScrollSpy.prototype;
-
-
- _proto.refresh = function refresh() {
- var _this2 = this;
-
- var autoMethod = this._scrollElement !== this._scrollElement.window ? OffsetMethod.POSITION : OffsetMethod.OFFSET;
- var offsetMethod = this._config.method === 'auto' ? autoMethod : this._config.method;
- var offsetBase = offsetMethod === OffsetMethod.POSITION ? this._getScrollTop() : 0;
- this._offsets = [];
- this._targets = [];
- this._scrollHeight = this._getScrollHeight();
- var targets = $.makeArray($(this._selector));
- targets.map(function (element) {
- var target;
- var targetSelector = Util.getSelectorFromElement(element);
-
- if (targetSelector) {
- target = $(targetSelector)[0];
- }
-
- if (target) {
- var targetBCR = target.getBoundingClientRect();
-
- if (targetBCR.width || targetBCR.height) {
-
- return [$(target)[offsetMethod]().top + offsetBase, targetSelector];
- }
- }
-
- return null;
- }).filter(function (item) {
- return item;
- }).sort(function (a, b) {
- return a[0] - b[0];
- }).forEach(function (item) {
- _this2._offsets.push(item[0]);
-
- _this2._targets.push(item[1]);
- });
- };
-
- _proto.dispose = function dispose() {
- $.removeData(this._element, DATA_KEY);
- $(this._scrollElement).off(EVENT_KEY);
- this._element = null;
- this._scrollElement = null;
- this._config = null;
- this._selector = null;
- this._offsets = null;
- this._targets = null;
- this._activeTarget = null;
- this._scrollHeight = null;
- };
-
-
- _proto._getConfig = function _getConfig(config) {
- config = $.extend({}, Default, config);
-
- if (typeof config.target !== 'string') {
- var id = $(config.target).attr('id');
-
- if (!id) {
- id = Util.getUID(NAME);
- $(config.target).attr('id', id);
- }
-
- config.target = "#" + id;
- }
-
- Util.typeCheckConfig(NAME, config, DefaultType);
- return config;
- };
-
- _proto._getScrollTop = function _getScrollTop() {
- return this._scrollElement === window ? this._scrollElement.pageYOffset : this._scrollElement.scrollTop;
- };
-
- _proto._getScrollHeight = function _getScrollHeight() {
- return this._scrollElement.scrollHeight || Math.max(document.body.scrollHeight, document.documentElement.scrollHeight);
- };
-
- _proto._getOffsetHeight = function _getOffsetHeight() {
- return this._scrollElement === window ? window.innerHeight : this._scrollElement.getBoundingClientRect().height;
- };
-
- _proto._process = function _process() {
- var scrollTop = this._getScrollTop() + this._config.offset;
-
- var scrollHeight = this._getScrollHeight();
-
- var maxScroll = this._config.offset + scrollHeight - this._getOffsetHeight();
-
- if (this._scrollHeight !== scrollHeight) {
- this.refresh();
- }
-
- if (scrollTop >= maxScroll) {
- var target = this._targets[this._targets.length - 1];
-
- if (this._activeTarget !== target) {
- this._activate(target);
- }
-
- return;
- }
-
- if (this._activeTarget && scrollTop < this._offsets[0] && this._offsets[0] > 0) {
- this._activeTarget = null;
-
- this._clear();
-
- return;
- }
-
- for (var i = this._offsets.length; i--;) {
- var isActiveTarget = this._activeTarget !== this._targets[i] && scrollTop >= this._offsets[i] && (typeof this._offsets[i + 1] === 'undefined' || scrollTop < this._offsets[i + 1]);
-
- if (isActiveTarget) {
- this._activate(this._targets[i]);
- }
- }
- };
-
- _proto._activate = function _activate(target) {
- this._activeTarget = target;
-
- this._clear();
-
- var queries = this._selector.split(',');
-
-
- queries = queries.map(function (selector) {
- return selector + "[data-target=\"" + target + "\"]," + (selector + "[href=\"" + target + "\"]");
- });
- var $link = $(queries.join(','));
-
- if ($link.hasClass(ClassName.DROPDOWN_ITEM)) {
- $link.closest(Selector.DROPDOWN).find(Selector.DROPDOWN_TOGGLE).addClass(ClassName.ACTIVE);
- $link.addClass(ClassName.ACTIVE);
- } else {
-
- $link.addClass(ClassName.ACTIVE);
-
-
- $link.parents(Selector.NAV_LIST_GROUP).prev(Selector.NAV_LINKS + ", " + Selector.LIST_ITEMS).addClass(ClassName.ACTIVE);
-
- $link.parents(Selector.NAV_LIST_GROUP).prev(Selector.NAV_ITEMS).children(Selector.NAV_LINKS).addClass(ClassName.ACTIVE);
- }
-
- $(this._scrollElement).trigger(Event.ACTIVATE, {
- relatedTarget: target
- });
- };
-
- _proto._clear = function _clear() {
- $(this._selector).filter(Selector.ACTIVE).removeClass(ClassName.ACTIVE);
- };
-
-
- ScrollSpy._jQueryInterface = function _jQueryInterface(config) {
- return this.each(function () {
- var data = $(this).data(DATA_KEY);
-
- var _config = typeof config === 'object' && config;
-
- if (!data) {
- data = new ScrollSpy(this, _config);
- $(this).data(DATA_KEY, data);
- }
-
- if (typeof config === 'string') {
- if (typeof data[config] === 'undefined') {
- throw new Error("No method named \"" + config + "\"");
- }
-
- data[config]();
- }
- });
- };
-
- createClass(ScrollSpy, null, [{
- key: "VERSION",
- get: function get() {
- return VERSION;
- }
- }, {
- key: "Default",
- get: function get() {
- return Default;
- }
- }]);
- return ScrollSpy;
- }();
-
-
-
-
- $(window).on(Event.LOAD_DATA_API, function () {
- var scrollSpys = $.makeArray($(Selector.DATA_SPY));
-
- for (var i = scrollSpys.length; i--;) {
- var $spy = $(scrollSpys[i]);
-
- ScrollSpy._jQueryInterface.call($spy, $spy.data());
- }
- });
-
-
-
- $.fn[NAME] = ScrollSpy._jQueryInterface;
- $.fn[NAME].Constructor = ScrollSpy;
-
- $.fn[NAME].noConflict = function () {
- $.fn[NAME] = JQUERY_NO_CONFLICT;
- return ScrollSpy._jQueryInterface;
- };
-
- return ScrollSpy;
- }($);
-
-
-
- var Tab = function () {
-
-
- var NAME = 'tab';
- var VERSION = '4.0.0-beta.2';
- var DATA_KEY = 'bs.tab';
- var EVENT_KEY = "." + DATA_KEY;
- var DATA_API_KEY = '.data-api';
- var JQUERY_NO_CONFLICT = $.fn[NAME];
- var TRANSITION_DURATION = 150;
- var Event = {
- HIDE: "hide" + EVENT_KEY,
- HIDDEN: "hidden" + EVENT_KEY,
- SHOW: "show" + EVENT_KEY,
- SHOWN: "shown" + EVENT_KEY,
- CLICK_DATA_API: "click" + EVENT_KEY + DATA_API_KEY
- };
- var ClassName = {
- DROPDOWN_MENU: 'dropdown-menu',
- ACTIVE: 'active',
- DISABLED: 'disabled',
- FADE: 'fade',
- SHOW: 'show'
- };
- var Selector = {
- DROPDOWN: '.dropdown',
- NAV_LIST_GROUP: '.nav, .list-group',
- ACTIVE: '.active',
- ACTIVE_UL: '> li > .active',
- DATA_TOGGLE: '[data-toggle="tab"], [data-toggle="pill"], [data-toggle="list"]',
- DROPDOWN_TOGGLE: '.dropdown-toggle',
- DROPDOWN_ACTIVE_CHILD: '> .dropdown-menu .active'
-
-
-
- };
-
- var Tab =
-
- function () {
- function Tab(element) {
- this._element = element;
- }
-
-
- var _proto = Tab.prototype;
-
-
- _proto.show = function show() {
- var _this = this;
-
- if (this._element.parentNode && this._element.parentNode.nodeType === Node.ELEMENT_NODE && $(this._element).hasClass(ClassName.ACTIVE) || $(this._element).hasClass(ClassName.DISABLED)) {
- return;
- }
-
- var target;
- var previous;
- var listElement = $(this._element).closest(Selector.NAV_LIST_GROUP)[0];
- var selector = Util.getSelectorFromElement(this._element);
-
- if (listElement) {
- var itemSelector = listElement.nodeName === 'UL' ? Selector.ACTIVE_UL : Selector.ACTIVE;
- previous = $.makeArray($(listElement).find(itemSelector));
- previous = previous[previous.length - 1];
- }
-
- var hideEvent = $.Event(Event.HIDE, {
- relatedTarget: this._element
- });
- var showEvent = $.Event(Event.SHOW, {
- relatedTarget: previous
- });
-
- if (previous) {
- $(previous).trigger(hideEvent);
- }
-
- $(this._element).trigger(showEvent);
-
- if (showEvent.isDefaultPrevented() || hideEvent.isDefaultPrevented()) {
- return;
- }
-
- if (selector) {
- target = $(selector)[0];
- }
-
- this._activate(this._element, listElement);
-
- var complete = function complete() {
- var hiddenEvent = $.Event(Event.HIDDEN, {
- relatedTarget: _this._element
- });
- var shownEvent = $.Event(Event.SHOWN, {
- relatedTarget: previous
- });
- $(previous).trigger(hiddenEvent);
- $(_this._element).trigger(shownEvent);
- };
-
- if (target) {
- this._activate(target, target.parentNode, complete);
- } else {
- complete();
- }
- };
-
- _proto.dispose = function dispose() {
- $.removeData(this._element, DATA_KEY);
- this._element = null;
- };
-
-
- _proto._activate = function _activate(element, container, callback) {
- var _this2 = this;
-
- var activeElements;
-
- if (container.nodeName === 'UL') {
- activeElements = $(container).find(Selector.ACTIVE_UL);
- } else {
- activeElements = $(container).children(Selector.ACTIVE);
- }
-
- var active = activeElements[0];
- var isTransitioning = callback && Util.supportsTransitionEnd() && active && $(active).hasClass(ClassName.FADE);
-
- var complete = function complete() {
- return _this2._transitionComplete(element, active, isTransitioning, callback);
- };
-
- if (active && isTransitioning) {
- $(active).one(Util.TRANSITION_END, complete).emulateTransitionEnd(TRANSITION_DURATION);
- } else {
- complete();
- }
-
- if (active) {
- $(active).removeClass(ClassName.SHOW);
- }
- };
-
- _proto._transitionComplete = function _transitionComplete(element, active, isTransitioning, callback) {
- if (active) {
- $(active).removeClass(ClassName.ACTIVE);
- var dropdownChild = $(active.parentNode).find(Selector.DROPDOWN_ACTIVE_CHILD)[0];
-
- if (dropdownChild) {
- $(dropdownChild).removeClass(ClassName.ACTIVE);
- }
-
- if (active.getAttribute('role') === 'tab') {
- active.setAttribute('aria-selected', false);
- }
- }
-
- $(element).addClass(ClassName.ACTIVE);
-
- if (element.getAttribute('role') === 'tab') {
- element.setAttribute('aria-selected', true);
- }
-
- if (isTransitioning) {
- Util.reflow(element);
- $(element).addClass(ClassName.SHOW);
- } else {
- $(element).removeClass(ClassName.FADE);
- }
-
- if (element.parentNode && $(element.parentNode).hasClass(ClassName.DROPDOWN_MENU)) {
- var dropdownElement = $(element).closest(Selector.DROPDOWN)[0];
-
- if (dropdownElement) {
- $(dropdownElement).find(Selector.DROPDOWN_TOGGLE).addClass(ClassName.ACTIVE);
- }
-
- element.setAttribute('aria-expanded', true);
- }
-
- if (callback) {
- callback();
- }
- };
-
-
- Tab._jQueryInterface = function _jQueryInterface(config) {
- return this.each(function () {
- var $this = $(this);
- var data = $this.data(DATA_KEY);
-
- if (!data) {
- data = new Tab(this);
- $this.data(DATA_KEY, data);
- }
-
- if (typeof config === 'string') {
- if (typeof data[config] === 'undefined') {
- throw new Error("No method named \"" + config + "\"");
- }
-
- data[config]();
- }
- });
- };
-
- createClass(Tab, null, [{
- key: "VERSION",
- get: function get() {
- return VERSION;
- }
- }]);
- return Tab;
- }();
-
-
-
-
- $(document).on(Event.CLICK_DATA_API, Selector.DATA_TOGGLE, function (event) {
- event.preventDefault();
-
- Tab._jQueryInterface.call($(this), 'show');
- });
-
-
-
- $.fn[NAME] = Tab._jQueryInterface;
- $.fn[NAME].Constructor = Tab;
-
- $.fn[NAME].noConflict = function () {
- $.fn[NAME] = JQUERY_NO_CONFLICT;
- return Tab._jQueryInterface;
- };
-
- return Tab;
- }($);
-
-
-
- (function () {
- if (typeof $ === 'undefined') {
- throw new Error('Bootstrap\'s JavaScript requires jQuery. jQuery must be included before Bootstrap\'s JavaScript.');
- }
-
- var version = $.fn.jquery.split(' ')[0].split('.');
- var minMajor = 1;
- var ltMajor = 2;
- var minMinor = 9;
- var minPatch = 1;
- var maxMajor = 4;
-
- if (version[0] < ltMajor && version[1] < minMinor || version[0] === minMajor && version[1] === minMinor && version[2] < minPatch || version[0] >= maxMajor) {
- throw new Error('Bootstrap\'s JavaScript requires at least jQuery v1.9.1 but less than v4.0.0');
- }
- })($);
-
- exports.Util = Util;
- exports.Alert = Alert;
- exports.Button = Button;
- exports.Carousel = Carousel;
- exports.Collapse = Collapse;
- exports.Dropdown = Dropdown;
- exports.Modal = Modal;
- exports.Popover = Popover;
- exports.Scrollspy = ScrollSpy;
- exports.Tab = Tab;
- exports.Tooltip = Tooltip;
-
- return exports;
-
- }({},$));
|