123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209421042114212421342144215421642174218421942204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245424642474248424942504251425242534254425542564257425842594260426142624263426442654266426742684269427042714272427342744275427642774278427942804281428242834284428542864287428842894290429142924293429442954296429742984299430043014302430343044305430643074308430943104311431243134314431543164317431843194320432143224323432443254326432743284329433043314332433343344335433643374338433943404341434243434344434543464347434843494350435143524353435443554356435743584359436043614362436343644365436643674368436943704371437243734374437543764377437843794380438143824383438443854386438743884389439043914392439343944395439643974398439944004401440244034404440544064407440844094410441144124413441444154416441744184419442044214422442344244425442644274428442944304431443244334434443544364437443844394440444144424443444444454446444744484449445044514452445344544455445644574458445944604461446244634464446544664467446844694470447144724473447444754476447744784479448044814482448344844485448644874488448944904491449244934494449544964497449844994500450145024503450445054506450745084509451045114512451345144515451645174518451945204521452245234524452545264527452845294530453145324533453445354536453745384539454045414542454345444545454645474548454945504551455245534554455545564557455845594560456145624563456445654566456745684569457045714572457345744575457645774578457945804581458245834584458545864587458845894590459145924593459445954596459745984599460046014602460346044605460646074608460946104611461246134614461546164617461846194620462146224623462446254626462746284629463046314632463346344635463646374638463946404641464246434644464546464647464846494650465146524653465446554656465746584659466046614662466346644665466646674668466946704671467246734674467546764677467846794680468146824683468446854686468746884689469046914692469346944695469646974698469947004701470247034704470547064707470847094710471147124713471447154716471747184719472047214722472347244725472647274728472947304731473247334734473547364737473847394740474147424743474447454746474747484749475047514752475347544755475647574758475947604761476247634764476547664767476847694770477147724773477447754776477747784779478047814782478347844785478647874788478947904791479247934794479547964797479847994800480148024803480448054806480748084809481048114812481348144815481648174818481948204821482248234824482548264827482848294830483148324833483448354836483748384839484048414842484348444845484648474848484948504851485248534854485548564857485848594860486148624863486448654866486748684869487048714872487348744875487648774878487948804881488248834884488548864887488848894890489148924893489448954896489748984899490049014902490349044905490649074908490949104911491249134914491549164917491849194920492149224923492449254926492749284929493049314932493349344935493649374938493949404941494249434944494549464947494849494950495149524953495449554956495749584959496049614962496349644965496649674968496949704971497249734974497549764977497849794980498149824983498449854986498749884989499049914992499349944995499649974998499950005001500250035004500550065007500850095010501150125013501450155016501750185019502050215022502350245025502650275028502950305031503250335034503550365037503850395040504150425043504450455046504750485049505050515052505350545055505650575058505950605061506250635064506550665067506850695070507150725073507450755076507750785079508050815082508350845085508650875088508950905091509250935094509550965097509850995100510151025103510451055106510751085109511051115112511351145115511651175118511951205121512251235124512551265127512851295130513151325133513451355136513751385139514051415142514351445145514651475148514951505151515251535154515551565157515851595160516151625163516451655166516751685169517051715172517351745175517651775178517951805181518251835184518551865187518851895190519151925193519451955196519751985199520052015202520352045205520652075208520952105211521252135214521552165217521852195220522152225223522452255226522752285229523052315232523352345235523652375238523952405241524252435244524552465247524852495250525152525253525452555256525752585259526052615262526352645265526652675268526952705271527252735274527552765277527852795280528152825283528452855286528752885289529052915292529352945295529652975298529953005301530253035304530553065307530853095310531153125313531453155316531753185319532053215322532353245325532653275328532953305331533253335334533553365337533853395340534153425343534453455346534753485349535053515352535353545355535653575358535953605361536253635364536553665367536853695370537153725373537453755376537753785379538053815382538353845385538653875388538953905391539253935394539553965397539853995400540154025403540454055406540754085409541054115412541354145415541654175418541954205421542254235424542554265427542854295430543154325433543454355436543754385439544054415442544354445445544654475448544954505451545254535454545554565457545854595460546154625463546454655466546754685469547054715472547354745475547654775478547954805481548254835484548554865487548854895490549154925493549454955496549754985499550055015502550355045505550655075508550955105511551255135514551555165517551855195520552155225523552455255526552755285529553055315532553355345535553655375538553955405541554255435544554555465547554855495550555155525553555455555556555755585559556055615562556355645565556655675568556955705571557255735574557555765577557855795580558155825583558455855586558755885589559055915592559355945595559655975598559956005601560256035604560556065607560856095610561156125613561456155616561756185619562056215622562356245625562656275628562956305631563256335634563556365637563856395640564156425643564456455646564756485649565056515652565356545655565656575658565956605661566256635664566556665667566856695670567156725673567456755676567756785679568056815682568356845685568656875688568956905691569256935694569556965697569856995700570157025703570457055706570757085709571057115712571357145715571657175718571957205721572257235724572557265727572857295730573157325733573457355736573757385739574057415742574357445745574657475748574957505751575257535754575557565757575857595760576157625763576457655766576757685769577057715772577357745775577657775778577957805781578257835784578557865787578857895790579157925793579457955796579757985799580058015802580358045805580658075808580958105811581258135814581558165817581858195820582158225823582458255826582758285829583058315832583358345835583658375838583958405841584258435844584558465847584858495850585158525853585458555856585758585859586058615862586358645865586658675868586958705871587258735874587558765877587858795880588158825883588458855886588758885889589058915892589358945895589658975898589959005901590259035904590559065907590859095910591159125913591459155916591759185919592059215922592359245925592659275928592959305931593259335934593559365937593859395940594159425943594459455946594759485949595059515952595359545955595659575958595959605961596259635964596559665967596859695970597159725973597459755976597759785979598059815982598359845985598659875988598959905991599259935994599559965997599859996000600160026003600460056006600760086009601060116012601360146015601660176018601960206021602260236024602560266027602860296030603160326033603460356036603760386039604060416042604360446045604660476048604960506051605260536054605560566057605860596060606160626063606460656066606760686069607060716072607360746075607660776078607960806081608260836084608560866087608860896090609160926093609460956096609760986099610061016102610361046105610661076108610961106111611261136114611561166117611861196120612161226123612461256126612761286129613061316132613361346135613661376138613961406141614261436144614561466147614861496150615161526153615461556156615761586159616061616162616361646165616661676168616961706171617261736174617561766177617861796180618161826183618461856186618761886189619061916192619361946195619661976198619962006201620262036204620562066207620862096210621162126213621462156216621762186219622062216222622362246225622662276228622962306231623262336234623562366237623862396240624162426243624462456246624762486249625062516252625362546255625662576258625962606261626262636264626562666267626862696270627162726273627462756276627762786279628062816282628362846285628662876288628962906291629262936294629562966297629862996300630163026303630463056306630763086309631063116312631363146315631663176318631963206321632263236324632563266327632863296330633163326333633463356336633763386339634063416342634363446345634663476348634963506351635263536354635563566357635863596360636163626363636463656366636763686369637063716372637363746375637663776378637963806381638263836384638563866387638863896390639163926393639463956396639763986399640064016402640364046405640664076408640964106411641264136414641564166417641864196420642164226423642464256426642764286429643064316432643364346435643664376438643964406441644264436444644564466447644864496450645164526453645464556456645764586459646064616462646364646465646664676468646964706471647264736474647564766477647864796480648164826483648464856486648764886489649064916492649364946495649664976498649965006501650265036504650565066507650865096510651165126513651465156516651765186519652065216522652365246525652665276528652965306531653265336534653565366537653865396540654165426543654465456546654765486549655065516552655365546555655665576558655965606561656265636564656565666567656865696570657165726573657465756576657765786579658065816582658365846585658665876588658965906591659265936594659565966597659865996600660166026603660466056606660766086609661066116612661366146615661666176618661966206621662266236624662566266627662866296630663166326633663466356636663766386639664066416642664366446645664666476648664966506651665266536654665566566657665866596660666166626663666466656666666766686669667066716672667366746675667666776678667966806681668266836684668566866687668866896690669166926693669466956696669766986699670067016702670367046705670667076708670967106711671267136714671567166717671867196720672167226723672467256726672767286729673067316732673367346735673667376738673967406741674267436744674567466747674867496750675167526753675467556756675767586759676067616762676367646765676667676768676967706771677267736774677567766777677867796780678167826783678467856786678767886789679067916792679367946795679667976798679968006801680268036804680568066807680868096810681168126813681468156816681768186819682068216822682368246825682668276828682968306831683268336834683568366837683868396840684168426843684468456846684768486849685068516852685368546855685668576858685968606861686268636864686568666867686868696870687168726873687468756876687768786879688068816882688368846885688668876888688968906891689268936894689568966897689868996900690169026903690469056906690769086909691069116912691369146915691669176918691969206921692269236924692569266927692869296930693169326933693469356936693769386939694069416942694369446945694669476948694969506951695269536954695569566957695869596960696169626963696469656966696769686969697069716972697369746975697669776978697969806981698269836984698569866987698869896990699169926993699469956996699769986999700070017002700370047005700670077008700970107011701270137014701570167017701870197020702170227023702470257026702770287029703070317032703370347035703670377038703970407041704270437044704570467047704870497050705170527053705470557056705770587059706070617062706370647065706670677068706970707071707270737074707570767077707870797080708170827083708470857086708770887089709070917092709370947095709670977098709971007101710271037104710571067107710871097110711171127113711471157116711771187119712071217122712371247125712671277128712971307131713271337134713571367137713871397140714171427143714471457146714771487149715071517152715371547155715671577158715971607161716271637164716571667167716871697170717171727173717471757176717771787179718071817182718371847185718671877188718971907191719271937194719571967197719871997200720172027203720472057206720772087209721072117212721372147215721672177218721972207221722272237224722572267227722872297230723172327233723472357236723772387239724072417242724372447245724672477248724972507251725272537254725572567257725872597260726172627263726472657266726772687269727072717272727372747275727672777278727972807281728272837284728572867287728872897290729172927293729472957296729772987299730073017302730373047305730673077308730973107311731273137314731573167317731873197320732173227323732473257326732773287329733073317332733373347335733673377338733973407341734273437344734573467347734873497350735173527353735473557356735773587359736073617362736373647365736673677368736973707371737273737374737573767377737873797380738173827383738473857386738773887389739073917392739373947395739673977398739974007401740274037404740574067407740874097410741174127413741474157416741774187419742074217422742374247425742674277428742974307431743274337434743574367437743874397440744174427443744474457446744774487449745074517452745374547455745674577458745974607461746274637464746574667467746874697470747174727473747474757476747774787479748074817482748374847485748674877488748974907491749274937494749574967497749874997500750175027503750475057506750775087509751075117512751375147515751675177518751975207521752275237524752575267527752875297530753175327533753475357536753775387539754075417542754375447545754675477548754975507551755275537554755575567557755875597560756175627563756475657566756775687569757075717572757375747575757675777578757975807581758275837584758575867587758875897590759175927593759475957596759775987599760076017602760376047605760676077608760976107611761276137614761576167617761876197620762176227623762476257626762776287629763076317632763376347635763676377638763976407641764276437644764576467647764876497650765176527653765476557656765776587659766076617662766376647665766676677668766976707671767276737674767576767677767876797680768176827683768476857686768776887689769076917692769376947695769676977698769977007701770277037704770577067707770877097710771177127713771477157716771777187719772077217722772377247725772677277728772977307731773277337734773577367737773877397740774177427743774477457746774777487749775077517752775377547755775677577758775977607761776277637764776577667767776877697770777177727773777477757776777777787779778077817782778377847785778677877788778977907791779277937794779577967797779877997800780178027803780478057806780778087809781078117812781378147815781678177818781978207821782278237824782578267827782878297830783178327833783478357836783778387839784078417842784378447845784678477848784978507851785278537854785578567857785878597860786178627863786478657866786778687869787078717872787378747875787678777878787978807881788278837884788578867887788878897890789178927893789478957896789778987899790079017902790379047905790679077908790979107911791279137914791579167917791879197920792179227923792479257926792779287929793079317932793379347935793679377938793979407941794279437944794579467947794879497950795179527953795479557956795779587959796079617962796379647965796679677968796979707971797279737974797579767977797879797980798179827983798479857986798779887989799079917992799379947995799679977998799980008001800280038004800580068007800880098010801180128013801480158016801780188019802080218022802380248025802680278028802980308031803280338034803580368037803880398040804180428043804480458046804780488049805080518052805380548055805680578058805980608061806280638064806580668067806880698070807180728073807480758076807780788079808080818082808380848085808680878088808980908091809280938094809580968097809880998100810181028103810481058106810781088109811081118112811381148115811681178118811981208121812281238124812581268127812881298130813181328133813481358136813781388139814081418142814381448145814681478148814981508151815281538154815581568157815881598160816181628163816481658166816781688169817081718172817381748175817681778178817981808181818281838184818581868187818881898190819181928193819481958196819781988199820082018202820382048205820682078208820982108211821282138214821582168217821882198220822182228223822482258226822782288229823082318232823382348235823682378238823982408241824282438244824582468247824882498250825182528253825482558256825782588259826082618262826382648265826682678268826982708271827282738274827582768277827882798280828182828283828482858286828782888289829082918292829382948295829682978298829983008301830283038304830583068307830883098310831183128313831483158316831783188319832083218322832383248325832683278328832983308331833283338334833583368337833883398340834183428343834483458346834783488349835083518352835383548355835683578358835983608361836283638364836583668367836883698370837183728373837483758376837783788379838083818382838383848385838683878388838983908391839283938394839583968397839883998400840184028403840484058406840784088409841084118412841384148415841684178418841984208421842284238424842584268427842884298430843184328433843484358436843784388439844084418442844384448445844684478448844984508451845284538454845584568457845884598460846184628463846484658466846784688469847084718472847384748475847684778478847984808481848284838484848584868487848884898490849184928493849484958496849784988499850085018502850385048505850685078508850985108511851285138514851585168517851885198520852185228523852485258526852785288529853085318532853385348535853685378538853985408541854285438544854585468547854885498550855185528553855485558556855785588559856085618562856385648565856685678568856985708571857285738574857585768577857885798580858185828583858485858586858785888589859085918592859385948595859685978598859986008601860286038604860586068607860886098610861186128613861486158616861786188619862086218622862386248625862686278628862986308631863286338634863586368637863886398640864186428643864486458646864786488649865086518652865386548655865686578658865986608661866286638664866586668667866886698670867186728673867486758676867786788679868086818682868386848685868686878688868986908691869286938694869586968697869886998700870187028703870487058706870787088709871087118712871387148715871687178718871987208721872287238724872587268727872887298730873187328733873487358736873787388739874087418742874387448745874687478748874987508751875287538754875587568757875887598760876187628763876487658766876787688769877087718772877387748775877687778778877987808781878287838784878587868787878887898790879187928793879487958796879787988799880088018802880388048805880688078808880988108811881288138814881588168817881888198820882188228823882488258826882788288829883088318832883388348835883688378838883988408841884288438844884588468847884888498850885188528853885488558856885788588859886088618862886388648865886688678868886988708871887288738874887588768877887888798880888188828883888488858886888788888889889088918892889388948895889688978898889989008901890289038904890589068907890889098910891189128913891489158916891789188919892089218922892389248925892689278928892989308931893289338934893589368937893889398940894189428943894489458946894789488949895089518952895389548955895689578958895989608961896289638964896589668967896889698970897189728973897489758976897789788979898089818982898389848985898689878988898989908991899289938994899589968997899889999000900190029003900490059006900790089009901090119012901390149015901690179018901990209021902290239024902590269027902890299030903190329033903490359036903790389039904090419042904390449045904690479048904990509051905290539054905590569057905890599060906190629063906490659066906790689069907090719072907390749075907690779078907990809081908290839084908590869087908890899090909190929093909490959096909790989099910091019102910391049105910691079108910991109111911291139114911591169117911891199120912191229123912491259126912791289129913091319132913391349135913691379138913991409141914291439144914591469147914891499150915191529153915491559156915791589159916091619162916391649165916691679168916991709171917291739174917591769177917891799180918191829183918491859186918791889189919091919192919391949195919691979198919992009201920292039204920592069207920892099210921192129213921492159216921792189219922092219222922392249225922692279228922992309231923292339234923592369237923892399240924192429243924492459246924792489249925092519252925392549255925692579258925992609261926292639264926592669267926892699270927192729273927492759276927792789279928092819282928392849285928692879288928992909291929292939294929592969297929892999300930193029303930493059306930793089309931093119312931393149315931693179318931993209321932293239324932593269327932893299330933193329333933493359336933793389339934093419342934393449345934693479348934993509351935293539354935593569357935893599360936193629363936493659366936793689369937093719372937393749375937693779378937993809381938293839384938593869387938893899390939193929393939493959396939793989399940094019402940394049405940694079408940994109411941294139414941594169417941894199420942194229423942494259426942794289429943094319432943394349435943694379438943994409441944294439444944594469447944894499450945194529453945494559456945794589459946094619462946394649465946694679468946994709471947294739474947594769477947894799480948194829483948494859486948794889489949094919492949394949495949694979498949995009501950295039504950595069507950895099510951195129513951495159516951795189519952095219522952395249525952695279528952995309531953295339534953595369537953895399540954195429543954495459546954795489549955095519552955395549555955695579558955995609561956295639564956595669567956895699570957195729573957495759576957795789579958095819582958395849585958695879588958995909591959295939594959595969597959895999600960196029603960496059606960796089609961096119612961396149615961696179618961996209621962296239624962596269627962896299630963196329633963496359636963796389639964096419642964396449645964696479648964996509651965296539654965596569657965896599660966196629663966496659666966796689669967096719672967396749675967696779678967996809681968296839684968596869687968896899690969196929693969496959696969796989699970097019702970397049705970697079708970997109711971297139714971597169717971897199720972197229723972497259726972797289729973097319732973397349735973697379738973997409741974297439744974597469747974897499750975197529753975497559756975797589759976097619762976397649765976697679768976997709771977297739774977597769777977897799780978197829783978497859786978797889789979097919792979397949795979697979798979998009801980298039804980598069807980898099810981198129813981498159816981798189819982098219822982398249825982698279828982998309831983298339834983598369837983898399840984198429843984498459846984798489849985098519852985398549855985698579858985998609861986298639864986598669867986898699870987198729873987498759876987798789879988098819882988398849885988698879888988998909891989298939894989598969897989898999900990199029903990499059906990799089909991099119912991399149915991699179918991999209921992299239924992599269927992899299930993199329933993499359936993799389939994099419942994399449945994699479948994999509951995299539954995599569957995899599960996199629963996499659966996799689969997099719972997399749975997699779978997999809981998299839984998599869987998899899990999199929993999499959996999799989999100001000110002100031000410005100061000710008100091001010011100121001310014100151001610017100181001910020100211002210023100241002510026100271002810029100301003110032100331003410035100361003710038100391004010041100421004310044100451004610047100481004910050100511005210053100541005510056100571005810059100601006110062100631006410065100661006710068100691007010071100721007310074100751007610077100781007910080100811008210083100841008510086100871008810089100901009110092100931009410095100961009710098100991010010101101021010310104101051010610107101081010910110101111011210113101141011510116101171011810119101201012110122101231012410125101261012710128101291013010131101321013310134101351013610137101381013910140101411014210143101441014510146101471014810149101501015110152101531015410155101561015710158101591016010161101621016310164101651016610167101681016910170101711017210173101741017510176101771017810179101801018110182101831018410185101861018710188101891019010191101921019310194101951019610197101981019910200102011020210203102041020510206102071020810209102101021110212102131021410215102161021710218102191022010221102221022310224102251022610227102281022910230102311023210233102341023510236102371023810239102401024110242102431024410245102461024710248102491025010251102521025310254102551025610257102581025910260102611026210263102641026510266102671026810269102701027110272102731027410275102761027710278102791028010281102821028310284102851028610287102881028910290102911029210293102941029510296102971029810299103001030110302103031030410305103061030710308103091031010311103121031310314103151031610317103181031910320103211032210323103241032510326103271032810329103301033110332 |
- (function(){function r(e,n,t){function o(i,f){if(!n[i]){if(!e[i]){var c="function"==typeof require&&require;if(!f&&c)return c(i,!0);if(u)return u(i,!0);var a=new Error("Cannot find module '"+i+"'");throw a.code="MODULE_NOT_FOUND",a}var p=n[i]={exports:{}};e[i][0].call(p.exports,function(r){var n=e[i][1][r];return o(n||r)},p,p.exports,r,e,n,t)}return n[i].exports}for(var u="function"==typeof require&&require,i=0;i<t.length;i++)o(t[i]);return o}return r})()({1:[function(require,module,exports){
- (function (global){
- "use strict";
- function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
- (function (global) {
- (function (factory) {
- if (typeof define === "function" && define.amd) {
-
- define(["exports"], factory);
- } else if ((typeof exports === "undefined" ? "undefined" : _typeof(exports)) === "object" && typeof exports.nodeName !== "string") {
-
- factory(exports);
- } else {
-
- factory(global);
- }
- })(function (exports) {
- "use strict";
- exports.URL = global.URL || global.webkitURL;
- if (global.Blob && global.URL) {
- try {
- new Blob();
- return;
- } catch (e) {}
- }
-
- var BlobBuilder = global.BlobBuilder || global.WebKitBlobBuilder || global.MozBlobBuilder || function () {
- var get_class = function get_class(object) {
- return Object.prototype.toString.call(object).match(/^\[object\s(.*)\]$/)[1];
- },
- FakeBlobBuilder = function BlobBuilder() {
- this.data = [];
- },
- FakeBlob = function Blob(data, type, encoding) {
- this.data = data;
- this.size = data.length;
- this.type = type;
- this.encoding = encoding;
- },
- FBB_proto = FakeBlobBuilder.prototype,
- FB_proto = FakeBlob.prototype,
- FileReaderSync = global.FileReaderSync,
- FileException = function FileException(type) {
- this.code = this[this.name = type];
- },
- file_ex_codes = ("NOT_FOUND_ERR SECURITY_ERR ABORT_ERR NOT_READABLE_ERR ENCODING_ERR " + "NO_MODIFICATION_ALLOWED_ERR INVALID_STATE_ERR SYNTAX_ERR").split(" "),
- file_ex_code = file_ex_codes.length,
- real_URL = global.URL || global.webkitURL || exports,
- real_create_object_URL = real_URL.createObjectURL,
- real_revoke_object_URL = real_URL.revokeObjectURL,
- URL = real_URL,
- btoa = global.btoa,
- atob = global.atob,
- ArrayBuffer = global.ArrayBuffer,
- Uint8Array = global.Uint8Array,
- origin = /^[\w-]+:\/*\[?[\w\.:-]+\]?(?::[0-9]+)?/;
- FakeBlob.fake = FB_proto.fake = true;
- while (file_ex_code--) {
- FileException.prototype[file_ex_codes[file_ex_code]] = file_ex_code + 1;
- }
- if (!real_URL.createObjectURL) {
- URL = exports.URL = function (uri) {
- var uri_info = document.createElementNS("http://www.w3.org/1999/xhtml", "a"),
- uri_origin;
- uri_info.href = uri;
- if (!("origin" in uri_info)) {
- if (uri_info.protocol.toLowerCase() === "data:") {
- uri_info.origin = null;
- } else {
- uri_origin = uri.match(origin);
- uri_info.origin = uri_origin && uri_origin[1];
- }
- }
- return uri_info;
- };
- }
- URL.createObjectURL = function (blob) {
- var type = blob.type,
- data_URI_header;
- if (type === null) {
- type = "application/octet-stream";
- }
- if (blob instanceof FakeBlob) {
- data_URI_header = "data:" + type;
- if (blob.encoding === "base64") {
- return data_URI_header + ";base64," + blob.data;
- } else if (blob.encoding === "URI") {
- return data_URI_header + "," + decodeURIComponent(blob.data);
- }
- if (btoa) {
- return data_URI_header + ";base64," + btoa(blob.data);
- } else {
- return data_URI_header + "," + encodeURIComponent(blob.data);
- }
- } else if (real_create_object_URL) {
- return real_create_object_URL.call(real_URL, blob);
- }
- };
- URL.revokeObjectURL = function (object_URL) {
- if (object_URL.substring(0, 5) !== "data:" && real_revoke_object_URL) {
- real_revoke_object_URL.call(real_URL, object_URL);
- }
- };
- FBB_proto.append = function (data
-
- ) {
- var bb = this.data;
- if (Uint8Array && (data instanceof ArrayBuffer || data instanceof Uint8Array)) {
- var str = "",
- buf = new Uint8Array(data),
- i = 0,
- buf_len = buf.length;
- for (; i < buf_len; i++) {
- str += String.fromCharCode(buf[i]);
- }
- bb.push(str);
- } else if (get_class(data) === "Blob" || get_class(data) === "File") {
- if (FileReaderSync) {
- var fr = new FileReaderSync();
- bb.push(fr.readAsBinaryString(data));
- } else {
-
- throw new FileException("NOT_READABLE_ERR");
- }
- } else if (data instanceof FakeBlob) {
- if (data.encoding === "base64" && atob) {
- bb.push(atob(data.data));
- } else if (data.encoding === "URI") {
- bb.push(decodeURIComponent(data.data));
- } else if (data.encoding === "raw") {
- bb.push(data.data);
- }
- } else {
- if (typeof data !== "string") {
- data += "";
- }
- bb.push(unescape(encodeURIComponent(data)));
- }
- };
- FBB_proto.getBlob = function (type) {
- if (!arguments.length) {
- type = null;
- }
- return new FakeBlob(this.data.join(""), type, "raw");
- };
- FBB_proto.toString = function () {
- return "[object BlobBuilder]";
- };
- FB_proto.slice = function (start, end, type) {
- var args = arguments.length;
- if (args < 3) {
- type = null;
- }
- return new FakeBlob(this.data.slice(start, args > 1 ? end : this.data.length), type, this.encoding);
- };
- FB_proto.toString = function () {
- return "[object Blob]";
- };
- FB_proto.close = function () {
- this.size = 0;
- delete this.data;
- };
- return FakeBlobBuilder;
- }();
- exports.Blob = function (blobParts, options) {
- var type = options ? options.type || "" : "";
- var builder = new BlobBuilder();
- if (blobParts) {
- for (var i = 0, len = blobParts.length; i < len; i++) {
- if (Uint8Array && blobParts[i] instanceof Uint8Array) {
- builder.append(blobParts[i].buffer);
- } else {
- builder.append(blobParts[i]);
- }
- }
- }
- var blob = builder.getBlob(type);
- if (!blob.slice && blob.webkitSlice) {
- blob.slice = blob.webkitSlice;
- }
- return blob;
- };
- var getPrototypeOf = Object.getPrototypeOf || function (object) {
- return object.__proto__;
- };
- exports.Blob.prototype = getPrototypeOf(new exports.Blob());
- });
- })(typeof self !== "undefined" && self || typeof window !== "undefined" && window || typeof global !== "undefined" && global || (void 0).content || void 0);
- }).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {})
- },{}],2:[function(require,module,exports){
- "use strict";
- !function () {
- function e(e) {
- this.message = e;
- }
- var t = "undefined" != typeof exports ? exports : "undefined" != typeof self ? self : $.global,
- r = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";
- e.prototype = new Error(), e.prototype.name = "InvalidCharacterError", t.btoa || (t.btoa = function (t) {
- for (var o, n, a = String(t), i = 0, f = r, c = ""; a.charAt(0 | i) || (f = "=", i % 1); c += f.charAt(63 & o >> 8 - i % 1 * 8)) {
- if (n = a.charCodeAt(i += .75), n > 255) throw new e("'btoa' failed: The string to be encoded contains characters outside of the Latin1 range.");
- o = o << 8 | n;
- }
- return c;
- }), t.atob || (t.atob = function (t) {
- var o = String(t).replace(/[=]+$/, "");
- if (o.length % 4 == 1) throw new e("'atob' failed: The string to be decoded is not correctly encoded.");
- for (var n, a, i = 0, f = 0, c = ""; a = o.charAt(f++); ~a && (n = i % 4 ? 64 * n + a : a, i++ % 4) ? c += String.fromCharCode(255 & n >> (-2 * i & 6)) : 0) {
- a = r.indexOf(a);
- }
- return c;
- });
- }();
- },{}],3:[function(require,module,exports){
- "use strict";
- var GL_COMMAND_ACTIVE_TEXTURE = 0;
- var GL_COMMAND_ATTACH_SHADER = 1;
- var GL_COMMAND_BIND_ATTRIB_LOCATION = 2;
- var GL_COMMAND_BIND_BUFFER = 3;
- var GL_COMMAND_BIND_FRAME_BUFFER = 4;
- var GL_COMMAND_BIND_RENDER_BUFFER = 5;
- var GL_COMMAND_BIND_TEXTURE = 6;
- var GL_COMMAND_BLEND_COLOR = 7;
- var GL_COMMAND_BLEND_EQUATION = 8;
- var GL_COMMAND_BLEND_EQUATION_SEPARATE = 9;
- var GL_COMMAND_BLEND_FUNC = 10;
- var GL_COMMAND_BLEND_FUNC_SEPARATE = 11;
- var GL_COMMAND_BUFFER_DATA = 12;
- var GL_COMMAND_BUFFER_SUB_DATA = 13;
- var GL_COMMAND_CLEAR = 14;
- var GL_COMMAND_CLEAR_COLOR = 15;
- var GL_COMMAND_CLEAR_DEPTH = 16;
- var GL_COMMAND_CLEAR_STENCIL = 17;
- var GL_COMMAND_COLOR_MASK = 18;
- var GL_COMMAND_COMMIT = 19;
- var GL_COMMAND_COMPILE_SHADER = 20;
- var GL_COMMAND_COMPRESSED_TEX_IMAGE_2D = 21;
- var GL_COMMAND_COMPRESSED_TEX_SUB_IMAGE_2D = 22;
- var GL_COMMAND_COPY_TEX_IMAGE_2D = 23;
- var GL_COMMAND_COPY_TEX_SUB_IMAGE_2D = 24;
- var GL_COMMAND_CULL_FACE = 25;
- var GL_COMMAND_DELETE_BUFFER = 26;
- var GL_COMMAND_DELETE_FRAME_BUFFER = 27;
- var GL_COMMAND_DELETE_PROGRAM = 28;
- var GL_COMMAND_DELETE_RENDER_BUFFER = 29;
- var GL_COMMAND_DELETE_SHADER = 30;
- var GL_COMMAND_DELETE_TEXTURE = 31;
- var GL_COMMAND_DEPTH_FUNC = 32;
- var GL_COMMAND_DEPTH_MASK = 33;
- var GL_COMMAND_DEPTH_RANGE = 34;
- var GL_COMMAND_DETACH_SHADER = 35;
- var GL_COMMAND_DISABLE = 36;
- var GL_COMMAND_DISABLE_VERTEX_ATTRIB_ARRAY = 37;
- var GL_COMMAND_DRAW_ARRAYS = 38;
- var GL_COMMAND_DRAW_ELEMENTS = 39;
- var GL_COMMAND_ENABLE = 40;
- var GL_COMMAND_ENABLE_VERTEX_ATTRIB_ARRAY = 41;
- var GL_COMMAND_FINISH = 42;
- var GL_COMMAND_FLUSH = 43;
- var GL_COMMAND_FRAME_BUFFER_RENDER_BUFFER = 44;
- var GL_COMMAND_FRAME_BUFFER_TEXTURE_2D = 45;
- var GL_COMMAND_FRONT_FACE = 46;
- var GL_COMMAND_GENERATE_MIPMAP = 47;
- var GL_COMMAND_HINT = 48;
- var GL_COMMAND_LINE_WIDTH = 49;
- var GL_COMMAND_LINK_PROGRAM = 50;
- var GL_COMMAND_PIXEL_STOREI = 51;
- var GL_COMMAND_POLYGON_OFFSET = 52;
- var GL_COMMAND_RENDER_BUFFER_STORAGE = 53;
- var GL_COMMAND_SAMPLE_COVERAGE = 54;
- var GL_COMMAND_SCISSOR = 55;
- var GL_COMMAND_SHADER_SOURCE = 56;
- var GL_COMMAND_STENCIL_FUNC = 57;
- var GL_COMMAND_STENCIL_FUNC_SEPARATE = 58;
- var GL_COMMAND_STENCIL_MASK = 59;
- var GL_COMMAND_STENCIL_MASK_SEPARATE = 60;
- var GL_COMMAND_STENCIL_OP = 61;
- var GL_COMMAND_STENCIL_OP_SEPARATE = 62;
- var GL_COMMAND_TEX_IMAGE_2D = 63;
- var GL_COMMAND_TEX_PARAMETER_F = 64;
- var GL_COMMAND_TEX_PARAMETER_I = 65;
- var GL_COMMAND_TEX_SUB_IMAGE_2D = 66;
- var GL_COMMAND_UNIFORM_1F = 67;
- var GL_COMMAND_UNIFORM_1FV = 68;
- var GL_COMMAND_UNIFORM_1I = 69;
- var GL_COMMAND_UNIFORM_1IV = 70;
- var GL_COMMAND_UNIFORM_2F = 71;
- var GL_COMMAND_UNIFORM_2FV = 72;
- var GL_COMMAND_UNIFORM_2I = 73;
- var GL_COMMAND_UNIFORM_2IV = 74;
- var GL_COMMAND_UNIFORM_3F = 75;
- var GL_COMMAND_UNIFORM_3FV = 76;
- var GL_COMMAND_UNIFORM_3I = 77;
- var GL_COMMAND_UNIFORM_3IV = 78;
- var GL_COMMAND_UNIFORM_4F = 79;
- var GL_COMMAND_UNIFORM_4FV = 80;
- var GL_COMMAND_UNIFORM_4I = 81;
- var GL_COMMAND_UNIFORM_4IV = 82;
- var GL_COMMAND_UNIFORM_MATRIX_2FV = 83;
- var GL_COMMAND_UNIFORM_MATRIX_3FV = 84;
- var GL_COMMAND_UNIFORM_MATRIX_4FV = 85;
- var GL_COMMAND_USE_PROGRAM = 86;
- var GL_COMMAND_VALIDATE_PROGRAM = 87;
- var GL_COMMAND_VERTEX_ATTRIB_1F = 88;
- var GL_COMMAND_VERTEX_ATTRIB_2F = 89;
- var GL_COMMAND_VERTEX_ATTRIB_3F = 90;
- var GL_COMMAND_VERTEX_ATTRIB_4F = 91;
- var GL_COMMAND_VERTEX_ATTRIB_1FV = 92;
- var GL_COMMAND_VERTEX_ATTRIB_2FV = 93;
- var GL_COMMAND_VERTEX_ATTRIB_3FV = 94;
- var GL_COMMAND_VERTEX_ATTRIB_4FV = 95;
- var GL_COMMAND_VERTEX_ATTRIB_POINTER = 96;
- var GL_COMMAND_VIEW_PORT = 97;
- var gl = __gl;
- var _gl = {};
- for (var k in gl) {
- _gl[k] = gl[k];
- }
- var total_size = 100000;
- var next_index = 0;
- var buffer_data;
- var commandCount = 0;
- function batchGLCommandsToNative() {
- if (gl._flushCommands) {
- if (isSupportTypeArray()) {
- console.log('Enable batch GL commands optimization!');
- attachMethodOpt();
- buffer_data = new Float32Array(total_size);
- } else {
- console.log("Disable batch GL commands, TypedArray Native API isn't supported!");
- }
- } else {
- console.log("Disable batch GL commands, _flushCommands isn't binded!");
- }
- }
- function disableBatchGLCommandsToNative() {
-
- flushCommands();
- for (var k in _gl) {
- __gl[k] = _gl[k];
- }
- console.log('Disable batch GL commands optimization!');
- jsb.disableBatchGLCommandsToNative();
- }
- function flushCommands() {
- if (next_index > 0) {
- gl._flushCommands(next_index, buffer_data, commandCount);
- next_index = 0;
- commandCount = 0;
- }
- }
- function activeTextureOpt(texture) {
-
- if (next_index + 2 > total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_ACTIVE_TEXTURE;
- buffer_data[next_index + 1] = texture;
- next_index += 2;
- ++commandCount;
- }
- function attachShaderOpt(program, shader) {
-
- if (next_index + 3 > total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_ATTACH_SHADER;
- buffer_data[next_index + 1] = program ? program._id : 0;
- buffer_data[next_index + 2] = shader ? shader._id : 0;
- next_index += 3;
- ++commandCount;
- }
- function bindAttribLocationOpt(program, index, name) {
-
- flushCommands();
- _gl.bindAttribLocation(program, index, name);
- }
- function bindBufferOpt(target, buffer) {
-
- if (next_index + 3 > total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_BIND_BUFFER;
- buffer_data[next_index + 1] = target;
- buffer_data[next_index + 2] = buffer ? buffer._id : 0;
- next_index += 3;
- ++commandCount;
- }
- function bindFramebufferOpt(target, framebuffer) {
-
- if (next_index + 3 > total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_BIND_FRAME_BUFFER;
- buffer_data[next_index + 1] = target;
- buffer_data[next_index + 2] = framebuffer ? framebuffer._id : 0;
- next_index += 3;
- ++commandCount;
- }
- function bindRenderbufferOpt(target, renderbuffer) {
-
- if (next_index + 3 > total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_BIND_RENDER_BUFFER;
- buffer_data[next_index + 1] = target;
- buffer_data[next_index + 2] = renderbuffer ? renderbuffer._id : 0;
- next_index += 3;
- ++commandCount;
- }
- function bindTextureOpt(target, texture) {
-
- if (next_index + 3 > total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_BIND_TEXTURE;
- buffer_data[next_index + 1] = target;
- buffer_data[next_index + 2] = texture ? texture._id : 0;
- next_index += 3;
- ++commandCount;
- }
- function blendColorOpt(red, green, blue, alpha) {
-
- if (next_index + 5 > total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_BLEND_COLOR;
- buffer_data[next_index + 1] = red;
- buffer_data[next_index + 2] = green;
- buffer_data[next_index + 3] = blue;
- buffer_data[next_index + 4] = alpha;
- next_index += 5;
- ++commandCount;
- }
- function blendEquationOpt(mode) {
-
- if (next_index + 2 > total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_BLEND_EQUATION;
- buffer_data[next_index + 1] = mode;
- next_index += 2;
- ++commandCount;
- }
- function blendEquationSeparateOpt(modeRGB, modeAlpha) {
-
- if (next_index + 3 > total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_BLEND_EQUATION_SEPARATE;
- buffer_data[next_index + 1] = modeRGB;
- buffer_data[next_index + 2] = modeAlpha;
- next_index += 3;
- ++commandCount;
- }
- function blendFuncOpt(sfactor, dfactor) {
-
- if (next_index + 3 > total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_BLEND_FUNC;
- buffer_data[next_index + 1] = sfactor;
- buffer_data[next_index + 2] = dfactor;
- next_index += 3;
- ++commandCount;
- }
- function blendFuncSeparateOpt(srcRGB, dstRGB, srcAlpha, dstAlpha) {
-
- if (next_index + 5 > total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_BLEND_FUNC_SEPARATE;
- buffer_data[next_index + 1] = srcRGB;
- buffer_data[next_index + 2] = dstRGB;
- buffer_data[next_index + 3] = srcAlpha;
- buffer_data[next_index + 4] = dstAlpha;
- next_index += 5;
- ++commandCount;
- }
- function bufferDataOpt(target, data, usage) {
- flushCommands();
- _gl.bufferData(target, data, usage);
- }
- function bufferSubDataOpt(target, offset, data) {
- flushCommands();
- _gl.bufferSubData(target, offset, data);
- }
- function checkFramebufferStatusOpt(target) {
- flushCommands();
- return _gl.checkFramebufferStatus(target);
- }
- function clearOpt(mask) {
-
- if (next_index + 2 > total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_CLEAR;
- buffer_data[next_index + 1] = mask;
- next_index += 2;
- ++commandCount;
- }
- function clearColorOpt(red, green, blue, alpha) {
-
- if (next_index + 5 > total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_CLEAR_COLOR;
- buffer_data[next_index + 1] = red;
- buffer_data[next_index + 2] = green;
- buffer_data[next_index + 3] = blue;
- buffer_data[next_index + 4] = alpha;
- next_index += 5;
- ++commandCount;
- }
- function clearDepthOpt(depth) {
-
- if (next_index + 2 > total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_CLEAR_DEPTH;
- buffer_data[next_index + 1] = depth;
- next_index += 2;
- ++commandCount;
- }
- function clearStencilOpt(s) {
-
- if (next_index + 2 > total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_CLEAR_STENCIL;
- buffer_data[next_index + 1] = s;
- next_index += 2;
- ++commandCount;
- }
- function colorMaskOpt(red, green, blue, alpha) {
-
- if (next_index + 5 > total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_COLOR_MASK;
- buffer_data[next_index + 1] = red ? 1 : 0;
- buffer_data[next_index + 2] = green ? 1 : 0;
- buffer_data[next_index + 3] = blue ? 1 : 0;
- buffer_data[next_index + 4] = alpha ? 1 : 0;
- next_index += 5;
- ++commandCount;
- }
- function compileShaderOpt(shader) {
-
- if (next_index + 2 > total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_COMPILE_SHADER;
- buffer_data[next_index + 1] = shader ? shader._id : 0;
- next_index += 2;
- ++commandCount;
- }
- function compressedTexImage2DOpt(target, level, internalformat, width, height, border, data) {
-
- flushCommands();
- _gl.compressedTexImage2D(target, level, internalformat, width, height, border, data);
- }
- function compressedTexSubImage2DOpt(target, level, xoffset, yoffset, width, height, format, data) {
-
- flushCommands();
- _gl.compressedTexSubImage2D(target, level, xoffset, yoffset, width, height, format, data);
- }
- function copyTexImage2DOpt(target, level, internalformat, x, y, width, height, border) {
-
- if (next_index + 9 > total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_COPY_TEX_IMAGE_2D;
- buffer_data[next_index + 1] = target;
- buffer_data[next_index + 2] = level;
- buffer_data[next_index + 3] = internalformat;
- buffer_data[next_index + 4] = x;
- buffer_data[next_index + 5] = y;
- buffer_data[next_index + 6] = width;
- buffer_data[next_index + 7] = height;
- buffer_data[next_index + 8] = border;
- next_index += 9;
- ++commandCount;
- }
- function copyTexSubImage2DOpt(target, level, xoffset, yoffset, x, y, width, height) {
-
- if (next_index + 9 > total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_COPY_TEX_SUB_IMAGE_2D;
- buffer_data[next_index + 1] = target;
- buffer_data[next_index + 2] = level;
- buffer_data[next_index + 3] = xoffset;
- buffer_data[next_index + 4] = yoffset;
- buffer_data[next_index + 5] = x;
- buffer_data[next_index + 6] = y;
- buffer_data[next_index + 7] = width;
- buffer_data[next_index + 8] = height;
- next_index += 9;
- ++commandCount;
- }
- function createBufferOpt() {
- flushCommands();
- var ret = _gl.createBuffer();
- return ret;
- }
- function createFramebufferOpt() {
- flushCommands();
- return _gl.createFramebuffer();
- }
- function createProgramOpt() {
- flushCommands();
- return _gl.createProgram();
- }
- function createRenderbufferOpt() {
- flushCommands();
- return _gl.createRenderbuffer();
- }
- function createShaderOpt(type) {
-
- flushCommands();
- return _gl.createShader(type);
- }
- function createTextureOpt() {
- flushCommands();
- return _gl.createTexture();
- }
- function cullFaceOpt(mode) {
-
- if (next_index + 2 >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_CULL_FACE;
- buffer_data[next_index + 1] = mode;
- next_index += 2;
- ++commandCount;
- }
- function deleteBufferOpt(buffer) {
-
- if (next_index + 2 >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_DELETE_BUFFER;
- buffer_data[next_index + 1] = buffer ? buffer._id : 0;
- next_index += 2;
- ++commandCount;
- }
- function deleteFramebufferOpt(framebuffer) {
-
- if (next_index + 2 >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_DELETE_FRAME_BUFFER;
- buffer_data[next_index + 1] = framebuffer ? framebuffer._id : 0;
- next_index += 2;
- ++commandCount;
- }
- function deleteProgramOpt(program) {
-
- if (next_index + 2 >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_DELETE_PROGRAM;
- buffer_data[next_index + 1] = program ? program._id : 0;
- next_index += 2;
- ++commandCount;
- }
- function deleteRenderbufferOpt(renderbuffer) {
-
- if (next_index + 2 >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_DELETE_RENDER_BUFFER;
- buffer_data[next_index + 1] = renderbuffer ? renderbuffer._id : 0;
- next_index += 2;
- ++commandCount;
- }
- function deleteShaderOpt(shader) {
-
- if (next_index + 2 >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_DELETE_SHADER;
- buffer_data[next_index + 1] = shader ? shader._id : 0;
- next_index += 2;
- ++commandCount;
- }
- function deleteTextureOpt(texture) {
-
- if (next_index + 2 >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_DELETE_TEXTURE;
- buffer_data[next_index + 1] = texture ? texture._id : 0;
- next_index += 2;
- ++commandCount;
- }
- function depthFuncOpt(func) {
-
- if (next_index + 2 >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_DEPTH_FUNC;
- buffer_data[next_index + 1] = func;
- next_index += 2;
- ++commandCount;
- }
- function depthMaskOpt(flag) {
-
- if (next_index + 2 >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_DEPTH_MASK;
- buffer_data[next_index + 1] = flag ? 1 : 0;
- next_index += 2;
- ++commandCount;
- }
- function depthRangeOpt(zNear, zFar) {
-
- if (next_index + 3 >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_DEPTH_RANGE;
- buffer_data[next_index + 1] = zNear;
- buffer_data[next_index + 2] = zFar;
- next_index += 3;
- ++commandCount;
- }
- function detachShaderOpt(program, shader) {
-
- if (next_index + 3 >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_DETACH_SHADER;
- buffer_data[next_index + 1] = program ? program._id : 0;
- buffer_data[next_index + 2] = shader ? shader._id : 0;
- next_index += 3;
- ++commandCount;
- }
- function disableOpt(cap) {
-
- if (next_index + 2 >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_DISABLE;
- buffer_data[next_index + 1] = cap;
- next_index += 2;
- ++commandCount;
- }
- function disableVertexAttribArrayOpt(index) {
-
- if (next_index + 2 >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_DISABLE_VERTEX_ATTRIB_ARRAY;
- buffer_data[next_index + 1] = index;
- next_index += 2;
- ++commandCount;
- }
- function drawArraysOpt(mode, first, count) {
-
- if (next_index + 4 >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_DRAW_ARRAYS;
- buffer_data[next_index + 1] = mode;
- buffer_data[next_index + 2] = first;
- buffer_data[next_index + 3] = count;
- next_index += 4;
- ++commandCount;
- }
- function drawElementsOpt(mode, count, type, offset) {
-
- if (next_index + 5 >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_DRAW_ELEMENTS;
- buffer_data[next_index + 1] = mode;
- buffer_data[next_index + 2] = count;
- buffer_data[next_index + 3] = type;
- buffer_data[next_index + 4] = offset ? offset : 0;
- next_index += 5;
- ++commandCount;
- }
- function enableOpt(cap) {
-
- if (next_index + 2 >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_ENABLE;
- buffer_data[next_index + 1] = cap;
- next_index += 2;
- ++commandCount;
- }
- function enableVertexAttribArrayOpt(index) {
-
- if (next_index + 2 >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_ENABLE_VERTEX_ATTRIB_ARRAY;
- buffer_data[next_index + 1] = index;
- next_index += 2;
- ++commandCount;
- }
- function finishOpt() {
-
- if (next_index + 1 >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_FINISH;
- next_index += 1;
- ++commandCount;
- }
- function flushOpt() {
-
- if (next_index + 1 >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_FLUSH;
- next_index += 1;
- ++commandCount;
- }
- function framebufferRenderbufferOpt(target, attachment, renderbuffertarget, renderbuffer) {
-
- if (next_index + 5 >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_FRAME_BUFFER_RENDER_BUFFER;
- buffer_data[next_index + 1] = target;
- buffer_data[next_index + 2] = attachment;
- buffer_data[next_index + 3] = renderbuffertarget;
- buffer_data[next_index + 4] = renderbuffer ? renderbuffer._id : 0;
- next_index += 5;
- ++commandCount;
- }
- function framebufferTexture2DOpt(target, attachment, textarget, texture, level) {
-
- if (next_index + 6 >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_FRAME_BUFFER_TEXTURE_2D;
- buffer_data[next_index + 1] = target;
- buffer_data[next_index + 2] = attachment;
- buffer_data[next_index + 3] = textarget;
- buffer_data[next_index + 4] = texture ? texture._id : 0;
- buffer_data[next_index + 5] = level;
- next_index += 6;
- ++commandCount;
- }
- function frontFaceOpt(mode) {
-
- if (next_index + 2 >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_FRONT_FACE;
- buffer_data[next_index + 1] = mode;
- next_index += 2;
- ++commandCount;
- }
- function generateMipmapOpt(target) {
-
- if (next_index + 2 >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_GENERATE_MIPMAP;
- buffer_data[next_index + 1] = target;
- next_index += 2;
- ++commandCount;
- }
- function getActiveAttribOpt(program, index) {
-
- flushCommands();
- return _gl.getActiveAttrib(program, index);
- }
- function getActiveUniformOpt(program, index) {
-
- flushCommands();
- return _gl.getActiveUniform(program, index);
- }
- function getAttachedShadersOpt(program) {
-
- flushCommands();
- return _gl.getAttachedShaders(program);
- }
- function getAttribLocationOpt(program, name) {
-
- flushCommands();
- return _gl.getAttribLocation(program, name);
- }
- function getBufferParameterOpt(target, pname) {
-
- flushCommands();
- return _gl.getBufferParameter(target, pname);
- }
- function getParameterOpt(pname) {
-
- flushCommands();
- return _gl.getParameter(pname);
- }
- function getErrorOpt() {
-
- flushCommands();
- return _gl.getError();
- }
- function getFramebufferAttachmentParameterOpt(target, attachment, pname) {
-
- flushCommands();
- return _gl.getFramebufferAttachmentParameter(target, attachment, pname);
- }
- function getProgramParameterOpt(program, pname) {
-
- flushCommands();
- return _gl.getProgramParameter(program, pname);
- }
- function getProgramInfoLogOpt(program) {
-
- flushCommands();
- return _gl.getProgramInfoLog(program);
- }
- function getRenderbufferParameterOpt(target, pname) {
-
- flushCommands();
- return _gl.getRenderbufferParameter(target, pname);
- }
- function getShaderParameterOpt(shader, pname) {
-
- flushCommands();
- return _gl.getShaderParameter(shader, pname);
- }
- function getShaderPrecisionFormatOpt(shadertype, precisiontype) {
-
- flushCommands();
- return _gl.getShaderPrecisionFormat(shadertype, precisiontype);
- }
- function getShaderInfoLogOpt(shader) {
-
- flushCommands();
- return _gl.getShaderInfoLog(shader);
- }
- function getShaderSourceOpt(shader) {
-
- flushCommands();
- return _gl.getShaderSource(shader);
- }
- function getTexParameterOpt(target, pname) {
-
- flushCommands();
- return _gl.getTexParameter(target, pname);
- }
- function getUniformOpt(program, location) {
-
- flushCommands();
- return _gl.getUniform(program, location);
- }
- function getUniformLocationOpt(program, name) {
-
- flushCommands();
- return _gl.getUniformLocation(program, name);
- }
- function getVertexAttribOpt(index, pname) {
-
- flushCommands();
- return _gl.getVertexAttrib(index, pname);
- }
- function getVertexAttribOffsetOpt(index, pname) {
-
- flushCommands();
- return _gl.getVertexAttribOffset(index, pname);
- }
- function hintOpt(target, mode) {
-
- if (next_index + 3 >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_HINT;
- buffer_data[next_index + 1] = target;
- buffer_data[next_index + 2] = mode;
- next_index += 3;
- ++commandCount;
- }
- function isBufferOpt(buffer) {
-
- flushCommands();
- return _gl.isBuffer(buffer);
- }
- function isEnabledOpt(cap) {
-
- flushCommands();
- return _gl.isEnabled(cap);
- }
- function isFramebufferOpt(framebuffer) {
-
- flushCommands();
- return _gl.isFramebuffer(framebuffer);
- }
- function isProgramOpt(program) {
-
- flushCommands();
- return _gl.isProgram(program);
- }
- function isRenderbufferOpt(renderbuffer) {
-
- flushCommands();
- return _gl.isRenderbuffer(renderbuffer);
- }
- function isShaderOpt(shader) {
-
- flushCommands();
- return _gl.isShader(shader);
- }
- function isTextureOpt(texture) {
-
- flushCommands();
- return _gl.isTexture(texture);
- }
- function lineWidthOpt(width) {
-
- if (next_index + 2 >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_LINE_WIDTH;
- buffer_data[next_index + 1] = width;
- next_index += 2;
- ++commandCount;
- }
- function linkProgramOpt(program) {
-
- if (next_index + 2 >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_LINK_PROGRAM;
- buffer_data[next_index + 1] = program ? program._id : 0;
- next_index += 2;
- ++commandCount;
- }
- function pixelStoreiOpt(pname, param) {
-
- if (next_index + 3 >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_PIXEL_STOREI;
- buffer_data[next_index + 1] = pname;
- buffer_data[next_index + 2] = param;
- next_index += 3;
- ++commandCount;
- }
- function polygonOffsetOpt(factor, units) {
-
- if (next_index + 3 >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_POLYGON_OFFSET;
- buffer_data[next_index + 1] = factor;
- buffer_data[next_index + 2] = units;
- next_index += 3;
- ++commandCount;
- }
- function readPixelsOpt(x, y, width, height, format, type, pixels) {
-
- flushCommands();
- _gl.readPixels(x, y, width, height, format, type, pixels);
- }
- function renderbufferStorageOpt(target, internalFormat, width, height) {
-
- if (next_index + 5 >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_RENDER_BUFFER_STORAGE;
- buffer_data[next_index + 1] = target;
- buffer_data[next_index + 2] = internalFormat;
- buffer_data[next_index + 3] = width;
- buffer_data[next_index + 4] = height;
- next_index += 5;
- ++commandCount;
- }
- function sampleCoverageOpt(value, invert) {
-
- if (next_index + 3 >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_SAMPLE_COVERAGE;
- buffer_data[next_index + 1] = value;
- buffer_data[next_index + 2] = invert ? 1 : 0;
- next_index += 3;
- ++commandCount;
- }
- function scissorOpt(x, y, width, height) {
-
- if (next_index + 5 >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_SCISSOR;
- buffer_data[next_index + 1] = x;
- buffer_data[next_index + 2] = y;
- buffer_data[next_index + 3] = width;
- buffer_data[next_index + 4] = height;
- next_index += 5;
- ++commandCount;
- }
- function shaderSourceOpt(shader, source) {
-
- flushCommands();
- _gl.shaderSource(shader, source);
- }
- function stencilFuncOpt(func, ref, mask) {
-
- if (next_index + 4 >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_STENCIL_FUNC;
- buffer_data[next_index + 1] = func;
- buffer_data[next_index + 2] = ref;
- buffer_data[next_index + 3] = mask;
- next_index += 4;
- ++commandCount;
- }
- function stencilFuncSeparateOpt(face, func, ref, mask) {
-
- if (next_index + 5 >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_STENCIL_FUNC_SEPARATE;
- buffer_data[next_index + 1] = face;
- buffer_data[next_index + 2] = func;
- buffer_data[next_index + 3] = ref;
- buffer_data[next_index + 4] = mask;
- next_index += 5;
- ++commandCount;
- }
- function stencilMaskOpt(mask) {
-
- if (next_index + 2 >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_STENCIL_MASK;
- buffer_data[next_index + 1] = mask;
- next_index += 2;
- ++commandCount;
- }
- function stencilMaskSeparateOpt(face, mask) {
-
- if (next_index + 3 >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_STENCIL_MASK_SEPARATE;
- buffer_data[next_index + 1] = face;
- buffer_data[next_index + 2] = mask;
- next_index += 3;
- ++commandCount;
- }
- function stencilOpOpt(fail, zfail, zpass) {
-
- if (next_index + 4 >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_STENCIL_OP;
- buffer_data[next_index + 1] = fail;
- buffer_data[next_index + 2] = zfail;
- buffer_data[next_index + 3] = zpass;
- next_index += 4;
- ++commandCount;
- }
- function stencilOpSeparateOpt(face, fail, zfail, zpass) {
-
- if (next_index + 5 >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_STENCIL_OP_SEPARATE;
- buffer_data[next_index + 1] = face;
- buffer_data[next_index + 2] = fail;
- buffer_data[next_index + 3] = zfail;
- buffer_data[next_index + 4] = zpass;
- next_index += 5;
- ++commandCount;
- }
- function texImage2DOpt() {
- flushCommands();
- var argCount = arguments.length;
- if (argCount === 6) {
- _gl.texImage2D(arguments[0], arguments[1], arguments[2], arguments[3], arguments[4], arguments[5]);
- } else if (argCount === 9) {
- _gl.texImage2D(arguments[0], arguments[1], arguments[2], arguments[3], arguments[4], arguments[5], arguments[6], arguments[7], arguments[8]);
- } else {
- console.log("texImage2DOpt: Wrong number of arguments, expected 6 or 9 but got ".concat(argCount));
- }
- }
- function texParameterfOpt(target, pname, param) {
-
- if (next_index + 4 >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_TEX_PARAMETER_F;
- buffer_data[next_index + 1] = target;
- buffer_data[next_index + 2] = pname;
- buffer_data[next_index + 3] = param;
- next_index += 4;
- ++commandCount;
- }
- function texParameteriOpt(target, pname, param) {
-
- if (next_index + 4 >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_TEX_PARAMETER_I;
- buffer_data[next_index + 1] = target;
- buffer_data[next_index + 2] = pname;
- buffer_data[next_index + 3] = param;
- next_index += 4;
- ++commandCount;
- }
- function texSubImage2DOpt(target, level, xoffset, yoffset, width, height, format, type, pixels) {
- flushCommands();
- var argCount = arguments.length;
- if (argCount === 7) {
- _gl.texSubImage2D(arguments[0], arguments[1], arguments[2], arguments[3], arguments[4], arguments[5], arguments[6]);
- } else if (argCount === 9) {
- _gl.texSubImage2D(arguments[0], arguments[1], arguments[2], arguments[3], arguments[4], arguments[5], arguments[6], arguments[7], arguments[8]);
- } else {
- console.log("texSubImage2DOpt: Wrong number of arguments, expected 7 or 9 but got ".concat(argCount));
- }
- }
- function uniform1fOpt(location, x) {
-
- if (next_index + 3 >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_UNIFORM_1F;
- buffer_data[next_index + 1] = location;
- buffer_data[next_index + 2] = x;
- next_index += 3;
- ++commandCount;
- }
- function uniform2fOpt(location, x, y) {
-
- if (next_index + 4 >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_UNIFORM_2F;
- buffer_data[next_index + 1] = location;
- buffer_data[next_index + 2] = x;
- buffer_data[next_index + 3] = y;
- next_index += 4;
- ++commandCount;
- }
- function uniform3fOpt(location, x, y, z) {
-
- if (next_index + 5 >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_UNIFORM_3F;
- buffer_data[next_index + 1] = location;
- buffer_data[next_index + 2] = x;
- buffer_data[next_index + 3] = y;
- buffer_data[next_index + 4] = z;
- next_index += 5;
- ++commandCount;
- }
- function uniform4fOpt(location, x, y, z, w) {
-
- if (next_index + 6 >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_UNIFORM_4F;
- buffer_data[next_index + 1] = location;
- buffer_data[next_index + 2] = x;
- buffer_data[next_index + 3] = y;
- buffer_data[next_index + 4] = z;
- buffer_data[next_index + 5] = w;
- next_index += 6;
- ++commandCount;
- }
- function uniform1iOpt(location, x) {
-
- if (next_index + 3 >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_UNIFORM_1I;
- buffer_data[next_index + 1] = location;
- buffer_data[next_index + 2] = x;
- next_index += 3;
- ++commandCount;
- }
- function uniform2iOpt(location, x, y) {
-
- if (next_index + 4 >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_UNIFORM_2I;
- buffer_data[next_index + 1] = location;
- buffer_data[next_index + 2] = x;
- buffer_data[next_index + 3] = y;
- next_index += 4;
- ++commandCount;
- }
- function uniform3iOpt(location, x, y, z) {
-
- if (next_index + 5 >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_UNIFORM_3I;
- buffer_data[next_index + 1] = location;
- buffer_data[next_index + 2] = x;
- buffer_data[next_index + 3] = y;
- buffer_data[next_index + 4] = z;
- next_index += 5;
- ++commandCount;
- }
- function uniform4iOpt(location, x, y, z, w) {
-
- if (next_index + 6 >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_UNIFORM_4I;
- buffer_data[next_index + 1] = location;
- buffer_data[next_index + 2] = x;
- buffer_data[next_index + 3] = y;
- buffer_data[next_index + 4] = z;
- buffer_data[next_index + 5] = w;
- next_index += 6;
- ++commandCount;
- }
- function uniform1fvOpt(location, value) {
-
- if (next_index + 3 + value.length >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_UNIFORM_1FV;
- buffer_data[next_index + 1] = location;
- buffer_data[next_index + 2] = value.length;
- buffer_data.set(value, next_index + 3);
- next_index += 3 + value.length;
- ++commandCount;
- }
- function uniform2fvOpt(location, value) {
-
- if (next_index + 3 + value.length >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_UNIFORM_2FV;
- buffer_data[next_index + 1] = location;
- buffer_data[next_index + 2] = value.length;
- buffer_data.set(value, next_index + 3);
- next_index += 3 + value.length;
- ++commandCount;
- }
- function uniform3fvOpt(location, value) {
-
- if (next_index + 3 + value.length >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_UNIFORM_3FV;
- buffer_data[next_index + 1] = location;
- buffer_data[next_index + 2] = value.length;
- buffer_data.set(value, next_index + 3);
- next_index += 3 + value.length;
- ++commandCount;
- }
- function uniform4fvOpt(location, value) {
-
- if (next_index + 3 + value.length >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_UNIFORM_4FV;
- buffer_data[next_index + 1] = location;
- buffer_data[next_index + 2] = value.length;
- buffer_data.set(value, next_index + 3);
- next_index += 3 + value.length;
- ++commandCount;
- }
- function uniform1ivOpt(location, value) {
-
- if (next_index + 3 + value.length >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_UNIFORM_1IV;
- buffer_data[next_index + 1] = location;
- buffer_data[next_index + 2] = value.length;
- buffer_data.set(value, next_index + 3);
- next_index += 3 + value.length;
- ++commandCount;
- }
- function uniform2ivOpt(location, value) {
-
- if (next_index + 3 + value.length >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_UNIFORM_2IV;
- buffer_data[next_index + 1] = location;
- buffer_data[next_index + 2] = value.length;
- buffer_data.set(value, next_index + 3);
- next_index += 3 + value.length;
- ++commandCount;
- }
- function uniform3ivOpt(location, value) {
-
- if (next_index + 3 + value.length >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_UNIFORM_3IV;
- buffer_data[next_index + 1] = location;
- buffer_data[next_index + 2] = value.length;
- buffer_data.set(value, next_index + 3);
- next_index += 3 + value.length;
- ++commandCount;
- }
- function uniform4ivOpt(location, value) {
-
- if (next_index + 3 + value.length >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_UNIFORM_4IV;
- buffer_data[next_index + 1] = location;
- buffer_data[next_index + 2] = value.length;
- buffer_data.set(value, next_index + 3);
- next_index += 3 + value.length;
- ++commandCount;
- }
- function uniformMatrix2fvOpt(location, transpose, value) {
-
- if (next_index + 4 + value.length >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_UNIFORM_MATRIX_2FV;
- buffer_data[next_index + 1] = location;
- buffer_data[next_index + 2] = transpose;
- buffer_data[next_index + 3] = value.length;
- buffer_data.set(value, next_index + 4);
- next_index += 4 + value.length;
- ++commandCount;
- }
- function uniformMatrix3fvOpt(location, transpose, value) {
-
- if (next_index + 4 + value.length >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_UNIFORM_MATRIX_3FV;
- buffer_data[next_index + 1] = location;
- buffer_data[next_index + 2] = transpose;
- buffer_data[next_index + 3] = value.length;
- buffer_data.set(value, next_index + 4);
- next_index += 4 + value.length;
- ++commandCount;
- }
- function uniformMatrix4fvOpt(location, transpose, value) {
-
- if (next_index + 4 + value.length >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_UNIFORM_MATRIX_4FV;
- buffer_data[next_index + 1] = location;
- buffer_data[next_index + 2] = transpose;
- buffer_data[next_index + 3] = value.length;
- buffer_data.set(value, next_index + 4);
- next_index += 4 + value.length;
- ++commandCount;
- }
- function useProgramOpt(program) {
-
- if (next_index + 2 >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_USE_PROGRAM;
- buffer_data[next_index + 1] = program ? program._id : 0;
- next_index += 2;
- ++commandCount;
- }
- function validateProgramOpt(program) {
-
- if (next_index + 2 >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_VALIDATE_PROGRAM;
- buffer_data[next_index + 1] = program ? program._id : 0;
- next_index += 2;
- ++commandCount;
- }
- function vertexAttrib1fOpt(index, x) {
-
- if (next_index + 3 >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_VERTEX_ATTRIB_1F;
- buffer_data[next_index + 1] = index;
- buffer_data[next_index + 2] = x;
- next_index += 3;
- ++commandCount;
- }
- function vertexAttrib2fOpt(index, x, y) {
-
- if (next_index + 4 >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_VERTEX_ATTRIB_2F;
- buffer_data[next_index + 1] = index;
- buffer_data[next_index + 2] = x;
- buffer_data[next_index + 3] = y;
- next_index += 4;
- ++commandCount;
- }
- function vertexAttrib3fOpt(index, x, y, z) {
-
- if (next_index + 5 >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_VERTEX_ATTRIB_3F;
- buffer_data[next_index + 1] = index;
- buffer_data[next_index + 2] = x;
- buffer_data[next_index + 3] = y;
- buffer_data[next_index + 4] = z;
- next_index += 5;
- ++commandCount;
- }
- function vertexAttrib4fOpt(index, x, y, z, w) {
-
- if (next_index + 6 >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_VERTEX_ATTRIB_4F;
- buffer_data[next_index + 1] = index;
- buffer_data[next_index + 2] = x;
- buffer_data[next_index + 3] = y;
- buffer_data[next_index + 4] = z;
- buffer_data[next_index + 5] = w;
- next_index += 6;
- ++commandCount;
- }
- function vertexAttrib1fvOpt(index, value) {
-
- if (next_index + 3 + value.length >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_VERTEX_ATTRIB_1FV;
- buffer_data[next_index + 1] = index;
- buffer_data[next_index + 2] = value.length;
- buffer_data.set(value, next_index + 3);
- next_index += 3 + value.length;
- ++commandCount;
- }
- function vertexAttrib2fvOpt(index, value) {
-
- if (next_index + 3 + value.length >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_VERTEX_ATTRIB_2FV;
- buffer_data[next_index + 1] = index;
- buffer_data[next_index + 2] = value.length;
- buffer_data.set(value, next_index + 3);
- next_index += 3 + value.length;
- ++commandCount;
- }
- function vertexAttrib3fvOpt(index, value) {
-
- if (next_index + 3 + value.length >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_VERTEX_ATTRIB_3FV;
- buffer_data[next_index + 1] = index;
- buffer_data[next_index + 2] = value.length;
- buffer_data.set(value, next_index + 3);
- next_index += 3 + value.length;
- ++commandCount;
- }
- function vertexAttrib4fvOpt(index, value) {
-
- if (next_index + 3 + value.length >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_VERTEX_ATTRIB_4FV;
- buffer_data[next_index + 1] = index;
- buffer_data[next_index + 2] = value.length;
- buffer_data.set(value, next_index + 3);
- next_index += 3 + value.length;
- ++commandCount;
- }
- function vertexAttribPointerOpt(index, size, type, normalized, stride, offset) {
-
- if (next_index + 7 >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_VERTEX_ATTRIB_POINTER;
- buffer_data[next_index + 1] = index;
- buffer_data[next_index + 2] = size;
- buffer_data[next_index + 3] = type;
- buffer_data[next_index + 4] = normalized ? 1 : 0;
- buffer_data[next_index + 5] = stride;
- buffer_data[next_index + 6] = offset;
- next_index += 7;
- ++commandCount;
- }
- function viewportOpt(x, y, width, height) {
-
- if (next_index + 5 >= total_size) {
- flushCommands();
- }
- buffer_data[next_index] = GL_COMMAND_VIEW_PORT;
- buffer_data[next_index + 1] = x;
- buffer_data[next_index + 2] = y;
- buffer_data[next_index + 3] = width;
- buffer_data[next_index + 4] = height;
- next_index += 5;
- ++commandCount;
- }
- function isSupportTypeArray() {
-
-
- return true;
-
-
-
-
-
-
- }
- function attachMethodOpt() {
- gl.activeTexture = activeTextureOpt;
- gl.attachShader = attachShaderOpt;
- gl.bindAttribLocation = bindAttribLocationOpt;
- gl.bindBuffer = bindBufferOpt;
- gl.bindFramebuffer = bindFramebufferOpt;
- gl.bindRenderbuffer = bindRenderbufferOpt;
- gl.bindTexture = bindTextureOpt;
- gl.blendColor = blendColorOpt;
- gl.blendEquation = blendEquationOpt;
- gl.blendEquationSeparate = blendEquationSeparateOpt;
- gl.blendFunc = blendFuncOpt;
- gl.blendFuncSeparate = blendFuncSeparateOpt;
- gl.bufferData = bufferDataOpt;
- gl.bufferSubData = bufferSubDataOpt;
- gl.checkFramebufferStatus = checkFramebufferStatusOpt;
- gl.clear = clearOpt;
- gl.clearColor = clearColorOpt;
- gl.clearDepth = clearDepthOpt;
- gl.clearStencil = clearStencilOpt;
- gl.colorMask = colorMaskOpt;
- gl.compileShader = compileShaderOpt;
- gl.compressedTexImage2D = compressedTexImage2DOpt;
- gl.compressedTexSubImage2D = compressedTexSubImage2DOpt;
- gl.copyTexImage2D = copyTexImage2DOpt;
- gl.copyTexSubImage2D = copyTexSubImage2DOpt;
- gl.createBuffer = createBufferOpt;
- gl.createFramebuffer = createFramebufferOpt;
- gl.createProgram = createProgramOpt;
- gl.createRenderbuffer = createRenderbufferOpt;
- gl.createShader = createShaderOpt;
- gl.createTexture = createTextureOpt;
- gl.cullFace = cullFaceOpt;
- gl.deleteBuffer = deleteBufferOpt;
- gl.deleteFramebuffer = deleteFramebufferOpt;
- gl.deleteProgram = deleteProgramOpt;
- gl.deleteRenderbuffer = deleteRenderbufferOpt;
- gl.deleteShader = deleteShaderOpt;
- gl.deleteTexture = deleteTextureOpt;
- gl.depthFunc = depthFuncOpt;
- gl.depthMask = depthMaskOpt;
- gl.depthRange = depthRangeOpt;
- gl.detachShader = detachShaderOpt;
- gl.disable = disableOpt;
- gl.disableVertexAttribArray = disableVertexAttribArrayOpt;
- gl.drawArrays = drawArraysOpt;
- gl.drawElements = drawElementsOpt;
- gl.enable = enableOpt;
- gl.enableVertexAttribArray = enableVertexAttribArrayOpt;
- gl.finish = finishOpt;
- gl.flush = flushOpt;
- gl.framebufferRenderbuffer = framebufferRenderbufferOpt;
- gl.framebufferTexture2D = framebufferTexture2DOpt;
- gl.frontFace = frontFaceOpt;
- gl.generateMipmap = generateMipmapOpt;
- gl.getActiveAttrib = getActiveAttribOpt;
- gl.getActiveUniform = getActiveUniformOpt;
- gl.getAttachedShaders = getAttachedShadersOpt;
- gl.getAttribLocation = getAttribLocationOpt;
- gl.getBufferParameter = getBufferParameterOpt;
- gl.getParameter = getParameterOpt;
- gl.getError = getErrorOpt;
- gl.getFramebufferAttachmentParameter = getFramebufferAttachmentParameterOpt;
- gl.getProgramParameter = getProgramParameterOpt;
- gl.getProgramInfoLog = getProgramInfoLogOpt;
- gl.getRenderbufferParameter = getRenderbufferParameterOpt;
- gl.getShaderParameter = getShaderParameterOpt;
- gl.getShaderPrecisionFormat = getShaderPrecisionFormatOpt;
- gl.getShaderInfoLog = getShaderInfoLogOpt;
- gl.getShaderSource = getShaderSourceOpt;
- gl.getTexParameter = getTexParameterOpt;
- gl.getUniform = getUniformOpt;
- gl.getUniformLocation = getUniformLocationOpt;
- gl.getVertexAttrib = getVertexAttribOpt;
- gl.getVertexAttribOffset = getVertexAttribOffsetOpt;
- gl.hint = hintOpt;
- gl.isBuffer = isBufferOpt;
- gl.isEnabled = isEnabledOpt;
- gl.isFramebuffer = isFramebufferOpt;
- gl.isProgram = isProgramOpt;
- gl.isRenderbuffer = isRenderbufferOpt;
- gl.isShader = isShaderOpt;
- gl.isTexture = isTextureOpt;
- gl.lineWidth = lineWidthOpt;
- gl.linkProgram = linkProgramOpt;
- gl.pixelStorei = pixelStoreiOpt;
- gl.polygonOffset = polygonOffsetOpt;
- gl.readPixels = readPixelsOpt;
- gl.renderbufferStorage = renderbufferStorageOpt;
- gl.sampleCoverage = sampleCoverageOpt;
- gl.scissor = scissorOpt;
- gl.shaderSource = shaderSourceOpt;
- gl.stencilFunc = stencilFuncOpt;
- gl.stencilFuncSeparate = stencilFuncSeparateOpt;
- gl.stencilMask = stencilMaskOpt;
- gl.stencilMaskSeparate = stencilMaskSeparateOpt;
- gl.stencilOp = stencilOpOpt;
- gl.stencilOpSeparate = stencilOpSeparateOpt;
- gl.texImage2D = texImage2DOpt;
- gl.texParameterf = texParameterfOpt;
- gl.texParameteri = texParameteriOpt;
- gl.texSubImage2D = texSubImage2DOpt;
- gl.uniform1f = uniform1fOpt;
- gl.uniform2f = uniform2fOpt;
- gl.uniform3f = uniform3fOpt;
- gl.uniform4f = uniform4fOpt;
- gl.uniform1i = uniform1iOpt;
- gl.uniform2i = uniform2iOpt;
- gl.uniform3i = uniform3iOpt;
- gl.uniform4i = uniform4iOpt;
- gl.uniform1fv = uniform1fvOpt;
- gl.uniform2fv = uniform2fvOpt;
- gl.uniform3fv = uniform3fvOpt;
- gl.uniform4fv = uniform4fvOpt;
- gl.uniform1iv = uniform1ivOpt;
- gl.uniform2iv = uniform2ivOpt;
- gl.uniform3iv = uniform3ivOpt;
- gl.uniform4iv = uniform4ivOpt;
- gl.uniformMatrix2fv = uniformMatrix2fvOpt;
- gl.uniformMatrix3fv = uniformMatrix3fvOpt;
- gl.uniformMatrix4fv = uniformMatrix4fvOpt;
- gl.useProgram = useProgramOpt;
- gl.validateProgram = validateProgramOpt;
- gl.vertexAttrib1f = vertexAttrib1fOpt;
- gl.vertexAttrib2f = vertexAttrib2fOpt;
- gl.vertexAttrib3f = vertexAttrib3fOpt;
- gl.vertexAttrib4f = vertexAttrib4fOpt;
- gl.vertexAttrib1fv = vertexAttrib1fvOpt;
- gl.vertexAttrib2fv = vertexAttrib2fvOpt;
- gl.vertexAttrib3fv = vertexAttrib3fvOpt;
- gl.vertexAttrib4fv = vertexAttrib4fvOpt;
- gl.vertexAttribPointer = vertexAttribPointerOpt;
- gl.viewport = viewportOpt;
- }
- batchGLCommandsToNative();
- module.exports = {
- disableBatchGLCommandsToNative: disableBatchGLCommandsToNative,
- flushCommands: flushCommands
- };
- },{}],4:[function(require,module,exports){
- "use strict";
- function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
- window.CanvasRenderingContext2D = jsb.CanvasRenderingContext2D;
- delete jsb.CanvasRenderingContext2D;
- jsb.device = jsb.Device;
- var _require = require('./base64/base64.min'),
- btoa = _require.btoa,
- atob = _require.atob;
- window.btoa = btoa;
- window.atob = atob;
- var _require2 = require('./Blob'),
- Blob = _require2.Blob,
- URL = _require2.URL;
- window.Blob = Blob;
- window.URL = URL;
- window.DOMParser = require('./xmldom/dom-parser').DOMParser;
- require('./jsb_prepare');
- require('./jsb_opengl');
- require('./jsb-adapter');
- require('./jsb_audioengine');
- require('./jsb_input');
- require('./renderer/enums');
- require('./renderer/jsb-vertex-format');
- require('./renderer/jsb-gfx');
- require('./renderer/jsb-renderer');
- var _oldRequestFrameCallback = null;
- var _requestAnimationFrameID = 0;
- var _requestAnimationFrameCallbacks = {};
- var _firstTick = true;
- window.requestAnimationFrame = function (cb) {
- var id = ++_requestAnimationFrameID;
- _requestAnimationFrameCallbacks[id] = cb;
- return id;
- };
- window.cancelAnimationFrame = function (id) {
- delete _requestAnimationFrameCallbacks[id];
- };
- var _require3 = require('./glOptMode'),
- disableBatchGLCommandsToNative = _require3.disableBatchGLCommandsToNative,
- flushCommands = _require3.flushCommands;
- window.optConfig = {
- disableBatchGLCommandsToNative: disableBatchGLCommandsToNative
- };
- function tick(nowMilliSeconds) {
- if (_firstTick) {
- _firstTick = false;
- if (window.onload) {
- var event = new Event('load');
- event._target = window;
- window.onload(event);
- }
- }
- fireTimeout(nowMilliSeconds);
- for (var id in _requestAnimationFrameCallbacks) {
- _oldRequestFrameCallback = _requestAnimationFrameCallbacks[id];
- if (_oldRequestFrameCallback) {
- delete _requestAnimationFrameCallbacks[id];
- _oldRequestFrameCallback(nowMilliSeconds);
- }
- }
- flushCommands();
- }
- var _timeoutIDIndex = 0;
- var TimeoutInfo = function TimeoutInfo(cb, delay, isRepeat, target, args) {
- _classCallCheck(this, TimeoutInfo);
- this.cb = cb;
- this.id = ++_timeoutIDIndex;
- this.start = performance.now();
- this.delay = delay;
- this.isRepeat = isRepeat;
- this.target = target;
- this.args = args;
- };
- var _timeoutInfos = {};
- function fireTimeout(nowMilliSeconds) {
- var info;
- for (var id in _timeoutInfos) {
- info = _timeoutInfos[id];
- if (info && info.cb) {
- if (nowMilliSeconds - info.start >= info.delay) {
-
- if (typeof info.cb === 'string') {
- Function(info.cb)();
- } else if (typeof info.cb === 'function') {
- info.cb.apply(info.target, info.args);
- }
- if (info.isRepeat) {
- info.start = nowMilliSeconds;
- } else {
- delete _timeoutInfos[id];
- }
- }
- }
- }
- }
- function createTimeoutInfo(prevFuncArgs, isRepeat) {
- var cb = prevFuncArgs[0];
- if (!cb) {
- console.error("createTimeoutInfo doesn't pass a callback ...");
- return 0;
- }
- var delay = prevFuncArgs.length > 1 ? prevFuncArgs[1] : 0;
- var args;
- if (prevFuncArgs.length > 2) {
- args = Array.prototype.slice.call(prevFuncArgs, 2);
- }
- var info = new TimeoutInfo(cb, delay, isRepeat, this, args);
- _timeoutInfos[info.id] = info;
- return info.id;
- }
- window.setTimeout = function (cb) {
- return createTimeoutInfo(arguments, false);
- };
- window.clearTimeout = function (id) {
- delete _timeoutInfos[id];
- };
- window.setInterval = function (cb) {
- return createTimeoutInfo(arguments, true);
- };
- window.clearInterval = window.clearTimeout;
- window.alert = console.error.bind(console);
- var __motionCallbackID = 0;
- var __motionEnabled = false;
- var __motionInterval = 16.6;
- jsb.device.setMotionInterval = function (milliseconds) {
- __motionInterval = milliseconds;
- jsb.device.setAccelerometerInterval(__motionInterval / 1000);
- if (__motionEnabled) {
- jsb.device.setMotionEnabled(false);
- jsb.device.setMotionEnabled(true);
- }
- };
- jsb.device.setMotionEnabled = function (enabled) {
- if (__motionEnabled === enabled) return;
- jsb.device.setAccelerometerEnabled(enabled);
- if (enabled) {
- var motionValue;
- var event = new DeviceMotionEvent();
- __motionCallbackID = window.setInterval(function () {
- motionValue = jsb.device.getDeviceMotionValue();
- event._acceleration.x = motionValue[0];
- event._acceleration.y = motionValue[1];
- event._acceleration.z = motionValue[2];
- event._accelerationIncludingGravity.x = motionValue[3];
- event._accelerationIncludingGravity.y = motionValue[4];
- event._accelerationIncludingGravity.z = motionValue[5];
- event._rotationRate.alpha = motionValue[6];
- event._rotationRate.beta = motionValue[7];
- event._rotationRate.gamma = motionValue[8];
- event._interval = __motionInterval;
- jsb.device.dispatchDeviceMotionEvent(event);
- }, __motionInterval);
- } else {
- window.clearInterval(__motionCallbackID);
- __motionCallbackID = 0;
- }
- __motionEnabled = enabled;
- };
- if (typeof jsb.FileUtils !== 'undefined') {
- jsb.fileUtils = jsb.FileUtils.getInstance();
- delete jsb.FileUtils;
- }
- XMLHttpRequest.prototype.addEventListener = function (eventName, listener, options) {
- this['on' + eventName] = listener;
- };
- XMLHttpRequest.prototype.removeEventListener = function (eventName, listener, options) {
- this['on' + eventName] = null;
- };
- if (window.SocketIO) {
- window.io = window.SocketIO;
- SocketIO.prototype._Emit = SocketIO.prototype.emit;
- SocketIO.prototype.emit = function (uri, delegate) {
- if (_typeof(delegate) === 'object') {
- delegate = JSON.stringify(delegate);
- }
- this._Emit(uri, delegate);
- };
- }
- window.gameTick = tick;
- jsb.generateGetSet = function (moduleObj) {
- for (var classKey in moduleObj) {
- var classProto = moduleObj[classKey] && moduleObj[classKey].prototype;
- if (!classProto) continue;
- var _loop = function _loop(getName) {
- var getPos = getName.search(/^get/);
- if (getPos == -1) return "continue";
- var propName = getName.replace(/^get/, '');
- var nameArr = propName.split('');
- var lowerFirst = nameArr[0].toLowerCase();
- var upperFirst = nameArr[0].toUpperCase();
- nameArr.splice(0, 1);
- var left = nameArr.join('');
- propName = lowerFirst + left;
- var setName = 'set' + upperFirst + left;
- if (classProto.hasOwnProperty(propName)) return "continue";
- var setFunc = classProto[setName];
- var hasSetFunc = typeof setFunc === 'function';
- if (hasSetFunc) {
- Object.defineProperty(classProto, propName, {
- get: function get() {
- return this[getName]();
- },
- set: function set(val) {
- this[setName](val);
- },
- configurable: true
- });
- } else {
- Object.defineProperty(classProto, propName, {
- get: function get() {
- return this[getName]();
- },
- configurable: true
- });
- }
- };
- for (var getName in classProto) {
- var _ret = _loop(getName);
- if (_ret === "continue") continue;
- }
- }
- };
- require('./promise.min');
- },{"./Blob":1,"./base64/base64.min":2,"./glOptMode":3,"./jsb-adapter":27,"./jsb_audioengine":32,"./jsb_input":33,"./jsb_opengl":34,"./jsb_prepare":36,"./promise.min":37,"./renderer/enums":38,"./renderer/jsb-gfx":39,"./renderer/jsb-renderer":40,"./renderer/jsb-vertex-format":41,"./xmldom/dom-parser":42}],5:[function(require,module,exports){
- "use strict";
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
- var DOMRect = function DOMRect(x, y, width, height) {
- _classCallCheck(this, DOMRect);
- this.x = x ? x : 0;
- this.y = y ? y : 0;
- this.width = width ? width : 0;
- this.height = height ? height : 0;
- this.left = this.x;
- this.top = this.y;
- this.right = this.x + this.width;
- this.bottom = this.y + this.height;
- };
- module.exports = DOMRect;
- },{}],6:[function(require,module,exports){
- "use strict";
- function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
- function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
- function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }
- function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
- function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); }
- function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
- function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
- var Event = require('./Event');
- var DeviceMotionEvent = function (_Event) {
- _inherits(DeviceMotionEvent, _Event);
- var _super = _createSuper(DeviceMotionEvent);
- function DeviceMotionEvent(initArgs) {
- var _this;
- _classCallCheck(this, DeviceMotionEvent);
- _this = _super.call(this, 'devicemotion');
- if (initArgs) {
- _this._acceleration = initArgs.acceleration ? initArgs.acceleration : {
- x: 0,
- y: 0,
- z: 0
- };
- _this._accelerationIncludingGravity = initArgs.accelerationIncludingGravity ? initArgs.accelerationIncludingGravity : {
- x: 0,
- y: 0,
- z: 0
- };
- _this._rotationRate = initArgs.rotationRate ? initArgs.rotationRate : {
- alpha: 0,
- beta: 0,
- gamma: 0
- };
- _this._interval = initArgs.interval;
- } else {
- _this._acceleration = {
- x: 0,
- y: 0,
- z: 0
- };
- _this._accelerationIncludingGravity = {
- x: 0,
- y: 0,
- z: 0
- };
- _this._rotationRate = {
- alpha: 0,
- beta: 0,
- gamma: 0
- };
- _this._interval = 0;
- }
- return _this;
- }
- _createClass(DeviceMotionEvent, [{
- key: "acceleration",
- get: function get() {
- return this._acceleration;
- }
- }, {
- key: "accelerationIncludingGravity",
- get: function get() {
- return this._accelerationIncludingGravity;
- }
- }, {
- key: "rotationRate",
- get: function get() {
- return this._rotationRate;
- }
- }, {
- key: "interval",
- get: function get() {
- return this._interval;
- }
- }]);
- return DeviceMotionEvent;
- }(Event);
- module.exports = DeviceMotionEvent;
- },{"./Event":8}],7:[function(require,module,exports){
- "use strict";
- function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
- function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
- function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }
- function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
- function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); }
- function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
- function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
- var Node = require('./Node');
- var DOMRect = require('./DOMRect');
- var Element = function (_Node) {
- _inherits(Element, _Node);
- var _super = _createSuper(Element);
- function Element() {
- var _this;
- _classCallCheck(this, Element);
- _this = _super.call(this);
- _this.className = '';
- _this.children = [];
- _this.clientLeft = 0;
- _this.clientTop = 0;
- _this.scrollLeft = 0;
- _this.scrollTop = 0;
- return _this;
- }
- _createClass(Element, [{
- key: "clientWidth",
- get: function get() {
- return 0;
- }
- }, {
- key: "clientHeight",
- get: function get() {
- return 0;
- }
- }, {
- key: "getBoundingClientRect",
- value: function getBoundingClientRect() {
- return new DOMRect(0, 0, window.innerWidth, window.innerHeight);
- }
- }, {
- key: "removeAttribute",
- value: function removeAttribute(attrName) {}
- }]);
- return Element;
- }(Node);
- module.exports = Element;
- },{"./DOMRect":5,"./Node":24}],8:[function(require,module,exports){
- "use strict";
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
- function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
- var Event = function () {
- function Event(type, eventInit) {
- _classCallCheck(this, Event);
- this._type = type;
- this._target = null;
- this._eventPhase = 2;
- this._currentTarget = null;
- this._canceled = false;
- this._stopped = false;
- this._passiveListener = null;
- this._timeStamp = Date.now();
- }
-
- _createClass(Event, [{
- key: "type",
- get: function get() {
- return this._type;
- }
-
- }, {
- key: "target",
- get: function get() {
- return this._target;
- }
-
- }, {
- key: "currentTarget",
- get: function get() {
- return this._currentTarget;
- }
- }, {
- key: "isTrusted",
- get: function get() {
-
- return false;
- }
- }, {
- key: "timeStamp",
- get:
-
- function get() {
- return this._timeStamp;
- }
- }, {
- key: "composedPath",
- value:
-
- function composedPath() {
- var currentTarget = this._currentTarget;
- if (currentTarget === null) {
- return [];
- }
- return [currentTarget];
- }
-
- }, {
- key: "eventPhase",
- get: function get() {
- return this._eventPhase;
- }
-
- }, {
- key: "stopPropagation",
- value: function stopPropagation() {}
-
- }, {
- key: "stopImmediatePropagation",
- value: function stopImmediatePropagation() {
- this._stopped = true;
- }
-
- }, {
- key: "bubbles",
- get: function get() {
- return false;
- }
-
- }, {
- key: "cancelable",
- get: function get() {
- return true;
- }
-
- }, {
- key: "preventDefault",
- value: function preventDefault() {
- if (this._passiveListener !== null) {
- console.warn("Event#preventDefault() was called from a passive listener:", this._passiveListener);
- return;
- }
- if (!this.cancelable) {
- return;
- }
- this._canceled = true;
- }
-
- }, {
- key: "defaultPrevented",
- get: function get() {
- return this._canceled;
- }
-
- }, {
- key: "composed",
- get: function get() {
- return false;
- }
- }]);
- return Event;
- }();
- Event.NONE = 0;
- Event.CAPTURING_PHASE = 1;
- Event.AT_TARGET = 2;
- Event.BUBBLING_PHASE = 3;
- module.exports = Event;
- },{}],9:[function(require,module,exports){
- "use strict";
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
- function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
- function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
- var __targetID = 0;
- var __listenerMap = {
- touch: {},
- mouse: {},
- keyboard: {},
- devicemotion: {}
- };
- var __listenerCountMap = {
- touch: 0,
- mouse: 0,
- keyboard: 0,
- devicemotion: 0
- };
- var __enableCallbackMap = {
- touch: null,
- mouse: null,
- keyboard: null,
-
-
-
- devicemotion: null
-
-
- };
- var __disableCallbackMap = {
- touch: null,
- mouse: null,
-
-
-
- keyboard: null,
- devicemotion: null
-
-
- };
- var __handleEventNames = {
- touch: ['touchstart', 'touchmove', 'touchend', 'touchcancel'],
- mouse: ['mousedown', 'mousemove', 'mouseup', 'mousewheel'],
- keyboard: ['keydown', 'keyup', 'keypress'],
- devicemotion: ['devicemotion']
- };
- var CAPTURE = 1;
- var BUBBLE = 2;
- var ATTRIBUTE = 3;
- function isObject(x) {
- return x && _typeof(x) === "object";
- }
- var EventTarget = function () {
- function EventTarget() {
- _classCallCheck(this, EventTarget);
- this._targetID = ++__targetID;
- this._listenerCount = {
- touch: 0,
- mouse: 0,
- keyboard: 0,
- devicemotion: 0
- };
- this._listeners = new Map();
- }
- _createClass(EventTarget, [{
- key: "_associateSystemEventListener",
- value: function _associateSystemEventListener(eventName) {
- var handleEventNames;
- for (var key in __handleEventNames) {
- handleEventNames = __handleEventNames[key];
- if (handleEventNames.indexOf(eventName) > -1) {
- if (__enableCallbackMap[key] && __listenerCountMap[key] === 0) {
- __enableCallbackMap[key]();
- }
- if (this._listenerCount[key] === 0) __listenerMap[key][this._targetID] = this;
- ++this._listenerCount[key];
- ++__listenerCountMap[key];
- break;
- }
- }
- }
- }, {
- key: "_dissociateSystemEventListener",
- value: function _dissociateSystemEventListener(eventName) {
- var handleEventNames;
- for (var key in __handleEventNames) {
- handleEventNames = __handleEventNames[key];
- if (handleEventNames.indexOf(eventName) > -1) {
- if (this._listenerCount[key] <= 0) delete __listenerMap[key][this._targetID];
- --__listenerCountMap[key];
- if (__disableCallbackMap[key] && __listenerCountMap[key] === 0) {
- __disableCallbackMap[key]();
- }
- break;
- }
- }
- }
-
- }, {
- key: "addEventListener",
- value: function addEventListener(eventName, listener, options) {
- if (!listener) {
- return false;
- }
- if (typeof listener !== "function" && !isObject(listener)) {
- throw new TypeError("'listener' should be a function or an object.");
- }
- var listeners = this._listeners;
- var optionsIsObj = isObject(options);
- var capture = optionsIsObj ? Boolean(options.capture) : Boolean(options);
- var listenerType = capture ? CAPTURE : BUBBLE;
- var newNode = {
- listener: listener,
- listenerType: listenerType,
- passive: optionsIsObj && Boolean(options.passive),
- once: optionsIsObj && Boolean(options.once),
- next: null
- };
- var node = listeners.get(eventName);
- if (node === undefined) {
- listeners.set(eventName, newNode);
- this._associateSystemEventListener(eventName);
- return true;
- }
- var prev = null;
- while (node) {
- if (node.listener === listener && node.listenerType === listenerType) {
-
- return false;
- }
- prev = node;
- node = node.next;
- }
- prev.next = newNode;
- this._associateSystemEventListener(eventName);
- return true;
- }
-
- }, {
- key: "removeEventListener",
- value: function removeEventListener(eventName, listener, options) {
- if (!listener) {
- return false;
- }
- var listeners = this._listeners;
- var capture = isObject(options) ? Boolean(options.capture) : Boolean(options);
- var listenerType = capture ? CAPTURE : BUBBLE;
- var prev = null;
- var node = listeners.get(eventName);
- while (node) {
- if (node.listener === listener && node.listenerType === listenerType) {
- if (prev) {
- prev.next = node.next;
- } else if (node.next) {
- listeners.set(eventName, node.next);
- } else {
- listeners["delete"](eventName);
- }
- this._dissociateSystemEventListener(eventName);
- return true;
- }
- prev = node;
- node = node.next;
- }
- return false;
- }
-
- }, {
- key: "dispatchEvent",
- value: function dispatchEvent(event) {
- if (!event || typeof event.type !== "string") {
- throw new TypeError("\"event.type\" should be a string.");
- }
- var eventName = event.type;
- var onFunc = this['on' + eventName];
- if (onFunc && typeof onFunc === 'function') {
- event._target = event._currentTarget = this;
- onFunc.call(this, event);
- event._target = event._currentTarget = null;
- event._eventPhase = 0;
- event._passiveListener = null;
- if (event.defaultPrevented) return false;
- }
- var listeners = this._listeners;
- var node = listeners.get(eventName);
- if (!node) {
- return true;
- }
- event._target = event._currentTarget = this;
-
- var prev = null;
- while (node) {
-
- if (node.once) {
- if (prev) {
- prev.next = node.next;
- } else if (node.next) {
- listeners.set(eventName, node.next);
- } else {
- listeners["delete"](eventName);
- }
- } else {
- prev = node;
- }
- event._passiveListener = node.passive ? node.listener : null;
- if (typeof node.listener === "function") {
- node.listener.call(this, event);
- }
- if (event._stopped) {
- break;
- }
- node = node.next;
- }
- event._target = event._currentTarget = null;
- event._eventPhase = 0;
- event._passiveListener = null;
- return !event.defaultPrevented;
- }
- }]);
- return EventTarget;
- }();
- function touchEventHandlerFactory(type) {
- return function (touches) {
- var touchEvent = new TouchEvent(type);
- touchEvent.touches = touches;
- touchEvent.targetTouches = Array.prototype.slice.call(touchEvent.touches);
- touchEvent.changedTouches = touches;
-
- var i = 0,
- touchCount = touches.length;
- var target;
- var touchListenerMap = __listenerMap.touch;
- for (var key in touchListenerMap) {
- target = touchListenerMap[key];
- for (i = 0; i < touchCount; ++i) {
- touches[i].target = target;
- }
- target.dispatchEvent(touchEvent);
- }
- };
- }
- jsb.onTouchStart = touchEventHandlerFactory('touchstart');
- jsb.onTouchMove = touchEventHandlerFactory('touchmove');
- jsb.onTouchEnd = touchEventHandlerFactory('touchend');
- jsb.onTouchCancel = touchEventHandlerFactory('touchcancel');
- function mouseEventHandlerFactory(type) {
- return function (event) {
- var button = event.button;
- var x = event.x;
- var y = event.y;
- var mouseEvent = new MouseEvent(type, {
- button: button,
- which: button + 1,
- wheelDelta: event.wheelDeltaY,
- clientX: x,
- clientY: y,
- screenX: x,
- screenY: y,
- pageX: x,
- pageY: y
- });
- var target;
- var mouseListenerMap = __listenerMap.mouse;
- for (var key in mouseListenerMap) {
- target = mouseListenerMap[key];
- target.dispatchEvent(mouseEvent);
- }
- };
- }
- jsb.onMouseDown = mouseEventHandlerFactory('mousedown');
- jsb.onMouseMove = mouseEventHandlerFactory('mousemove');
- jsb.onMouseUp = mouseEventHandlerFactory('mouseup');
- jsb.onMouseWheel = mouseEventHandlerFactory('mousewheel');
- function keyboardEventHandlerFactory(type) {
- return function (event) {
- var keyboardEvent = new KeyboardEvent(type, {
- altKey: event.altKey,
- ctrlKey: event.ctrlKey,
- metaKey: event.metaKey,
- shiftKey: event.shiftKey,
- repeat: event.repeat,
- keyCode: event.keyCode
- });
- var target;
- var keyboardListenerMap = __listenerMap.keyboard;
- for (var key in keyboardListenerMap) {
- target = keyboardListenerMap[key];
- target.dispatchEvent(keyboardEvent);
- }
- };
- }
- jsb.onKeyDown = keyboardEventHandlerFactory('keydown');
- jsb.onKeyUp = keyboardEventHandlerFactory('keyup');
- jsb.device.dispatchDeviceMotionEvent = function (event) {
- var target;
- var devicemotionListenerMap = __listenerMap.devicemotion;
- for (var key in devicemotionListenerMap) {
- target = devicemotionListenerMap[key];
- target.dispatchEvent(event);
- }
- };
- module.exports = EventTarget;
- },{}],10:[function(require,module,exports){
- "use strict";
- function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
- function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
- function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }
- function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
- function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); }
- function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
- function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
- var EventTarget = require('./EventTarget');
- var FileReader = function (_EventTarget) {
- _inherits(FileReader, _EventTarget);
- var _super = _createSuper(FileReader);
- function FileReader() {
- _classCallCheck(this, FileReader);
- return _super.apply(this, arguments);
- }
- _createClass(FileReader, [{
- key: "construct",
- value: function construct() {
- this.result = null;
- }
- }, {
- key: "abort",
- value: function abort() {}
- }, {
- key: "readAsArrayBuffer",
- value: function readAsArrayBuffer() {}
- }, {
- key: "readAsDataURL",
- value: function readAsDataURL(blob) {
- this.result = 'data:image/png;base64,' + window.btoa(blob);
- var event = new Event('load');
- this.dispatchEvent(event);
- }
- }, {
- key: "readAsText",
- value: function readAsText() {}
- }]);
- return FileReader;
- }(EventTarget);
- module.exports = FileReader;
- },{"./EventTarget":9}],11:[function(require,module,exports){
- "use strict";
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
- function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
- var FontFace = function () {
- function FontFace(family, source, descriptors) {
- var _this = this;
- _classCallCheck(this, FontFace);
- this.family = family;
- this.source = source;
- this.descriptors = descriptors;
- this._status = 'unloaded';
- this._loaded = new Promise(function (resolve, reject) {
- _this._resolveCB = resolve;
- _this._rejectCB = reject;
- });
- }
- _createClass(FontFace, [{
- key: "load",
- value: function load() {
- }
- }, {
- key: "status",
- get: function get() {
- return this._status;
- }
- }, {
- key: "loaded",
- get: function get() {
- return this._loaded;
- }
- }]);
- return FontFace;
- }();
- module.exports = FontFace;
- },{}],12:[function(require,module,exports){
- "use strict";
- function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
- function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
- function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }
- function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
- function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); }
- function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
- function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
- var EventTarget = require('./EventTarget');
- var Event = require('./Event');
- var FontFaceSet = function (_EventTarget) {
- _inherits(FontFaceSet, _EventTarget);
- var _super = _createSuper(FontFaceSet);
- function FontFaceSet() {
- var _this;
- _classCallCheck(this, FontFaceSet);
- _this = _super.call(this);
- _this._status = 'loading';
- return _this;
- }
- _createClass(FontFaceSet, [{
- key: "status",
- get: function get() {
- return this._status;
- }
- }, {
- key: "onloading",
- set: function set(listener) {
- this.addEventListener('loading', listener);
- }
- }, {
- key: "onloadingdone",
- set: function set(listener) {
- this.addEventListener('loadingdone', listener);
- }
- }, {
- key: "onloadingerror",
- set: function set(listener) {
- this.addEventListener('loadingerror', listener);
- }
- }, {
- key: "add",
- value: function add(fontFace) {
- var _this2 = this;
- this._status = fontFace._status = 'loading';
- this.dispatchEvent(new Event('loading'));
- var family = jsb.loadFont(fontFace.family, fontFace.source);
- setTimeout(function () {
- if (family) {
- fontFace._status = _this2._status = 'loaded';
- fontFace._resolveCB();
- _this2.dispatchEvent(new Event('loadingdone'));
- } else {
- fontFace._status = _this2._status = 'error';
- fontFace._rejectCB();
- _this2.dispatchEvent(new Event('loadingerror'));
- }
- }, 0);
- }
- }, {
- key: "clear",
- value: function clear() {}
- }, {
- key: "delete",
- value: function _delete() {}
- }, {
- key: "load",
- value: function load() {}
- }, {
- key: "ready",
- value: function ready() {}
- }]);
- return FontFaceSet;
- }(EventTarget);
- module.exports = FontFaceSet;
- },{"./Event":8,"./EventTarget":9}],13:[function(require,module,exports){
- "use strict";
- function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
- function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }
- function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
- function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); }
- function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
- function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
- function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
- var HTMLElement = require('./HTMLElement');
- var ImageData = require('./ImageData');
- var DOMRect = require('./DOMRect');
- var clamp = function clamp(value) {
- value = Math.round(value);
- return value < 0 ? 0 : value < 255 ? value : 255;
- };
- var CanvasGradient = function () {
- function CanvasGradient() {
- _classCallCheck(this, CanvasGradient);
- console.log("==> CanvasGradient constructor");
- }
- _createClass(CanvasGradient, [{
- key: "addColorStop",
- value: function addColorStop(offset, color) {
- console.log("==> CanvasGradient addColorStop");
- }
- }]);
- return CanvasGradient;
- }();
- var TextMetrics = function () {
- function TextMetrics(width) {
- _classCallCheck(this, TextMetrics);
- this._width = width;
- }
- _createClass(TextMetrics, [{
- key: "width",
- get: function get() {
- return this._width;
- }
- }]);
- return TextMetrics;
- }();
- var HTMLCanvasElement = function (_HTMLElement) {
- _inherits(HTMLCanvasElement, _HTMLElement);
- var _super = _createSuper(HTMLCanvasElement);
- function HTMLCanvasElement(width, height) {
- var _this;
- _classCallCheck(this, HTMLCanvasElement);
- _this = _super.call(this, 'canvas');
- _this.id = 'glcanvas';
- _this.type = 'canvas';
- _this.top = 0;
- _this.left = 0;
- _this._width = width ? Math.ceil(width) : 0;
- _this._height = height ? Math.ceil(height) : 0;
- _this._context2D = null;
- _this._data = null;
- _this._alignment = 4;
-
- _this._premultiplied = false;
- return _this;
- }
- _createClass(HTMLCanvasElement, [{
- key: "getContext",
- value: function getContext(name, opts) {
- var self = this;
- if (name === 'webgl' || name === 'experimental-webgl') {
- if (this === window.__canvas) return window.__gl;else return null;
- } else if (name === '2d') {
- if (!this._context2D) {
- this._context2D = new CanvasRenderingContext2D(this._width, this._height);
- this._data = new ImageData(this._width, this._height);
- this._context2D._canvas = this;
- this._context2D._setCanvasBufferUpdatedCallback(function (data) {
-
- self._data = new ImageData(data, self._width, self._height);
- self._alignment = self._width % 2 === 0 ? 8 : 4;
- });
- }
- return this._context2D;
- }
- return null;
- }
- }, {
- key: "width",
- get: function get() {
- return this._width;
- },
- set: function set(width) {
- width = Math.ceil(width);
- if (this._width !== width) {
- this._width = width;
- if (this._context2D) {
- this._context2D._width = width;
- }
- }
- }
- }, {
- key: "height",
- get: function get() {
- return this._height;
- },
- set: function set(height) {
- height = Math.ceil(height);
- if (this._height !== height) {
- this._height = height;
- if (this._context2D) {
- this._context2D._height = height;
- }
- }
- }
- }, {
- key: "clientWidth",
- get: function get() {
- return window.innerWidth;
- }
- }, {
- key: "clientHeight",
- get: function get() {
- return window.innerHeight;
- }
- }, {
- key: "data",
- get: function get() {
- if (this._data) {
- return this._data.data;
- }
- return null;
- }
- }, {
- key: "getBoundingClientRect",
- value: function getBoundingClientRect() {
- return new DOMRect(0, 0, window.innerWidth, window.innerHeight);
- }
- }]);
- return HTMLCanvasElement;
- }(HTMLElement);
- var ctx2DProto = CanvasRenderingContext2D.prototype;
- ctx2DProto.createImageData = function (args1, args2) {
- if (typeof args1 === 'number' && typeof args2 == 'number') {
- return new ImageData(args1, args2);
- } else if (args1 instanceof ImageData) {
- return new ImageData(args1.data, args1.width, args1.height);
- }
- };
- ctx2DProto.putImageData = function (imageData, dx, dy, dirtyX, dirtyY, dirtyWidth, dirtyHeight) {
- if (typeof loadRuntime === "function") {
- var height = imageData.height;
- var width = imageData.width;
- var canvasWidth = this._canvas._width;
- var canvasHeight = this._canvas._height;
- dirtyX = dirtyX || 0;
- dirtyY = dirtyY || 0;
- dirtyWidth = dirtyWidth !== undefined ? dirtyWidth : width;
- dirtyHeight = dirtyHeight !== undefined ? dirtyHeight : height;
- var limitBottom = dirtyY + dirtyHeight;
- var limitRight = dirtyX + dirtyWidth;
- dirtyHeight = limitBottom < canvasHeight ? dirtyHeight : dirtyHeight - (limitBottom - canvasHeight);
- dirtyWidth = limitRight < canvasWidth ? dirtyWidth : dirtyWidth - (limitRight - canvasWidth);
- dirtyWidth = Math.floor(dirtyWidth);
- dirtyHeight = Math.floor(dirtyHeight);
- var imageToFill = new ImageData(dirtyWidth, dirtyHeight);
- for (var y = dirtyY; y < limitBottom; y++) {
- for (var x = dirtyX; x < limitRight; x++) {
- var imgPos = y * width + x;
- var toPos = (y - dirtyY) * dirtyWidth + (x - dirtyX);
- imageToFill.data[toPos * 4 + 0] = imageData.data[imgPos * 4 + 0];
- imageToFill.data[toPos * 4 + 1] = imageData.data[imgPos * 4 + 1];
- imageToFill.data[toPos * 4 + 2] = imageData.data[imgPos * 4 + 2];
- imageToFill.data[toPos * 4 + 3] = imageData.data[imgPos * 4 + 3];
- }
- }
- this._fillImageData(imageToFill.data, dirtyWidth, dirtyHeight, dx, dy);
- } else {
- this._canvas._data = imageData;
- }
- };
- ctx2DProto.getImageData = function (sx, sy, sw, sh) {
- var canvasWidth = this._canvas._width;
- var canvasHeight = this._canvas._height;
- var canvasBuffer = this._canvas._data.data;
- var maxValidSH = sh + sy < canvasHeight ? sh : canvasHeight - sy;
- var maxValidSW = sw + sx < canvasWidth ? sw : canvasWidth - sx;
- var imgBuffer = new Uint8ClampedArray(sw * sh * 4);
- for (var y = 0; y < maxValidSH; y++) {
- for (var x = 0; x < maxValidSW; x++) {
- var canvasPos = (y + sy) * canvasWidth + (x + sx);
- var imgPos = y * sw + x;
- imgBuffer[imgPos * 4 + 0] = canvasBuffer[canvasPos * 4 + 0];
- imgBuffer[imgPos * 4 + 1] = canvasBuffer[canvasPos * 4 + 1];
- imgBuffer[imgPos * 4 + 2] = canvasBuffer[canvasPos * 4 + 2];
- imgBuffer[imgPos * 4 + 3] = canvasBuffer[canvasPos * 4 + 3];
- }
- }
- return new ImageData(imgBuffer, sw, sh);
- };
- module.exports = HTMLCanvasElement;
- },{"./DOMRect":5,"./HTMLElement":14,"./ImageData":20}],14:[function(require,module,exports){
- "use strict";
- function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
- function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
- function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }
- function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
- function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); }
- function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
- function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
- var Element = require('./Element');
- var _require = require('./util'),
- noop = _require.noop;
- var HTMLElement = function (_Element) {
- _inherits(HTMLElement, _Element);
- var _super = _createSuper(HTMLElement);
- function HTMLElement() {
- var _this;
- var tagName = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';
- _classCallCheck(this, HTMLElement);
- _this = _super.call(this);
- _this.tagName = tagName.toUpperCase();
- _this.className = '';
- _this.children = [];
- _this.style = {
- width: "".concat(window.innerWidth, "px"),
- height: "".concat(window.innerHeight, "px")
- };
- _this.innerHTML = '';
- _this.parentElement = window.__canvas;
- return _this;
- }
- _createClass(HTMLElement, [{
- key: "setAttribute",
- value: function setAttribute(name, value) {
- this[name] = value;
- }
- }, {
- key: "getAttribute",
- value: function getAttribute(name) {
- return this[name];
- }
- }, {
- key: "focus",
- value: function focus() {}
- }]);
- return HTMLElement;
- }(Element);
- module.exports = HTMLElement;
- },{"./Element":7,"./util":30}],15:[function(require,module,exports){
- "use strict";
- function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
- function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
- function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }
- function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
- function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); }
- function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
- function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
- var HTMLElement = require('./HTMLElement');
- var Event = require('./Event');
- var gl = window.__gl;
- var HTMLImageElement = function (_HTMLElement) {
- _inherits(HTMLImageElement, _HTMLElement);
- var _super = _createSuper(HTMLImageElement);
- function HTMLImageElement(width, height, isCalledFromImage) {
- var _this;
- _classCallCheck(this, HTMLImageElement);
- if (!isCalledFromImage) {
- throw new TypeError("Illegal constructor, use 'new Image(w, h); instead!'");
- return _possibleConstructorReturn(_this);
- }
- _this = _super.call(this, 'img');
- _this.width = width ? width : 0;
- _this.height = height ? height : 0;
- _this._data = null;
- _this._src = null;
- _this.complete = false;
- _this._glFormat = _this._glInternalFormat = gl.RGBA;
- _this.crossOrigin = null;
- return _this;
- }
- _createClass(HTMLImageElement, [{
- key: "src",
- get: function get() {
- return this._src;
- },
- set: function set(src) {
- var _this2 = this;
- this._src = src;
- jsb.loadImage(src, function (info) {
- if (!info) {
- _this2._data = null;
- return;
- } else if (info && info.errorMsg) {
- _this2._data = null;
- var event = new Event('error');
- _this2.dispatchEvent(event);
- return;
- }
- _this2.width = _this2.naturalWidth = info.width;
- _this2.height = _this2.naturalHeight = info.height;
- _this2._data = info.data;
- _this2._glFormat = info.glFormat;
- _this2._glInternalFormat = info.glInternalFormat;
- _this2._glType = info.glType;
- _this2._numberOfMipmaps = info.numberOfMipmaps;
- _this2._compressed = info.compressed;
- _this2._bpp = info.bpp;
- _this2._premultiplyAlpha = info.premultiplyAlpha;
- _this2._alignment = 1;
- if ((_this2._numberOfMipmaps == 0 || _this2._numberOfMipmaps == 1) && !_this2._compressed) {
- var bytesPerRow = _this2.width * _this2._bpp / 8;
- if (bytesPerRow % 8 == 0) _this2._alignment = 8;else if (bytesPerRow % 4 == 0) _this2._alignment = 4;else if (bytesPerRow % 2 == 0) _this2._alignment = 2;
- }
- _this2.complete = true;
- var event = new Event('load');
- _this2.dispatchEvent(event);
- });
- }
- }, {
- key: "clientWidth",
- get: function get() {
- return this.width;
- }
- }, {
- key: "clientHeight",
- get: function get() {
- return this.height;
- }
- }, {
- key: "getBoundingClientRect",
- value: function getBoundingClientRect() {
- return new DOMRect(0, 0, this.width, this.height);
- }
- }]);
- return HTMLImageElement;
- }(HTMLElement);
- module.exports = HTMLImageElement;
- },{"./Event":8,"./HTMLElement":14}],16:[function(require,module,exports){
- "use strict";
- function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
- function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
- function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }
- function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
- function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); }
- function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
- function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
- var HTMLElement = require('./HTMLElement');
- var MediaError = require('./MediaError');
- var HAVE_NOTHING = 0;
- var HAVE_METADATA = 1;
- var HAVE_CURRENT_DATA = 2;
- var HAVE_FUTURE_DATA = 3;
- var HAVE_ENOUGH_DATA = 4;
- var HTMLMediaElement = function (_HTMLElement) {
- _inherits(HTMLMediaElement, _HTMLElement);
- var _super = _createSuper(HTMLMediaElement);
- function HTMLMediaElement(type) {
- var _this;
- _classCallCheck(this, HTMLMediaElement);
- _this = _super.call(this, type);
- _this._volume = 1.0;
- _this._duration = 0;
- _this._isEnded = false;
- _this._isMute = false;
- _this._readyState = HAVE_NOTHING;
- _this._error = new MediaError();
- return _this;
- }
- _createClass(HTMLMediaElement, [{
- key: "addTextTrack",
- value: function addTextTrack() {}
- }, {
- key: "captureStream",
- value: function captureStream() {}
- }, {
- key: "fastSeek",
- value: function fastSeek() {}
- }, {
- key: "load",
- value: function load() {}
- }, {
- key: "pause",
- value: function pause() {}
- }, {
- key: "play",
- value: function play() {}
- }, {
- key: "canPlayType",
- value: function canPlayType(mediaType) {
- return '';
- }
- }, {
- key: "volume",
- get: function get() {
- return this._volume;
- },
- set: function set(volume) {
- this._volume = volume;
- }
- }, {
- key: "duration",
- get: function get() {
- return this._duration;
- }
- }, {
- key: "ended",
- get: function get() {
- return this._isEnded;
- }
- }, {
- key: "muted",
- get: function get() {
- return this._isMute;
- }
- }, {
- key: "readyState",
- get: function get() {
- return this._readyState;
- }
- }, {
- key: "error",
- get: function get() {
- return this._error;
- }
- }, {
- key: "currentTime",
- get: function get() {
- return 0;
- }
- }]);
- return HTMLMediaElement;
- }(HTMLElement);
- module.exports = HTMLMediaElement;
- },{"./HTMLElement":14,"./MediaError":22}],17:[function(require,module,exports){
- "use strict";
- function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
- function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
- function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }
- function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
- function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); }
- function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
- function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
- var HTMLElement = require('./HTMLElement');
- var Event = require('./Event');
- var HTMLScriptElement = function (_HTMLElement) {
- _inherits(HTMLScriptElement, _HTMLElement);
- var _super = _createSuper(HTMLScriptElement);
- function HTMLScriptElement(width, height) {
- _classCallCheck(this, HTMLScriptElement);
- return _super.call(this, 'script');
- }
- _createClass(HTMLScriptElement, [{
- key: "src",
- set: function set(url) {
- var _this = this;
- setTimeout(function () {
- require(url);
- _this.dispatchEvent(new Event('load'));
- }, 0);
- }
- }]);
- return HTMLScriptElement;
- }(HTMLElement);
- module.exports = HTMLScriptElement;
- },{"./Event":8,"./HTMLElement":14}],18:[function(require,module,exports){
- "use strict";
- function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
- function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
- function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }
- function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
- function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); }
- function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
- function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
- var HTMLMediaElement = require('./HTMLMediaElement');
- var HTMLVideoElement = function (_HTMLMediaElement) {
- _inherits(HTMLVideoElement, _HTMLMediaElement);
- var _super = _createSuper(HTMLVideoElement);
- function HTMLVideoElement() {
- _classCallCheck(this, HTMLVideoElement);
- return _super.call(this, 'video');
- }
- _createClass(HTMLVideoElement, [{
- key: "canPlayType",
- value: function canPlayType(type) {
- if (type === 'video/mp4') return true;
- return false;
- }
- }]);
- return HTMLVideoElement;
- }(HTMLMediaElement);
- module.exports = HTMLVideoElement;
- },{"./HTMLMediaElement":16}],19:[function(require,module,exports){
- "use strict";
- function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
- function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }
- function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
- function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); }
- function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
- function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
- var HTMLImageElement = require('./HTMLImageElement');
- var Image = function (_HTMLImageElement) {
- _inherits(Image, _HTMLImageElement);
- var _super = _createSuper(Image);
- function Image(width, height) {
- _classCallCheck(this, Image);
- return _super.call(this, width, height, true);
- }
- return Image;
- }(HTMLImageElement);
- module.exports = Image;
- },{"./HTMLImageElement":15}],20:[function(require,module,exports){
- "use strict";
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
- function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
- var ImageData = function () {
-
-
- function ImageData(array, width, height) {
- _classCallCheck(this, ImageData);
- if (typeof array === 'number' && typeof width == 'number') {
- height = width;
- width = array;
- array = null;
- }
- if (array === null) {
- this._data = new Uint8ClampedArray(width * height * 4);
- } else {
- this._data = array;
- }
- this._width = width;
- this._height = height;
- }
- _createClass(ImageData, [{
- key: "data",
- get: function get() {
- return this._data;
- }
- }, {
- key: "width",
- get: function get() {
- return this._width;
- }
- }, {
- key: "height",
- get: function get() {
- return this._height;
- }
- }]);
- return ImageData;
- }();
- module.exports = ImageData;
- },{}],21:[function(require,module,exports){
- "use strict";
- function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
- function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
- function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }
- function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
- function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); }
- function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
- function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
- var Event = require('./Event');
- var __numberShiftMap = {
- '48': ')',
-
- '49': '!',
-
- '50': '@',
-
- '51': '#',
-
- '52': '$',
-
- '53': '%',
-
- '54': '^',
-
- '55': '&',
-
- '56': '*',
-
- '57': '('
- };
- var __capsLockActive = false;
- var KeyboardEvent = function (_Event) {
- _inherits(KeyboardEvent, _Event);
- var _super = _createSuper(KeyboardEvent);
- function KeyboardEvent(type, KeyboardEventInit) {
- var _this;
- _classCallCheck(this, KeyboardEvent);
- _this = _super.call(this, type);
- if (_typeof(KeyboardEventInit) === 'object') {
- _this._altKeyActive = KeyboardEventInit.altKey ? KeyboardEventInit.altKey : false;
- _this._ctrlKeyActive = KeyboardEventInit.ctrlKey ? KeyboardEventInit.ctrlKey : false;
- _this._metaKeyActive = KeyboardEventInit.metaKey ? KeyboardEventInit.metaKey : false;
- _this._shiftKeyActive = KeyboardEventInit.shiftKey ? KeyboardEventInit.shiftKey : false;
- _this._keyCode = KeyboardEventInit.keyCode ? KeyboardEventInit.keyCode : -1;
- _this._repeat = KeyboardEventInit.repeat ? KeyboardEventInit.repeat : false;
- } else {
- _this._altKeyActive = false;
- _this._ctrlKeyActive = false;
- _this._metaKeyActive = false;
- _this._shiftKeyActive = false;
- _this._keyCode = -1;
- _this._repeat = false;
- }
- var keyCode = _this._keyCode;
- if (keyCode >= 48 && keyCode <= 57) {
-
- var number = keyCode - 48;
- _this._code = 'Digit' + number;
- _this._key = _this._shiftKeyActive ? __numberShiftMap[keyCode] : '' + number;
- } else if (keyCode >= 10048 && keyCode <= 10057) {
-
-
- keyCode = _this._keyCode = keyCode - 10000;
- var number = keyCode - 48;
- _this._code = 'Numpad' + number;
- _this._key = '' + number;
- } else if (keyCode >= 65 && keyCode <= 90) {
-
- var charCode = String.fromCharCode(keyCode);
- _this._code = 'Key' + charCode;
- _this._key = _this._shiftKeyActive || __capsLockActive ? charCode : charCode.toLowerCase();
- } else if (keyCode >= 112 && keyCode <= 123) {
-
- _this._code = _this._key = 'F' + (keyCode - 111);
- } else if (keyCode === 27) {
- _this._code = _this._key = 'Escape';
- } else if (keyCode === 189) {
- _this._code = 'Minus';
- _this._key = _this._shiftKeyActive ? '_' : '-';
- } else if (keyCode === 187) {
- _this._code = 'Equal';
- _this._key = _this._shiftKeyActive ? '+' : '=';
- } else if (keyCode === 220) {
- _this._code = 'Backslash';
- _this._key = _this._shiftKeyActive ? '|' : '\\';
- } else if (keyCode === 192) {
- _this._code = 'Backquote';
- _this._key = _this._shiftKeyActive ? '~' : '`';
- } else if (keyCode === 8) {
- _this._code = _this._key = 'Backspace';
- } else if (keyCode === 13) {
- _this._code = _this._key = 'Enter';
- } else if (keyCode === 219) {
- _this._code = 'BracketLeft';
- _this._key = _this._shiftKeyActive ? '{' : '[';
- } else if (keyCode === 221) {
- _this._code = 'BracketRight';
- _this._key = _this._shiftKeyActive ? '}' : ']';
- } else if (keyCode === 186) {
- _this._code = 'Semicolon';
- _this._key = _this._shiftKeyActive ? ':' : ';';
- } else if (keyCode === 222) {
- _this._code = 'Quote';
- _this._key = _this._shiftKeyActive ? '"' : "'";
- } else if (keyCode === 9) {
- _this._code = _this._key = 'Tab';
- } else if (keyCode === 17) {
- _this._code = 'ControlLeft';
- _this._key = 'Control';
- } else if (keyCode === 20017) {
- _this._keyCode = 17;
- _this._code = 'ControlRight';
- _this._key = 'Control';
- } else if (keyCode === 16) {
- _this._code = 'ShiftLeft';
- _this._key = 'Shift';
- } else if (keyCode === 20016) {
- _this._keyCode = 16;
- _this._code = 'ShiftRight';
- _this._key = 'Shift';
- } else if (keyCode === 18) {
- _this._code = 'AltLeft';
- _this._key = 'Alt';
- } else if (keyCode === 20018) {
- _this._keyCode = 18;
- _this._code = 'AltRight';
- _this._key = 'Alt';
- } else if (keyCode === 91) {
- _this._code = 'MetaLeft';
- _this._key = 'Meta';
- } else if (keyCode === 93) {
- _this._code = 'MetaRight';
- _this._key = 'Meta';
- } else if (keyCode === 37) {
- _this._code = _this._key = 'ArrowLeft';
- } else if (keyCode === 38) {
- _this._code = _this._key = 'ArrowUp';
- } else if (keyCode === 39) {
- _this._code = _this._key = 'ArrowRight';
- } else if (keyCode === 40) {
- _this._code = _this._key = 'ArrowDown';
- } else if (keyCode === 20093) {
- _this._keyCode = 93;
- _this._code = _this._key = 'ContextMenu';
- } else if (keyCode === 20013) {
- _this._keyCode = 13;
- _this._code = 'NumpadEnter';
- _this._key = 'Enter';
- } else if (keyCode === 107) {
- _this._code = 'NumpadAdd';
- _this._key = '+';
- } else if (keyCode === 109) {
- _this._code = 'NumpadSubtract';
- _this._key = '-';
- } else if (keyCode === 106) {
- _this._code = 'NumpadMultiply';
- _this._key = '*';
- } else if (keyCode === 111) {
- _this._code = 'NumpadDivide';
- _this._key = '/';
- } else if (keyCode === 12) {
- _this._code = 'NumLock';
- _this._key = 'Clear';
- } else if (keyCode === 124) {
- _this._code = _this._key = 'F13';
- } else if (keyCode === 36) {
- _this._code = _this._key = 'Home';
- } else if (keyCode === 33) {
- _this._code = _this._key = 'PageUp';
- } else if (keyCode === 34) {
- _this._code = _this._key = 'PageDown';
- } else if (keyCode === 35) {
- _this._code = _this._key = 'End';
- } else if (keyCode === 188) {
- _this._code = 'Comma';
- _this._key = _this._shiftKeyActive ? '<' : ',';
- } else if (keyCode === 190) {
- _this._code = 'Period';
- _this._key = _this._shiftKeyActive ? '>' : '.';
- } else if (keyCode === 191) {
- _this._code = 'Slash';
- _this._key = _this._shiftKeyActive ? '?' : '/';
- } else if (keyCode === 32) {
- _this._code = 'Space';
- _this._key = ' ';
- } else if (keyCode === 46) {
- _this._code = _this._key = 'Delete';
- } else if (keyCode === 110) {
- _this._code = 'NumpadDecimal';
- _this._key = '.';
- } else if (keyCode === 20) {
- _this._code = _this._key = 'CapsLock';
- if (type === 'keyup') {
- __capsLockActive = !__capsLockActive;
- }
- } else {
- console.log("Unknown keyCode: " + _this._keyCode);
- }
- return _this;
- }
- _createClass(KeyboardEvent, [{
- key: "getModifierState",
- value: function getModifierState() {
- return false;
- }
- }, {
- key: "altKey",
- get: function get() {
- return this._altKeyActive;
- }
- }, {
- key: "code",
- get: function get() {
- return this._code;
- }
- }, {
- key: "ctrlKey",
- get: function get() {
- return this._ctrlKeyActive;
- }
- }, {
- key: "isComposing",
- get: function get() {
- return false;
- }
- }, {
- key: "key",
- get: function get() {
- return this._key;
- }
- }, {
- key: "keyCode",
- get: function get() {
- return this._keyCode;
- }
- }, {
- key: "location",
- get: function get() {
- return 0;
- }
- }, {
- key: "metaKey",
- get: function get() {
- return this._metaKeyActive;
- }
- }, {
- key: "repeat",
- get: function get() {
- return this._repeat;
- }
- }, {
- key: "shiftKey",
- get: function get() {
- return this._shiftKeyActive;
- }
- }]);
- return KeyboardEvent;
- }(Event);
- module.exports = KeyboardEvent;
- },{"./Event":8}],22:[function(require,module,exports){
- "use strict";
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
- function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
- var MEDIA_ERR_ABORTED = 1;
- var MEDIA_ERR_NETWORK = 2;
- var MEDIA_ERR_DECODE = 3;
- var MEDIA_ERR_SRC_NOT_SUPPORTED = 4;
- var MediaError = function () {
- function MediaError() {
- _classCallCheck(this, MediaError);
- }
- _createClass(MediaError, [{
- key: "code",
- get: function get() {
- return MEDIA_ERR_ABORTED;
- }
- }, {
- key: "message",
- get: function get() {
- return "";
- }
- }]);
- return MediaError;
- }();
- module.exports = MediaError;
- },{}],23:[function(require,module,exports){
- "use strict";
- function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
- function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
- function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }
- function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
- function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); }
- function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
- function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
- var Event = require('./Event');
- var MouseEvent = function (_Event) {
- _inherits(MouseEvent, _Event);
- var _super = _createSuper(MouseEvent);
- function MouseEvent(type, initArgs) {
- var _this;
- _classCallCheck(this, MouseEvent);
- _this = _super.call(this, type);
- _this._button = initArgs.button;
- _this._which = initArgs.which;
- _this._wheelDelta = initArgs.wheelDelta;
- _this._clientX = initArgs.clientX;
- _this._clientY = initArgs.clientY;
- _this._screenX = initArgs.screenX;
- _this._screenY = initArgs.screenY;
- _this._pageX = initArgs.pageX;
- _this._pageY = initArgs.pageY;
- return _this;
- }
- _createClass(MouseEvent, [{
- key: "button",
- get: function get() {
- return this._button;
- }
- }, {
- key: "which",
- get: function get() {
- return this._which;
- }
- }, {
- key: "wheelDelta",
- get: function get() {
- return this._wheelDelta;
- }
- }, {
- key: "clientX",
- get: function get() {
- return this._clientX;
- }
- }, {
- key: "clientY",
- get: function get() {
- return this._clientY;
- }
- }, {
- key: "screenX",
- get: function get() {
- return this._screenX;
- }
- }, {
- key: "screenY",
- get: function get() {
- return this._screenY;
- }
- }, {
- key: "pageX",
- get: function get() {
- return this._pageX;
- }
- }, {
- key: "pageY",
- get: function get() {
- return this._pageY;
- }
- }]);
- return MouseEvent;
- }(Event);
- module.exports = MouseEvent;
- },{"./Event":8}],24:[function(require,module,exports){
- "use strict";
- function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
- function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
- function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }
- function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
- function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); }
- function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
- function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
- var EventTarget = require('./EventTarget');
- var Node = function (_EventTarget) {
- _inherits(Node, _EventTarget);
- var _super = _createSuper(Node);
- function Node() {
- var _this;
- _classCallCheck(this, Node);
- _this = _super.call(this);
- _this.childNodes = [];
- _this.parentNode = window.__canvas;
- return _this;
- }
- _createClass(Node, [{
- key: "appendChild",
- value: function appendChild(node) {
- if (node instanceof Node) {
- this.childNodes.push(node);
- } else {
- throw new TypeError('Failed to executed \'appendChild\' on \'Node\': parameter 1 is not of type \'Node\'.');
- }
- }
- }, {
- key: "insertBefore",
- value: function insertBefore(newNode, referenceNode) {
-
- return newNode;
- }
- }, {
- key: "replaceChild",
- value: function replaceChild(newChild, oldChild) {
-
- return oldChild;
- }
- }, {
- key: "cloneNode",
- value: function cloneNode() {
- var copyNode = Object.create(this);
- Object.assign(copyNode, this);
- return copyNode;
- }
- }, {
- key: "removeChild",
- value: function removeChild(node) {
- var index = this.childNodes.findIndex(function (child) {
- return child === node;
- });
- if (index > -1) {
- return this.childNodes.splice(index, 1);
- }
- return null;
- }
- }, {
- key: "contains",
- value: function contains(node) {
- return this.childNodes.indexOf(node) > -1;
- }
- }]);
- return Node;
- }(EventTarget);
- module.exports = Node;
- },{"./EventTarget":9}],25:[function(require,module,exports){
- "use strict";
- function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
- function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }
- function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
- function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); }
- function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
- function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
- var Event = require('./Event');
- var TouchEvent = function (_Event) {
- _inherits(TouchEvent, _Event);
- var _super = _createSuper(TouchEvent);
- function TouchEvent(type, touchEventInit) {
- var _this;
- _classCallCheck(this, TouchEvent);
- _this = _super.call(this, type);
- _this.touches = [];
- _this.targetTouches = [];
- _this.changedTouches = [];
- return _this;
- }
- return TouchEvent;
- }(Event);
- module.exports = TouchEvent;
- },{"./Event":8}],26:[function(require,module,exports){
- "use strict";
- function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
- function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
- function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }
- function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }
- function _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }
- function _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === "object" || typeof call === "function")) { return call; } return _assertThisInitialized(self); }
- function _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return self; }
- function _isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }
- function _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }
- var HTMLElement = require('./HTMLElement');
- var Image = require('./Image');
- var HTMLCanvasElement = require('./HTMLCanvasElement');
- var HTMLVideoElement = require('./HTMLVideoElement');
- var HTMLScriptElement = require('./HTMLScriptElement');
- var Node = require('./Node');
- var FontFaceSet = require('./FontFaceSet');
- var Document = function (_Node) {
- _inherits(Document, _Node);
- var _super = _createSuper(Document);
- function Document() {
- var _this;
- _classCallCheck(this, Document);
- _this = _super.call(this);
- _this.readyState = 'complete';
- _this.visibilityState = 'visible';
- _this.documentElement = window;
- _this.hidden = false;
- _this.style = {};
- _this.location = require('./location');
- _this.head = new HTMLElement('head');
- _this.body = new HTMLElement('body');
- _this.fonts = new FontFaceSet();
- _this.scripts = [];
- return _this;
- }
- _createClass(Document, [{
- key: "createElementNS",
- value: function createElementNS(namespaceURI, qualifiedName, options) {
- return this.createElement(qualifiedName);
- }
- }, {
- key: "createElement",
- value: function createElement(tagName) {
- if (tagName === 'canvas') {
- return new HTMLCanvasElement();
- } else if (tagName === 'img') {
- return new Image();
- } else if (tagName === 'video') {
- return new HTMLVideoElement();
- } else if (tagName === 'script') {
- return new HTMLScriptElement();
- }
- return new HTMLElement(tagName);
- }
- }, {
- key: "getElementById",
- value: function getElementById(id) {
- if (id === window.__canvas.id || id === 'canvas') {
- return window.__canvas;
- }
- return new HTMLElement(id);
- }
- }, {
- key: "getElementsByTagName",
- value: function getElementsByTagName(tagName) {
- if (tagName === 'head') {
- return [document.head];
- } else if (tagName === 'body') {
- return [document.body];
- } else if (tagName === 'canvas') {
- return [window.__canvas];
- }
- return [new HTMLElement(tagName)];
- }
- }, {
- key: "getElementsByName",
- value: function getElementsByName(tagName) {
- if (tagName === 'head') {
- return [document.head];
- } else if (tagName === 'body') {
- return [document.body];
- } else if (tagName === 'canvas') {
- return [window.__canvas];
- }
- return [new HTMLElement(tagName)];
- }
- }, {
- key: "querySelector",
- value: function querySelector(query) {
- if (query === 'head') {
- return document.head;
- } else if (query === 'body') {
- return document.body;
- } else if (query === 'canvas') {
- return window.__canvas;
- } else if (query === "#".concat(window.__canvas.id)) {
- return window.__canvas;
- }
- return new HTMLElement(query);
- }
- }, {
- key: "querySelectorAll",
- value: function querySelectorAll(query) {
- if (query === 'head') {
- return [document.head];
- } else if (query === 'body') {
- return [document.body];
- } else if (query === 'canvas') {
- return [window.__canvas];
- }
- return [new HTMLElement(query)];
- }
- }, {
- key: "createTextNode",
- value: function createTextNode() {
- return new HTMLElement('text');
- }
- }, {
- key: "elementFromPoint",
- value: function elementFromPoint() {
- return window.canvas;
- }
- }, {
- key: "createEvent",
- value: function createEvent(type) {
- if (window[type]) {
- return new window[type]();
- }
- return null;
- }
- }]);
- return Document;
- }(Node);
- var document = new Document();
- module.exports = document;
- },{"./FontFaceSet":12,"./HTMLCanvasElement":13,"./HTMLElement":14,"./HTMLScriptElement":17,"./HTMLVideoElement":18,"./Image":19,"./Node":24,"./location":28}],27:[function(require,module,exports){
- "use strict";
- require('./window');
- },{"./window":31}],28:[function(require,module,exports){
- "use strict";
- var location = {
- href: 'game.js',
- pathname: 'game.js',
- search: '',
- hash: '',
- reload: function reload() {}
- };
- module.exports = location;
- },{}],29:[function(require,module,exports){
- "use strict";
- var _require = require('./util'),
- noop = _require.noop;
- var navigator = {
- platform: __getOS(),
- language: __getCurrentLanguage(),
- appVersion: '5.0 (iPhone; CPU iPhone OS 9_1 like Mac OS X) AppleWebKit/601.1.46 (KHTML, like Gecko) Version/9.0 Mobile/13B143 Safari/601.1',
- userAgent: 'Mozilla/5.0 (iPhone; CPU iPhone OS 10_3_1 like Mac OS X) AppleWebKit/603.1.30 (KHTML, like Gecko) Mobile/14E8301 NetType/WIFI Language/zh_CN',
- onLine: true,
-
- geolocation: {
- getCurrentPosition: noop,
- watchPosition: noop,
- clearWatch: noop
- },
- maxTouchPoints: 10
- };
- module.exports = navigator;
- },{"./util":30}],30:[function(require,module,exports){
- "use strict";
- function noop() {}
- module.exports = noop;
- },{}],31:[function(require,module,exports){
- "use strict";
- function inject() {
- window.top = window.parent = window;
- window.ontouchstart = null;
- window.ontouchmove = null;
- window.ontouchend = null;
- window.ontouchcancel = null;
- window.pageXOffset = window.pageYOffset = window.clientTop = window.clientLeft = 0;
- window.outerWidth = window.innerWidth;
- window.outerHeight = window.innerHeight;
- window.location = require('./location');
- window.document = require('./document');
- window.Element = require('./Element');
- window.HTMLElement = require('./HTMLElement');
- window.HTMLCanvasElement = require('./HTMLCanvasElement');
- window.HTMLImageElement = require('./HTMLImageElement');
- window.HTMLMediaElement = require('./HTMLMediaElement');
- window.HTMLVideoElement = require('./HTMLVideoElement');
- window.HTMLScriptElement = require('./HTMLScriptElement');
- window.__canvas = new HTMLCanvasElement();
- window.__canvas._width = window.innerWidth;
- window.__canvas._height = window.innerHeight;
- window.__gl.canvas = window.__canvas;
- window.navigator = require('./navigator');
- window.Image = require('./Image');
- window.FileReader = require('./FileReader');
- window.FontFace = require('./FontFace');
- window.FontFaceSet = require('./FontFaceSet');
- window.EventTarget = require('./EventTarget');
- window.Event = require('./Event');
- window.TouchEvent = require('./TouchEvent');
- window.MouseEvent = require('./MouseEvent');
- window.KeyboardEvent = require('./KeyboardEvent');
- window.DeviceMotionEvent = require('./DeviceMotionEvent');
- Object.defineProperty(window, "devicePixelRatio", {
- get: function get() {
- return jsb.device.getDevicePixelRatio ? jsb.device.getDevicePixelRatio() : 1;
- },
- set: function set(_dpr) {
-
- },
- enumerable: true,
- configurable: true
- });
- window.addEventListener = function (eventName, listener, options) {
- window.__canvas.addEventListener(eventName, listener, options);
- };
- window.removeEventListener = function (eventName, listener, options) {
- window.__canvas.removeEventListener(eventName, listener, options);
- };
- window.dispatchEvent = function (event) {
- window.__canvas.dispatchEvent(event);
- };
- window.screen = {
- availTop: 0,
- availLeft: 0,
- availHeight: window.innerWidth,
- availWidth: window.innerHeight,
- colorDepth: 8,
- pixelDepth: 8,
- left: 0,
- top: 0,
- width: window.innerWidth,
- height: window.innerHeight,
- orientation: {
-
- type: 'portrait-primary'
- },
-
- SCREEN_ORIENTATION: {
- ROTATION_0: 0,
- ROTATION_90: 1,
- ROTATION_180: 2,
- ROTATION_270: 3
- },
- onOrientationChanged: function onOrientationChanged(event) {
- switch (event.rotation) {
- case window.screen.SCREEN_ORIENTATION.ROTATION_0:
- window.orientation = 0;
- break;
- case window.screen.SCREEN_ORIENTATION.ROTATION_90:
- window.orientation = 90;
- break;
- case window.screen.SCREEN_ORIENTATION.ROTATION_180:
- window.orientation = 180;
- break;
- case window.screen.SCREEN_ORIENTATION.ROTATION_270:
- window.orientation = -90;
- break;
- default:
- break;
- }
- var resizeEvent = new Event('orientationchange');
- window.dispatchEvent(resizeEvent);
- }
- };
- jsb.onOrientationChanged = function (event) {
- window.screen.onOrientationChanged(event);
- };
- window.screen.onOrientationChanged({
- rotation: jsb.device.getDeviceRotation()
- });
- window.getComputedStyle = function (element) {
- return {
- position: 'absolute',
- left: '0px',
- top: '0px',
- height: '0px'
- };
- };
- window.resize = function (width, height) {
- window.innerWidth = width;
- window.innerHeight = height;
- window.outerWidth = window.innerWidth;
- window.outerHeight = window.innerHeight;
- window.__canvas._width = window.innerWidth;
- window.__canvas._height = window.innerHeight;
- window.screen.availWidth = window.innerWidth;
- window.screen.availHeight = window.innerHeight;
- window.screen.width = window.innerWidth;
- window.screen.height = window.innerHeight;
- var resizeEvent = new Event('resize');
- resizeEvent._target = window;
- window.dispatchEvent(resizeEvent);
- };
- window.focus = function () {};
- window.scroll = function () {};
- window._isInjected = true;
- }
- if (!window._isInjected) {
- inject();
- }
- window.localStorage = sys.localStorage;
- },{"./DeviceMotionEvent":6,"./Element":7,"./Event":8,"./EventTarget":9,"./FileReader":10,"./FontFace":11,"./FontFaceSet":12,"./HTMLCanvasElement":13,"./HTMLElement":14,"./HTMLImageElement":15,"./HTMLMediaElement":16,"./HTMLScriptElement":17,"./HTMLVideoElement":18,"./Image":19,"./KeyboardEvent":21,"./MouseEvent":23,"./TouchEvent":25,"./document":26,"./location":28,"./navigator":29}],32:[function(require,module,exports){
- "use strict";
- (function (jsb) {
- if (!jsb || !jsb.AudioEngine) return;
- jsb.AudioEngine.AudioState = {
- ERROR: -1,
- INITIALZING: 0,
- PLAYING: 1,
- PAUSED: 2,
- STOPPED: 3
- };
- jsb.AudioEngine.INVALID_AUDIO_ID = -1;
- jsb.AudioEngine.TIME_UNKNOWN = -1;
- })(jsb);
- },{}],33:[function(require,module,exports){
- "use strict";
- var EventTarget = require('./jsb-adapter/EventTarget');
- var Event = require('./jsb-adapter/Event');
- var eventTarget = new EventTarget();
- var callbackWrappers = {};
- var callbacks = {};
- var index = 1;
- var callbackWrapper = function callbackWrapper(cb) {
- if (!cb) return null;
- var func = function func(event) {
- cb({
- value: event.text
- });
- };
- cb.___index = index++;
- callbackWrappers[cb.___index] = func;
- return func;
- };
- var getCallbackWrapper = function getCallbackWrapper(cb) {
- if (cb && cb.___index) {
- var ret = callbackWrappers[cb.___index];
- delete callbackWrappers[cb.___index];
- return ret;
- } else return null;
- };
- var removeListener = function removeListener(name, cb) {
- if (cb) eventTarget.removeEventListener(name, getCallbackWrapper(cb));else {
-
- var cbs = callbacks[name];
- if (!cbs) return;
- for (var i = 0, len = cbs.length; i < len; ++i) {
- eventTarget.removeEventListener(name, cbs[i]);
- }
- delete callbacks[name];
- }
- };
- var recordCallback = function recordCallback(name, cb) {
- if (!cb || !name || name === '') return;
- if (!callbacks[name]) callbacks[name] = [];
- callbacks[name].push(cb);
- };
- jsb.inputBox = {
- onConfirm: function onConfirm(cb) {
- var newCb = callbackWrapper(cb);
- eventTarget.addEventListener('confirm', newCb);
- recordCallback('confirm', newCb);
- },
- offConfirm: function offConfirm(cb) {
- removeListener('confirm', cb);
- },
- onComplete: function onComplete(cb) {
- var newCb = callbackWrapper(cb);
- eventTarget.addEventListener('complete', newCb);
- recordCallback('complete', newCb);
- },
- offComplete: function offComplete(cb) {
- removeListener('complete', cb);
- },
- onInput: function onInput(cb) {
- var newCb = callbackWrapper(cb);
- eventTarget.addEventListener('input', newCb);
- recordCallback('input', newCb);
- },
- offInput: function offInput(cb) {
- removeListener('input', cb);
- },
-
- show: function show(options) {
- jsb.showInputBox(options);
- },
- hide: function hide() {
- jsb.hideInputBox();
- },
- updateRect: function updateRect(x, y, width, height) {
- jsb.updateInputBoxRect(x, y, width, height);
- }
- };
- jsb.onTextInput = function (eventName, text) {
- var event = new Event(eventName);
- event.text = text;
- eventTarget.dispatchEvent(event);
- };
- },{"./jsb-adapter/Event":8,"./jsb-adapter/EventTarget":9}],34:[function(require,module,exports){
- "use strict";
- require('./jsb_opengl_constants');
- var gl = __gl;
- gl.drawingBufferWidth = window.innerWidth;
- gl.drawingBufferHeight = window.innerHeight;
- var WebGLCompressedTextureS3TC = {
- COMPRESSED_RGB_S3TC_DXT1_EXT: 0x83F0,
-
- COMPRESSED_RGBA_S3TC_DXT1_EXT: 0x83F1,
-
- COMPRESSED_RGBA_S3TC_DXT3_EXT: 0x83F2,
-
- COMPRESSED_RGBA_S3TC_DXT5_EXT: 0x83F3
- };
- var WebGLCompressedTextureETC1 = {
- COMPRESSED_RGB_ETC1_WEBGL: 0x8D64
- };
- var WebGLCompressedTexturePVRTC = {
- COMPRESSED_RGB_PVRTC_4BPPV1_IMG: 0x8C00,
-
- COMPRESSED_RGBA_PVRTC_4BPPV1_IMG: 0x8C02,
-
- COMPRESSED_RGB_PVRTC_2BPPV1_IMG: 0x8C01,
-
- COMPRESSED_RGBA_PVRTC_2BPPV1_IMG: 0x8C03
- };
- var extensionPrefixArr = ['MOZ_', 'WEBKIT_'];
- var extensionMap = {
- WEBGL_compressed_texture_s3tc: WebGLCompressedTextureS3TC,
- WEBGL_compressed_texture_pvrtc: WebGLCompressedTexturePVRTC,
- WEBGL_compressed_texture_etc1: WebGLCompressedTextureETC1
- };
- var supportedExtensions = gl.getSupportedExtensions();
- gl.getExtension = function (extension) {
- var prefix;
- for (var i = 0, len = extensionPrefixArr.length; i < len; ++i) {
- prefix = extensionPrefixArr[i];
- if (extension.startsWith(prefix)) {
- extension = extension.substring(prefix.length);
- break;
- }
- }
- if (supportedExtensions.indexOf(extension) > -1) {
- if (extension in extensionMap) {
- return extensionMap[extension];
- }
- return {};
- }
- return null;
- };
- var HTMLCanvasElement = require('./jsb-adapter/HTMLCanvasElement');
- var HTMLImageElement = require('./jsb-adapter/HTMLImageElement');
- var ImageData = require('./jsb-adapter/ImageData');
- var _glTexImage2D = gl.texImage2D;
- gl.texImage2D = function (target, level, internalformat, width, height, border, format, type, pixels) {
- var argCount = arguments.length;
- if (argCount == 6) {
- var image = border;
- type = height;
- format = width;
- if (image instanceof HTMLImageElement) {
- _glTexImage2D(target, level, image._glInternalFormat, image.width, image.height, 0, image._glFormat, image._glType, image._data, image._alignment);
- } else if (image instanceof HTMLCanvasElement) {
- var data = image.data;
- _glTexImage2D(target, level, internalformat, image.width, image.height, 0, format, type, data, image._alignment);
- } else if (image instanceof ImageData) {
- _glTexImage2D(target, level, internalformat, image.width, image.height, 0, format, type, image._data, 0);
- } else {
- console.error("Invalid pixel argument passed to gl.texImage2D!");
- }
- } else if (argCount == 9) {
- _glTexImage2D(target, level, internalformat, width, height, border, format, type, pixels, 0);
- } else {
- console.error("gl.texImage2D: invalid argument count!");
- }
- };
- var _glTexSubImage2D = gl.texSubImage2D;
- gl.texSubImage2D = function (target, level, xoffset, yoffset, width, height, format, type, pixels) {
- var argCount = arguments.length;
- if (argCount == 7) {
- var image = format;
- type = height;
- format = width;
- if (image instanceof HTMLImageElement) {
- _glTexSubImage2D(target, level, xoffset, yoffset, image.width, image.height, image._glFormat, image._glType, image._data, image._alignment);
- } else if (image instanceof HTMLCanvasElement) {
- var data = image.data;
- _glTexSubImage2D(target, level, xoffset, yoffset, image.width, image.height, format, type, data, image._alignment);
- } else if (image instanceof ImageData) {
- _glTexSubImage2D(target, level, xoffset, yoffset, image.width, image.height, format, type, image._data, 0);
- } else {
- console.error("Invalid pixel argument passed to gl.texImage2D!");
- }
- } else if (argCount == 9) {
- _glTexSubImage2D(target, level, xoffset, yoffset, width, height, format, type, pixels, 0);
- } else {
- console.error(new Error("gl.texImage2D: invalid argument count!").stack);
- }
- };
- gl.getContextAttributes = function () {
- return {
- alpha: true,
- antialias: false,
- depth: true,
- failIfMajorPerformanceCaveat: false,
- premultipliedAlpha: true,
- preserveDrawingBuffer: false,
- stencil: true
- };
- };
- gl.isContextLost = function () {
- return false;
- };
- },{"./jsb-adapter/HTMLCanvasElement":13,"./jsb-adapter/HTMLImageElement":15,"./jsb-adapter/ImageData":20,"./jsb_opengl_constants":35}],35:[function(require,module,exports){
- "use strict";
- var gl = __gl;
- gl.GCCSO_SHADER_BINARY_FJ = 0x9260;
- gl._3DC_XY_AMD = 0x87fa;
- gl._3DC_X_AMD = 0x87f9;
- gl.ACTIVE_ATTRIBUTES = 0x8b89;
- gl.ACTIVE_ATTRIBUTE_MAX_LENGTH = 0x8b8a;
- gl.ACTIVE_PROGRAM_EXT = 0x8259;
- gl.ACTIVE_TEXTURE = 0x84e0;
- gl.ACTIVE_UNIFORMS = 0x8b86;
- gl.ACTIVE_UNIFORM_MAX_LENGTH = 0x8b87;
- gl.ALIASED_LINE_WIDTH_RANGE = 0x846e;
- gl.ALIASED_POINT_SIZE_RANGE = 0x846d;
- gl.ALL_COMPLETED_NV = 0x84f2;
- gl.ALL_SHADER_BITS_EXT = 0xffffffff;
- gl.ALPHA = 0x1906;
- gl.ALPHA16F_EXT = 0x881c;
- gl.ALPHA32F_EXT = 0x8816;
- gl.ALPHA8_EXT = 0x803c;
- gl.ALPHA8_OES = 0x803c;
- gl.ALPHA_BITS = 0xd55;
- gl.ALPHA_TEST_FUNC_QCOM = 0xbc1;
- gl.ALPHA_TEST_QCOM = 0xbc0;
- gl.ALPHA_TEST_REF_QCOM = 0xbc2;
- gl.ALREADY_SIGNALED_APPLE = 0x911a;
- gl.ALWAYS = 0x207;
- gl.AMD_compressed_3DC_texture = 0x1;
- gl.AMD_compressed_ATC_texture = 0x1;
- gl.AMD_performance_monitor = 0x1;
- gl.AMD_program_binary_Z400 = 0x1;
- gl.ANGLE_depth_texture = 0x1;
- gl.ANGLE_framebuffer_blit = 0x1;
- gl.ANGLE_framebuffer_multisample = 0x1;
- gl.ANGLE_instanced_arrays = 0x1;
- gl.ANGLE_pack_reverse_row_order = 0x1;
- gl.ANGLE_program_binary = 0x1;
- gl.ANGLE_texture_compression_dxt3 = 0x1;
- gl.ANGLE_texture_compression_dxt5 = 0x1;
- gl.ANGLE_texture_usage = 0x1;
- gl.ANGLE_translated_shader_source = 0x1;
- gl.ANY_SAMPLES_PASSED_CONSERVATIVE_EXT = 0x8d6a;
- gl.ANY_SAMPLES_PASSED_EXT = 0x8c2f;
- gl.APPLE_copy_texture_levels = 0x1;
- gl.APPLE_framebuffer_multisample = 0x1;
- gl.APPLE_rgb_422 = 0x1;
- gl.APPLE_sync = 0x1;
- gl.APPLE_texture_format_BGRA8888 = 0x1;
- gl.APPLE_texture_max_level = 0x1;
- gl.ARM_mali_program_binary = 0x1;
- gl.ARM_mali_shader_binary = 0x1;
- gl.ARM_rgba8 = 0x1;
- gl.ARRAY_BUFFER = 0x8892;
- gl.ARRAY_BUFFER_BINDING = 0x8894;
- gl.ATC_RGBA_EXPLICIT_ALPHA_AMD = 0x8c93;
- gl.ATC_RGBA_INTERPOLATED_ALPHA_AMD = 0x87ee;
- gl.ATC_RGB_AMD = 0x8c92;
- gl.ATTACHED_SHADERS = 0x8b85;
- gl.BACK = 0x405;
- gl.BGRA8_EXT = 0x93a1;
- gl.BGRA_EXT = 0x80e1;
- gl.BGRA_IMG = 0x80e1;
- gl.BINNING_CONTROL_HINT_QCOM = 0x8fb0;
- gl.BLEND = 0xbe2;
- gl.BLEND_COLOR = 0x8005;
- gl.BLEND_DST_ALPHA = 0x80ca;
- gl.BLEND_DST_RGB = 0x80c8;
- gl.BLEND_EQUATION = 0x8009;
- gl.BLEND_EQUATION_ALPHA = 0x883d;
- gl.BLEND_EQUATION_RGB = 0x8009;
- gl.BLEND_SRC_ALPHA = 0x80cb;
- gl.BLEND_SRC_RGB = 0x80c9;
- gl.BLUE_BITS = 0xd54;
- gl.BOOL = 0x8b56;
- gl.BOOL_VEC2 = 0x8b57;
- gl.BOOL_VEC3 = 0x8b58;
- gl.BOOL_VEC4 = 0x8b59;
- gl.BUFFER = 0x82e0;
- gl.BUFFER_ACCESS_OES = 0x88bb;
- gl.BUFFER_MAPPED_OES = 0x88bc;
- gl.BUFFER_MAP_POINTER_OES = 0x88bd;
- gl.BUFFER_OBJECT_EXT = 0x9151;
- gl.BUFFER_SIZE = 0x8764;
- gl.BUFFER_USAGE = 0x8765;
- gl.BYTE = 0x1400;
- gl.CCW = 0x901;
- gl.CLAMP_TO_BORDER_NV = 0x812d;
- gl.CLAMP_TO_EDGE = 0x812f;
- gl.COLOR_ATTACHMENT0 = 0x8ce0;
- gl.COLOR_ATTACHMENT0_NV = 0x8ce0;
- gl.COLOR_ATTACHMENT10_NV = 0x8cea;
- gl.COLOR_ATTACHMENT11_NV = 0x8ceb;
- gl.COLOR_ATTACHMENT12_NV = 0x8cec;
- gl.COLOR_ATTACHMENT13_NV = 0x8ced;
- gl.COLOR_ATTACHMENT14_NV = 0x8cee;
- gl.COLOR_ATTACHMENT15_NV = 0x8cef;
- gl.COLOR_ATTACHMENT1_NV = 0x8ce1;
- gl.COLOR_ATTACHMENT2_NV = 0x8ce2;
- gl.COLOR_ATTACHMENT3_NV = 0x8ce3;
- gl.COLOR_ATTACHMENT4_NV = 0x8ce4;
- gl.COLOR_ATTACHMENT5_NV = 0x8ce5;
- gl.COLOR_ATTACHMENT6_NV = 0x8ce6;
- gl.COLOR_ATTACHMENT7_NV = 0x8ce7;
- gl.COLOR_ATTACHMENT8_NV = 0x8ce8;
- gl.COLOR_ATTACHMENT9_NV = 0x8ce9;
- gl.COLOR_ATTACHMENT_EXT = 0x90f0;
- gl.COLOR_BUFFER_BIT = 0x4000;
- gl.COLOR_BUFFER_BIT0_QCOM = 0x1;
- gl.COLOR_BUFFER_BIT1_QCOM = 0x2;
- gl.COLOR_BUFFER_BIT2_QCOM = 0x4;
- gl.COLOR_BUFFER_BIT3_QCOM = 0x8;
- gl.COLOR_BUFFER_BIT4_QCOM = 0x10;
- gl.COLOR_BUFFER_BIT5_QCOM = 0x20;
- gl.COLOR_BUFFER_BIT6_QCOM = 0x40;
- gl.COLOR_BUFFER_BIT7_QCOM = 0x80;
- gl.COLOR_CLEAR_VALUE = 0xc22;
- gl.COLOR_EXT = 0x1800;
- gl.COLOR_WRITEMASK = 0xc23;
- gl.COMPARE_REF_TO_TEXTURE_EXT = 0x884e;
- gl.COMPILE_STATUS = 0x8b81;
- gl.COMPRESSED_RGBA_ASTC_10x10_KHR = 0x93bb;
- gl.COMPRESSED_RGBA_ASTC_10x5_KHR = 0x93b8;
- gl.COMPRESSED_RGBA_ASTC_10x6_KHR = 0x93b9;
- gl.COMPRESSED_RGBA_ASTC_10x8_KHR = 0x93ba;
- gl.COMPRESSED_RGBA_ASTC_12x10_KHR = 0x93bc;
- gl.COMPRESSED_RGBA_ASTC_12x12_KHR = 0x93bd;
- gl.COMPRESSED_RGBA_ASTC_4x4_KHR = 0x93b0;
- gl.COMPRESSED_RGBA_ASTC_5x4_KHR = 0x93b1;
- gl.COMPRESSED_RGBA_ASTC_5x5_KHR = 0x93b2;
- gl.COMPRESSED_RGBA_ASTC_6x5_KHR = 0x93b3;
- gl.COMPRESSED_RGBA_ASTC_6x6_KHR = 0x93b4;
- gl.COMPRESSED_RGBA_ASTC_8x5_KHR = 0x93b5;
- gl.COMPRESSED_RGBA_ASTC_8x6_KHR = 0x93b6;
- gl.COMPRESSED_RGBA_ASTC_8x8_KHR = 0x93b7;
- gl.COMPRESSED_RGBA_PVRTC_2BPPV1_IMG = 0x8c03;
- gl.COMPRESSED_RGBA_PVRTC_2BPPV2_IMG = 0x9137;
- gl.COMPRESSED_RGBA_PVRTC_4BPPV1_IMG = 0x8c02;
- gl.COMPRESSED_RGBA_PVRTC_4BPPV2_IMG = 0x9138;
- gl.COMPRESSED_RGBA_S3TC_DXT1_EXT = 0x83f1;
- gl.COMPRESSED_RGBA_S3TC_DXT3_ANGLE = 0x83f2;
- gl.COMPRESSED_RGBA_S3TC_DXT5_ANGLE = 0x83f3;
- gl.COMPRESSED_RGB_PVRTC_2BPPV1_IMG = 0x8c01;
- gl.COMPRESSED_RGB_PVRTC_4BPPV1_IMG = 0x8c00;
- gl.COMPRESSED_RGB_S3TC_DXT1_EXT = 0x83f0;
- gl.COMPRESSED_SRGB8_ALPHA8_ASTC_10x10_KHR = 0x93db;
- gl.COMPRESSED_SRGB8_ALPHA8_ASTC_10x5_KHR = 0x93d8;
- gl.COMPRESSED_SRGB8_ALPHA8_ASTC_10x6_KHR = 0x93d9;
- gl.COMPRESSED_SRGB8_ALPHA8_ASTC_10x8_KHR = 0x93da;
- gl.COMPRESSED_SRGB8_ALPHA8_ASTC_12x10_KHR = 0x93dc;
- gl.COMPRESSED_SRGB8_ALPHA8_ASTC_12x12_KHR = 0x93dd;
- gl.COMPRESSED_SRGB8_ALPHA8_ASTC_4x4_KHR = 0x93d0;
- gl.COMPRESSED_SRGB8_ALPHA8_ASTC_5x4_KHR = 0x93d1;
- gl.COMPRESSED_SRGB8_ALPHA8_ASTC_5x5_KHR = 0x93d2;
- gl.COMPRESSED_SRGB8_ALPHA8_ASTC_6x5_KHR = 0x93d3;
- gl.COMPRESSED_SRGB8_ALPHA8_ASTC_6x6_KHR = 0x93d4;
- gl.COMPRESSED_SRGB8_ALPHA8_ASTC_8x5_KHR = 0x93d5;
- gl.COMPRESSED_SRGB8_ALPHA8_ASTC_8x6_KHR = 0x93d6;
- gl.COMPRESSED_SRGB8_ALPHA8_ASTC_8x8_KHR = 0x93d7;
- gl.COMPRESSED_SRGB_ALPHA_S3TC_DXT1_NV = 0x8c4d;
- gl.COMPRESSED_SRGB_ALPHA_S3TC_DXT3_NV = 0x8c4e;
- gl.COMPRESSED_SRGB_ALPHA_S3TC_DXT5_NV = 0x8c4f;
- gl.COMPRESSED_SRGB_S3TC_DXT1_NV = 0x8c4c;
- gl.COMPRESSED_TEXTURE_FORMATS = 0x86a3;
- gl.CONDITION_SATISFIED_APPLE = 0x911c;
- gl.CONSTANT_ALPHA = 0x8003;
- gl.CONSTANT_COLOR = 0x8001;
- gl.CONTEXT_FLAG_DEBUG_BIT = 0x2;
- gl.CONTEXT_ROBUST_ACCESS_EXT = 0x90f3;
- gl.COUNTER_RANGE_AMD = 0x8bc1;
- gl.COUNTER_TYPE_AMD = 0x8bc0;
- gl.COVERAGE_ALL_FRAGMENTS_NV = 0x8ed5;
- gl.COVERAGE_ATTACHMENT_NV = 0x8ed2;
- gl.COVERAGE_AUTOMATIC_NV = 0x8ed7;
- gl.COVERAGE_BUFFERS_NV = 0x8ed3;
- gl.COVERAGE_BUFFER_BIT_NV = 0x8000;
- gl.COVERAGE_COMPONENT4_NV = 0x8ed1;
- gl.COVERAGE_COMPONENT_NV = 0x8ed0;
- gl.COVERAGE_EDGE_FRAGMENTS_NV = 0x8ed6;
- gl.COVERAGE_SAMPLES_NV = 0x8ed4;
- gl.CPU_OPTIMIZED_QCOM = 0x8fb1;
- gl.CULL_FACE = 0xb44;
- gl.CULL_FACE_MODE = 0xb45;
- gl.CURRENT_PROGRAM = 0x8b8d;
- gl.CURRENT_QUERY_EXT = 0x8865;
- gl.CURRENT_VERTEX_ATTRIB = 0x8626;
- gl.CW = 0x900;
- gl.DEBUG_CALLBACK_FUNCTION = 0x8244;
- gl.DEBUG_CALLBACK_USER_PARAM = 0x8245;
- gl.DEBUG_GROUP_STACK_DEPTH = 0x826d;
- gl.DEBUG_LOGGED_MESSAGES = 0x9145;
- gl.DEBUG_NEXT_LOGGED_MESSAGE_LENGTH = 0x8243;
- gl.DEBUG_OUTPUT = 0x92e0;
- gl.DEBUG_OUTPUT_SYNCHRONOUS = 0x8242;
- gl.DEBUG_SEVERITY_HIGH = 0x9146;
- gl.DEBUG_SEVERITY_LOW = 0x9148;
- gl.DEBUG_SEVERITY_MEDIUM = 0x9147;
- gl.DEBUG_SEVERITY_NOTIFICATION = 0x826b;
- gl.DEBUG_SOURCE_API = 0x8246;
- gl.DEBUG_SOURCE_APPLICATION = 0x824a;
- gl.DEBUG_SOURCE_OTHER = 0x824b;
- gl.DEBUG_SOURCE_SHADER_COMPILER = 0x8248;
- gl.DEBUG_SOURCE_THIRD_PARTY = 0x8249;
- gl.DEBUG_SOURCE_WINDOW_SYSTEM = 0x8247;
- gl.DEBUG_TYPE_DEPRECATED_BEHAVIOR = 0x824d;
- gl.DEBUG_TYPE_ERROR = 0x824c;
- gl.DEBUG_TYPE_MARKER = 0x8268;
- gl.DEBUG_TYPE_OTHER = 0x8251;
- gl.DEBUG_TYPE_PERFORMANCE = 0x8250;
- gl.DEBUG_TYPE_POP_GROUP = 0x826a;
- gl.DEBUG_TYPE_PORTABILITY = 0x824f;
- gl.DEBUG_TYPE_PUSH_GROUP = 0x8269;
- gl.DEBUG_TYPE_UNDEFINED_BEHAVIOR = 0x824e;
- gl.DECR = 0x1e03;
- gl.DECR_WRAP = 0x8508;
- gl.DELETE_STATUS = 0x8b80;
- gl.DEPTH24_STENCIL8_OES = 0x88f0;
- gl.DEPTH_ATTACHMENT = 0x8d00;
- gl.DEPTH_STENCIL_ATTACHMENT = 0x821a;
- gl.DEPTH_BITS = 0xd56;
- gl.DEPTH_BUFFER_BIT = 0x100;
- gl.DEPTH_BUFFER_BIT0_QCOM = 0x100;
- gl.DEPTH_BUFFER_BIT1_QCOM = 0x200;
- gl.DEPTH_BUFFER_BIT2_QCOM = 0x400;
- gl.DEPTH_BUFFER_BIT3_QCOM = 0x800;
- gl.DEPTH_BUFFER_BIT4_QCOM = 0x1000;
- gl.DEPTH_BUFFER_BIT5_QCOM = 0x2000;
- gl.DEPTH_BUFFER_BIT6_QCOM = 0x4000;
- gl.DEPTH_BUFFER_BIT7_QCOM = 0x8000;
- gl.DEPTH_CLEAR_VALUE = 0xb73;
- gl.DEPTH_COMPONENT = 0x1902;
- gl.DEPTH_COMPONENT16 = 0x81a5;
- gl.DEPTH_COMPONENT16_NONLINEAR_NV = 0x8e2c;
- gl.DEPTH_COMPONENT16_OES = 0x81a5;
- gl.DEPTH_COMPONENT24_OES = 0x81a6;
- gl.DEPTH_COMPONENT32_OES = 0x81a7;
- gl.DEPTH_EXT = 0x1801;
- gl.DEPTH_FUNC = 0xb74;
- gl.DEPTH_RANGE = 0xb70;
- gl.DEPTH_STENCIL = 0x84f9;
- gl.DEPTH_STENCIL_OES = 0x84f9;
- gl.DEPTH_TEST = 0xb71;
- gl.DEPTH_WRITEMASK = 0xb72;
- gl.DITHER = 0xbd0;
- gl.DMP_shader_binary = 0x1;
- gl.DONT_CARE = 0x1100;
- gl.DRAW_BUFFER0_NV = 0x8825;
- gl.DRAW_BUFFER10_NV = 0x882f;
- gl.DRAW_BUFFER11_NV = 0x8830;
- gl.DRAW_BUFFER12_NV = 0x8831;
- gl.DRAW_BUFFER13_NV = 0x8832;
- gl.DRAW_BUFFER14_NV = 0x8833;
- gl.DRAW_BUFFER15_NV = 0x8834;
- gl.DRAW_BUFFER1_NV = 0x8826;
- gl.DRAW_BUFFER2_NV = 0x8827;
- gl.DRAW_BUFFER3_NV = 0x8828;
- gl.DRAW_BUFFER4_NV = 0x8829;
- gl.DRAW_BUFFER5_NV = 0x882a;
- gl.DRAW_BUFFER6_NV = 0x882b;
- gl.DRAW_BUFFER7_NV = 0x882c;
- gl.DRAW_BUFFER8_NV = 0x882d;
- gl.DRAW_BUFFER9_NV = 0x882e;
- gl.DRAW_BUFFER_EXT = 0xc01;
- gl.DRAW_FRAMEBUFFER_ANGLE = 0x8ca9;
- gl.DRAW_FRAMEBUFFER_APPLE = 0x8ca9;
- gl.DRAW_FRAMEBUFFER_BINDING_ANGLE = 0x8ca6;
- gl.DRAW_FRAMEBUFFER_BINDING_APPLE = 0x8ca6;
- gl.DRAW_FRAMEBUFFER_BINDING_NV = 0x8ca6;
- gl.DRAW_FRAMEBUFFER_NV = 0x8ca9;
- gl.DST_ALPHA = 0x304;
- gl.DST_COLOR = 0x306;
- gl.DYNAMIC_DRAW = 0x88e8;
- gl.ELEMENT_ARRAY_BUFFER = 0x8893;
- gl.ELEMENT_ARRAY_BUFFER_BINDING = 0x8895;
- gl.EQUAL = 0x202;
- gl.ES_VERSION_2_0 = 0x1;
- gl.ETC1_RGB8_OES = 0x8d64;
- gl.ETC1_SRGB8_NV = 0x88ee;
- gl.EXTENSIONS = 0x1f03;
- gl.EXT_blend_minmax = 0x1;
- gl.EXT_color_buffer_half_float = 0x1;
- gl.EXT_debug_label = 0x1;
- gl.EXT_debug_marker = 0x1;
- gl.EXT_discard_framebuffer = 0x1;
- gl.EXT_map_buffer_range = 0x1;
- gl.EXT_multi_draw_arrays = 0x1;
- gl.EXT_multisampled_render_to_texture = 0x1;
- gl.EXT_multiview_draw_buffers = 0x1;
- gl.EXT_occlusion_query_boolean = 0x1;
- gl.EXT_read_format_bgra = 0x1;
- gl.EXT_robustness = 0x1;
- gl.EXT_sRGB = 0x1;
- gl.EXT_separate_shader_objects = 0x1;
- gl.EXT_shader_framebuffer_fetch = 0x1;
- gl.EXT_shader_texture_lod = 0x1;
- gl.EXT_shadow_samplers = 0x1;
- gl.EXT_texture_compression_dxt1 = 0x1;
- gl.EXT_texture_filter_anisotropic = 0x1;
- gl.EXT_texture_format_BGRA8888 = 0x1;
- gl.EXT_texture_rg = 0x1;
- gl.EXT_texture_storage = 0x1;
- gl.EXT_texture_type_2_10_10_10_REV = 0x1;
- gl.EXT_unpack_subimage = 0x1;
- gl.FALSE = 0x0;
- gl.FASTEST = 0x1101;
- gl.FENCE_CONDITION_NV = 0x84f4;
- gl.FENCE_STATUS_NV = 0x84f3;
- gl.FIXED = 0x140c;
- gl.FJ_shader_binary_GCCSO = 0x1;
- gl.FLOAT = 0x1406;
- gl.FLOAT_MAT2 = 0x8b5a;
- gl.FLOAT_MAT3 = 0x8b5b;
- gl.FLOAT_MAT4 = 0x8b5c;
- gl.FLOAT_VEC2 = 0x8b50;
- gl.FLOAT_VEC3 = 0x8b51;
- gl.FLOAT_VEC4 = 0x8b52;
- gl.FRAGMENT_SHADER = 0x8b30;
- gl.FRAGMENT_SHADER_BIT_EXT = 0x2;
- gl.FRAGMENT_SHADER_DERIVATIVE_HINT_OES = 0x8b8b;
- gl.FRAGMENT_SHADER_DISCARDS_SAMPLES_EXT = 0x8a52;
- gl.FRAMEBUFFER = 0x8d40;
- gl.FRAMEBUFFER_ATTACHMENT_ANGLE = 0x93a3;
- gl.FRAMEBUFFER_ATTACHMENT_COLOR_ENCODING_EXT = 0x8210;
- gl.FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE_EXT = 0x8211;
- gl.FRAMEBUFFER_ATTACHMENT_OBJECT_NAME = 0x8cd1;
- gl.FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE = 0x8cd0;
- gl.FRAMEBUFFER_ATTACHMENT_TEXTURE_3D_ZOFFSET_OES = 0x8cd4;
- gl.FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE = 0x8cd3;
- gl.FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL = 0x8cd2;
- gl.FRAMEBUFFER_ATTACHMENT_TEXTURE_SAMPLES_EXT = 0x8d6c;
- gl.FRAMEBUFFER_BINDING = 0x8ca6;
- gl.FRAMEBUFFER_COMPLETE = 0x8cd5;
- gl.FRAMEBUFFER_INCOMPLETE_ATTACHMENT = 0x8cd6;
- gl.FRAMEBUFFER_INCOMPLETE_DIMENSIONS = 0x8cd9;
- gl.FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT = 0x8cd7;
- gl.FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_ANGLE = 0x8d56;
- gl.FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_APPLE = 0x8d56;
- gl.FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_EXT = 0x8d56;
- gl.FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_IMG = 0x9134;
- gl.FRAMEBUFFER_INCOMPLETE_MULTISAMPLE_NV = 0x8d56;
- gl.FRAMEBUFFER_UNDEFINED_OES = 0x8219;
- gl.FRAMEBUFFER_UNSUPPORTED = 0x8cdd;
- gl.FRONT = 0x404;
- gl.FRONT_AND_BACK = 0x408;
- gl.FRONT_FACE = 0xb46;
- gl.FUNC_ADD = 0x8006;
- gl.FUNC_REVERSE_SUBTRACT = 0x800b;
- gl.FUNC_SUBTRACT = 0x800a;
- gl.GENERATE_MIPMAP_HINT = 0x8192;
- gl.GEQUAL = 0x206;
- gl.GPU_OPTIMIZED_QCOM = 0x8fb2;
- gl.GREATER = 0x204;
- gl.GREEN_BITS = 0xd53;
- gl.GUILTY_CONTEXT_RESET_EXT = 0x8253;
- gl.HALF_FLOAT_OES = 0x8d61;
- gl.HIGH_FLOAT = 0x8df2;
- gl.HIGH_INT = 0x8df5;
- gl.IMG_multisampled_render_to_texture = 0x1;
- gl.IMG_program_binary = 0x1;
- gl.IMG_read_format = 0x1;
- gl.IMG_shader_binary = 0x1;
- gl.IMG_texture_compression_pvrtc = 0x1;
- gl.IMG_texture_compression_pvrtc2 = 0x1;
- gl.IMPLEMENTATION_COLOR_READ_FORMAT = 0x8b9b;
- gl.IMPLEMENTATION_COLOR_READ_TYPE = 0x8b9a;
- gl.INCR = 0x1e02;
- gl.INCR_WRAP = 0x8507;
- gl.INFO_LOG_LENGTH = 0x8b84;
- gl.INNOCENT_CONTEXT_RESET_EXT = 0x8254;
- gl.INT = 0x1404;
- gl.INT_10_10_10_2_OES = 0x8df7;
- gl.INT_VEC2 = 0x8b53;
- gl.INT_VEC3 = 0x8b54;
- gl.INT_VEC4 = 0x8b55;
- gl.INVALID_ENUM = 0x500;
- gl.INVALID_FRAMEBUFFER_OPERATION = 0x506;
- gl.INVALID_OPERATION = 0x502;
- gl.INVALID_VALUE = 0x501;
- gl.INVERT = 0x150a;
- gl.KEEP = 0x1e00;
- gl.KHR_debug = 0x1;
- gl.KHR_texture_compression_astc_ldr = 0x1;
- gl.LEFT = 0x0406;
- gl.LEQUAL = 0x203;
- gl.LESS = 0x201;
- gl.LINEAR = 0x2601;
- gl.LINEAR_MIPMAP_LINEAR = 0x2703;
- gl.LINEAR_MIPMAP_NEAREST = 0x2701;
- gl.LINES = 0x1;
- gl.LINE_LOOP = 0x2;
- gl.LINE_STRIP = 0x3;
- gl.LINE_WIDTH = 0xb21;
- gl.LINK_STATUS = 0x8b82;
- gl.LOSE_CONTEXT_ON_RESET_EXT = 0x8252;
- gl.LOW_FLOAT = 0x8df0;
- gl.LOW_INT = 0x8df3;
- gl.LUMINANCE = 0x1909;
- gl.LUMINANCE16F_EXT = 0x881e;
- gl.LUMINANCE32F_EXT = 0x8818;
- gl.LUMINANCE4_ALPHA4_OES = 0x8043;
- gl.LUMINANCE8_ALPHA8_EXT = 0x8045;
- gl.LUMINANCE8_ALPHA8_OES = 0x8045;
- gl.LUMINANCE8_EXT = 0x8040;
- gl.LUMINANCE8_OES = 0x8040;
- gl.LUMINANCE_ALPHA = 0x190a;
- gl.LUMINANCE_ALPHA16F_EXT = 0x881f;
- gl.LUMINANCE_ALPHA32F_EXT = 0x8819;
- gl.MALI_PROGRAM_BINARY_ARM = 0x8f61;
- gl.MALI_SHADER_BINARY_ARM = 0x8f60;
- gl.MAP_FLUSH_EXPLICIT_BIT_EXT = 0x10;
- gl.MAP_INVALIDATE_BUFFER_BIT_EXT = 0x8;
- gl.MAP_INVALIDATE_RANGE_BIT_EXT = 0x4;
- gl.MAP_READ_BIT_EXT = 0x1;
- gl.MAP_UNSYNCHRONIZED_BIT_EXT = 0x20;
- gl.MAP_WRITE_BIT_EXT = 0x2;
- gl.MAX_3D_TEXTURE_SIZE_OES = 0x8073;
- gl.MAX_COLOR_ATTACHMENTS_NV = 0x8cdf;
- gl.MAX_COMBINED_TEXTURE_IMAGE_UNITS = 0x8b4d;
- gl.MAX_CUBE_MAP_TEXTURE_SIZE = 0x851c;
- gl.MAX_DEBUG_GROUP_STACK_DEPTH = 0x826c;
- gl.MAX_DEBUG_LOGGED_MESSAGES = 0x9144;
- gl.MAX_DEBUG_MESSAGE_LENGTH = 0x9143;
- gl.MAX_DRAW_BUFFERS_NV = 0x8824;
- gl.MAX_EXT = 0x8008;
- gl.MAX_FRAGMENT_UNIFORM_VECTORS = 0x8dfd;
- gl.MAX_LABEL_LENGTH = 0x82e8;
- gl.MAX_MULTIVIEW_BUFFERS_EXT = 0x90f2;
- gl.MAX_RENDERBUFFER_SIZE = 0x84e8;
- gl.MAX_SAMPLES_ANGLE = 0x8d57;
- gl.MAX_SAMPLES_APPLE = 0x8d57;
- gl.MAX_SAMPLES_EXT = 0x8d57;
- gl.MAX_SAMPLES_IMG = 0x9135;
- gl.MAX_SAMPLES_NV = 0x8d57;
- gl.MAX_SERVER_WAIT_TIMEOUT_APPLE = 0x9111;
- gl.MAX_TEXTURE_IMAGE_UNITS = 0x8872;
- gl.MAX_TEXTURE_MAX_ANISOTROPY_EXT = 0x84ff;
- gl.MAX_TEXTURE_SIZE = 0xd33;
- gl.MAX_VARYING_VECTORS = 0x8dfc;
- gl.MAX_VERTEX_ATTRIBS = 0x8869;
- gl.MAX_VERTEX_TEXTURE_IMAGE_UNITS = 0x8b4c;
- gl.MAX_VERTEX_UNIFORM_VECTORS = 0x8dfb;
- gl.MAX_VIEWPORT_DIMS = 0xd3a;
- gl.MEDIUM_FLOAT = 0x8df1;
- gl.MEDIUM_INT = 0x8df4;
- gl.MIN_EXT = 0x8007;
- gl.MIRRORED_REPEAT = 0x8370;
- gl.MULTISAMPLE_BUFFER_BIT0_QCOM = 0x1000000;
- gl.MULTISAMPLE_BUFFER_BIT1_QCOM = 0x2000000;
- gl.MULTISAMPLE_BUFFER_BIT2_QCOM = 0x4000000;
- gl.MULTISAMPLE_BUFFER_BIT3_QCOM = 0x8000000;
- gl.MULTISAMPLE_BUFFER_BIT4_QCOM = 0x10000000;
- gl.MULTISAMPLE_BUFFER_BIT5_QCOM = 0x20000000;
- gl.MULTISAMPLE_BUFFER_BIT6_QCOM = 0x40000000;
- gl.MULTISAMPLE_BUFFER_BIT7_QCOM = 0x80000000;
- gl.MULTIVIEW_EXT = 0x90f1;
- gl.NEAREST = 0x2600;
- gl.NEAREST_MIPMAP_LINEAR = 0x2702;
- gl.NEAREST_MIPMAP_NEAREST = 0x2700;
- gl.NEVER = 0x200;
- gl.NICEST = 0x1102;
- gl.NONE = 0x0;
- gl.NOTEQUAL = 0x205;
- gl.NO_ERROR = 0x0;
- gl.NO_RESET_NOTIFICATION_EXT = 0x8261;
- gl.NUM_COMPRESSED_TEXTURE_FORMATS = 0x86a2;
- gl.NUM_PROGRAM_BINARY_FORMATS_OES = 0x87fe;
- gl.NUM_SHADER_BINARY_FORMATS = 0x8df9;
- gl.NV_coverage_sample = 0x1;
- gl.NV_depth_nonlinear = 0x1;
- gl.NV_draw_buffers = 0x1;
- gl.NV_draw_instanced = 0x1;
- gl.NV_fbo_color_attachments = 0x1;
- gl.NV_fence = 0x1;
- gl.NV_framebuffer_blit = 0x1;
- gl.NV_framebuffer_multisample = 0x1;
- gl.NV_generate_mipmap_sRGB = 0x1;
- gl.NV_instanced_arrays = 0x1;
- gl.NV_read_buffer = 0x1;
- gl.NV_read_buffer_front = 0x1;
- gl.NV_read_depth = 0x1;
- gl.NV_read_depth_stencil = 0x1;
- gl.NV_read_stencil = 0x1;
- gl.NV_sRGB_formats = 0x1;
- gl.NV_shadow_samplers_array = 0x1;
- gl.NV_shadow_samplers_cube = 0x1;
- gl.NV_texture_border_clamp = 0x1;
- gl.NV_texture_compression_s3tc_update = 0x1;
- gl.NV_texture_npot_2D_mipmap = 0x1;
- gl.OBJECT_TYPE_APPLE = 0x9112;
- gl.OES_EGL_image = 0x1;
- gl.OES_EGL_image_external = 0x1;
- gl.OES_compressed_ETC1_RGB8_texture = 0x1;
- gl.OES_compressed_paletted_texture = 0x1;
- gl.OES_depth24 = 0x1;
- gl.OES_depth32 = 0x1;
- gl.OES_depth_texture = 0x1;
- gl.OES_element_index_uint = 0x1;
- gl.OES_fbo_render_mipmap = 0x1;
- gl.OES_fragment_precision_high = 0x1;
- gl.OES_get_program_binary = 0x1;
- gl.OES_mapbuffer = 0x1;
- gl.OES_packed_depth_stencil = 0x1;
- gl.OES_required_internalformat = 0x1;
- gl.OES_rgb8_rgba8 = 0x1;
- gl.OES_standard_derivatives = 0x1;
- gl.OES_stencil1 = 0x1;
- gl.OES_stencil4 = 0x1;
- gl.OES_surfaceless_context = 0x1;
- gl.OES_texture_3D = 0x1;
- gl.OES_texture_float = 0x1;
- gl.OES_texture_float_linear = 0x1;
- gl.OES_texture_half_float = 0x1;
- gl.OES_texture_half_float_linear = 0x1;
- gl.OES_texture_npot = 0x1;
- gl.OES_vertex_array_object = 0x1;
- gl.OES_vertex_half_float = 0x1;
- gl.OES_vertex_type_10_10_10_2 = 0x1;
- gl.ONE = 0x1;
- gl.ONE_MINUS_CONSTANT_ALPHA = 0x8004;
- gl.ONE_MINUS_CONSTANT_COLOR = 0x8002;
- gl.ONE_MINUS_DST_ALPHA = 0x305;
- gl.ONE_MINUS_DST_COLOR = 0x307;
- gl.ONE_MINUS_SRC_ALPHA = 0x303;
- gl.ONE_MINUS_SRC_COLOR = 0x301;
- gl.OUT_OF_MEMORY = 0x505;
- gl.PACK_ALIGNMENT = 0xd05;
- gl.PACK_REVERSE_ROW_ORDER_ANGLE = 0x93a4;
- gl.PALETTE4_R5_G6_B5_OES = 0x8b92;
- gl.PALETTE4_RGB5_A1_OES = 0x8b94;
- gl.PALETTE4_RGB8_OES = 0x8b90;
- gl.PALETTE4_RGBA4_OES = 0x8b93;
- gl.PALETTE4_RGBA8_OES = 0x8b91;
- gl.PALETTE8_R5_G6_B5_OES = 0x8b97;
- gl.PALETTE8_RGB5_A1_OES = 0x8b99;
- gl.PALETTE8_RGB8_OES = 0x8b95;
- gl.PALETTE8_RGBA4_OES = 0x8b98;
- gl.PALETTE8_RGBA8_OES = 0x8b96;
- gl.PERCENTAGE_AMD = 0x8bc3;
- gl.PERFMON_GLOBAL_MODE_QCOM = 0x8fa0;
- gl.PERFMON_RESULT_AMD = 0x8bc6;
- gl.PERFMON_RESULT_AVAILABLE_AMD = 0x8bc4;
- gl.PERFMON_RESULT_SIZE_AMD = 0x8bc5;
- gl.POINTS = 0x0;
- gl.POLYGON_OFFSET_FACTOR = 0x8038;
- gl.POLYGON_OFFSET_FILL = 0x8037;
- gl.POLYGON_OFFSET_UNITS = 0x2a00;
- gl.PROGRAM = 0x82e2;
- gl.PROGRAM_BINARY_ANGLE = 0x93a6;
- gl.PROGRAM_BINARY_FORMATS_OES = 0x87ff;
- gl.PROGRAM_BINARY_LENGTH_OES = 0x8741;
- gl.PROGRAM_OBJECT_EXT = 0x8b40;
- gl.PROGRAM_PIPELINE_BINDING_EXT = 0x825a;
- gl.PROGRAM_PIPELINE_OBJECT_EXT = 0x8a4f;
- gl.PROGRAM_SEPARABLE_EXT = 0x8258;
- gl.QCOM_alpha_test = 0x1;
- gl.QCOM_binning_control = 0x1;
- gl.QCOM_driver_control = 0x1;
- gl.QCOM_extended_get = 0x1;
- gl.QCOM_extended_get2 = 0x1;
- gl.QCOM_perfmon_global_mode = 0x1;
- gl.QCOM_tiled_rendering = 0x1;
- gl.QCOM_writeonly_rendering = 0x1;
- gl.QUERY = 0x82e3;
- gl.QUERY_OBJECT_EXT = 0x9153;
- gl.QUERY_RESULT_AVAILABLE_EXT = 0x8867;
- gl.QUERY_RESULT_EXT = 0x8866;
- gl.R16F_EXT = 0x822d;
- gl.R32F_EXT = 0x822e;
- gl.R8_EXT = 0x8229;
- gl.READ_BUFFER_EXT = 0xc02;
- gl.READ_BUFFER_NV = 0xc02;
- gl.READ_FRAMEBUFFER_ANGLE = 0x8ca8;
- gl.READ_FRAMEBUFFER_APPLE = 0x8ca8;
- gl.READ_FRAMEBUFFER_BINDING_ANGLE = 0x8caa;
- gl.READ_FRAMEBUFFER_BINDING_APPLE = 0x8caa;
- gl.READ_FRAMEBUFFER_BINDING_NV = 0x8caa;
- gl.READ_FRAMEBUFFER_NV = 0x8ca8;
- gl.RED_BITS = 0xd52;
- gl.RED_EXT = 0x1903;
- gl.RENDERBUFFER = 0x8d41;
- gl.RENDERBUFFER_ALPHA_SIZE = 0x8d53;
- gl.RENDERBUFFER_BINDING = 0x8ca7;
- gl.RENDERBUFFER_BLUE_SIZE = 0x8d52;
- gl.RENDERBUFFER_DEPTH_SIZE = 0x8d54;
- gl.RENDERBUFFER_GREEN_SIZE = 0x8d51;
- gl.RENDERBUFFER_HEIGHT = 0x8d43;
- gl.RENDERBUFFER_INTERNAL_FORMAT = 0x8d44;
- gl.RENDERBUFFER_RED_SIZE = 0x8d50;
- gl.RENDERBUFFER_SAMPLES_ANGLE = 0x8cab;
- gl.RENDERBUFFER_SAMPLES_APPLE = 0x8cab;
- gl.RENDERBUFFER_SAMPLES_EXT = 0x8cab;
- gl.RENDERBUFFER_SAMPLES_IMG = 0x9133;
- gl.RENDERBUFFER_SAMPLES_NV = 0x8cab;
- gl.RENDERBUFFER_STENCIL_SIZE = 0x8d55;
- gl.RENDERBUFFER_WIDTH = 0x8d42;
- gl.RENDERER = 0x1f01;
- gl.RENDER_DIRECT_TO_FRAMEBUFFER_QCOM = 0x8fb3;
- gl.REPEAT = 0x2901;
- gl.REPLACE = 0x1e01;
- gl.REQUIRED_TEXTURE_IMAGE_UNITS_OES = 0x8d68;
- gl.RESET_NOTIFICATION_STRATEGY_EXT = 0x8256;
- gl.RG16F_EXT = 0x822f;
- gl.RG32F_EXT = 0x8230;
- gl.RG8_EXT = 0x822b;
- gl.RGB = 0x1907;
- gl.RGB10_A2_EXT = 0x8059;
- gl.RGB10_EXT = 0x8052;
- gl.RGB16F_EXT = 0x881b;
- gl.RGB32F_EXT = 0x8815;
- gl.RGB565 = 0x8d62;
- gl.RGB565_OES = 0x8d62;
- gl.RGB5_A1 = 0x8057;
- gl.RGB5_A1_OES = 0x8057;
- gl.RGB8_OES = 0x8051;
- gl.RGBA = 0x1908;
- gl.RGBA16F_EXT = 0x881a;
- gl.RGBA32F_EXT = 0x8814;
- gl.RGBA4 = 0x8056;
- gl.RGBA4_OES = 0x8056;
- gl.RGBA8_OES = 0x8058;
- gl.RGB_422_APPLE = 0x8a1f;
- gl.RG_EXT = 0x8227;
- gl.RIGHT = 0x0407;
- gl.SAMPLER = 0x82e6;
- gl.SAMPLER_2D = 0x8b5e;
- gl.SAMPLER_2D_ARRAY_SHADOW_NV = 0x8dc4;
- gl.SAMPLER_2D_SHADOW_EXT = 0x8b62;
- gl.SAMPLER_3D_OES = 0x8b5f;
- gl.SAMPLER_CUBE = 0x8b60;
- gl.SAMPLER_CUBE_SHADOW_NV = 0x8dc5;
- gl.SAMPLER_EXTERNAL_OES = 0x8d66;
- gl.SAMPLES = 0x80a9;
- gl.SAMPLE_ALPHA_TO_COVERAGE = 0x809e;
- gl.SAMPLE_BUFFERS = 0x80a8;
- gl.SAMPLE_COVERAGE = 0x80a0;
- gl.SAMPLE_COVERAGE_INVERT = 0x80ab;
- gl.SAMPLE_COVERAGE_VALUE = 0x80aa;
- gl.SCISSOR_BOX = 0xc10;
- gl.SCISSOR_TEST = 0xc11;
- gl.SGX_BINARY_IMG = 0x8c0a;
- gl.SGX_PROGRAM_BINARY_IMG = 0x9130;
- gl.SHADER = 0x82e1;
- gl.SHADER_BINARY_DMP = 0x9250;
- gl.SHADER_BINARY_FORMATS = 0x8df8;
- gl.SHADER_BINARY_VIV = 0x8fc4;
- gl.SHADER_COMPILER = 0x8dfa;
- gl.SHADER_OBJECT_EXT = 0x8b48;
- gl.SHADER_SOURCE_LENGTH = 0x8b88;
- gl.SHADER_TYPE = 0x8b4f;
- gl.SHADING_LANGUAGE_VERSION = 0x8b8c;
- gl.SHORT = 0x1402;
- gl.SIGNALED_APPLE = 0x9119;
- gl.SLUMINANCE8_ALPHA8_NV = 0x8c45;
- gl.SLUMINANCE8_NV = 0x8c47;
- gl.SLUMINANCE_ALPHA_NV = 0x8c44;
- gl.SLUMINANCE_NV = 0x8c46;
- gl.SRC_ALPHA = 0x302;
- gl.SRC_ALPHA_SATURATE = 0x308;
- gl.SRC_COLOR = 0x300;
- gl.SRGB8_ALPHA8_EXT = 0x8c43;
- gl.SRGB8_NV = 0x8c41;
- gl.SRGB_ALPHA_EXT = 0x8c42;
- gl.SRGB_EXT = 0x8c40;
- gl.STACK_OVERFLOW = 0x503;
- gl.STACK_UNDERFLOW = 0x504;
- gl.STATE_RESTORE = 0x8bdc;
- gl.STATIC_DRAW = 0x88e4;
- gl.STENCIL_ATTACHMENT = 0x8d20;
- gl.STENCIL_BACK_FAIL = 0x8801;
- gl.STENCIL_BACK_FUNC = 0x8800;
- gl.STENCIL_BACK_PASS_DEPTH_FAIL = 0x8802;
- gl.STENCIL_BACK_PASS_DEPTH_PASS = 0x8803;
- gl.STENCIL_BACK_REF = 0x8ca3;
- gl.STENCIL_BACK_VALUE_MASK = 0x8ca4;
- gl.STENCIL_BACK_WRITEMASK = 0x8ca5;
- gl.STENCIL_BITS = 0xd57;
- gl.STENCIL_BUFFER_BIT = 0x400;
- gl.STENCIL_BUFFER_BIT0_QCOM = 0x10000;
- gl.STENCIL_BUFFER_BIT1_QCOM = 0x20000;
- gl.STENCIL_BUFFER_BIT2_QCOM = 0x40000;
- gl.STENCIL_BUFFER_BIT3_QCOM = 0x80000;
- gl.STENCIL_BUFFER_BIT4_QCOM = 0x100000;
- gl.STENCIL_BUFFER_BIT5_QCOM = 0x200000;
- gl.STENCIL_BUFFER_BIT6_QCOM = 0x400000;
- gl.STENCIL_BUFFER_BIT7_QCOM = 0x800000;
- gl.STENCIL_CLEAR_VALUE = 0xb91;
- gl.STENCIL_EXT = 0x1802;
- gl.STENCIL_FAIL = 0xb94;
- gl.STENCIL_FUNC = 0xb92;
- gl.STENCIL_INDEX1_OES = 0x8d46;
- gl.STENCIL_INDEX4_OES = 0x8d47;
- gl.STENCIL_INDEX = 0x1901;
- gl.STENCIL_INDEX8 = 0x8d48;
- gl.STENCIL_PASS_DEPTH_FAIL = 0xb95;
- gl.STENCIL_PASS_DEPTH_PASS = 0xb96;
- gl.STENCIL_REF = 0xb97;
- gl.STENCIL_TEST = 0xb90;
- gl.STENCIL_VALUE_MASK = 0xb93;
- gl.STENCIL_WRITEMASK = 0xb98;
- gl.STREAM_DRAW = 0x88e0;
- gl.SUBPIXEL_BITS = 0xd50;
- gl.SYNC_CONDITION_APPLE = 0x9113;
- gl.SYNC_FENCE_APPLE = 0x9116;
- gl.SYNC_FLAGS_APPLE = 0x9115;
- gl.SYNC_FLUSH_COMMANDS_BIT_APPLE = 0x1;
- gl.SYNC_GPU_COMMANDS_COMPLETE_APPLE = 0x9117;
- gl.SYNC_OBJECT_APPLE = 0x8a53;
- gl.SYNC_STATUS_APPLE = 0x9114;
- gl.TEXTURE = 0x1702;
- gl.TEXTURE0 = 0x84c0;
- gl.TEXTURE1 = 0x84c1;
- gl.TEXTURE10 = 0x84ca;
- gl.TEXTURE11 = 0x84cb;
- gl.TEXTURE12 = 0x84cc;
- gl.TEXTURE13 = 0x84cd;
- gl.TEXTURE14 = 0x84ce;
- gl.TEXTURE15 = 0x84cf;
- gl.TEXTURE16 = 0x84d0;
- gl.TEXTURE17 = 0x84d1;
- gl.TEXTURE18 = 0x84d2;
- gl.TEXTURE19 = 0x84d3;
- gl.TEXTURE2 = 0x84c2;
- gl.TEXTURE20 = 0x84d4;
- gl.TEXTURE21 = 0x84d5;
- gl.TEXTURE22 = 0x84d6;
- gl.TEXTURE23 = 0x84d7;
- gl.TEXTURE24 = 0x84d8;
- gl.TEXTURE25 = 0x84d9;
- gl.TEXTURE26 = 0x84da;
- gl.TEXTURE27 = 0x84db;
- gl.TEXTURE28 = 0x84dc;
- gl.TEXTURE29 = 0x84dd;
- gl.TEXTURE3 = 0x84c3;
- gl.TEXTURE30 = 0x84de;
- gl.TEXTURE31 = 0x84df;
- gl.TEXTURE4 = 0x84c4;
- gl.TEXTURE5 = 0x84c5;
- gl.TEXTURE6 = 0x84c6;
- gl.TEXTURE7 = 0x84c7;
- gl.TEXTURE8 = 0x84c8;
- gl.TEXTURE9 = 0x84c9;
- gl.TEXTURE_2D = 0xde1;
- gl.TEXTURE_3D_OES = 0x806f;
- gl.TEXTURE_BINDING_2D = 0x8069;
- gl.TEXTURE_BINDING_3D_OES = 0x806a;
- gl.TEXTURE_BINDING_CUBE_MAP = 0x8514;
- gl.TEXTURE_BINDING_EXTERNAL_OES = 0x8d67;
- gl.TEXTURE_BORDER_COLOR_NV = 0x1004;
- gl.TEXTURE_COMPARE_FUNC_EXT = 0x884d;
- gl.TEXTURE_COMPARE_MODE_EXT = 0x884c;
- gl.TEXTURE_CUBE_MAP = 0x8513;
- gl.TEXTURE_CUBE_MAP_NEGATIVE_X = 0x8516;
- gl.TEXTURE_CUBE_MAP_NEGATIVE_Y = 0x8518;
- gl.TEXTURE_CUBE_MAP_NEGATIVE_Z = 0x851a;
- gl.TEXTURE_CUBE_MAP_POSITIVE_X = 0x8515;
- gl.TEXTURE_CUBE_MAP_POSITIVE_Y = 0x8517;
- gl.TEXTURE_CUBE_MAP_POSITIVE_Z = 0x8519;
- gl.TEXTURE_DEPTH_QCOM = 0x8bd4;
- gl.TEXTURE_EXTERNAL_OES = 0x8d65;
- gl.TEXTURE_FORMAT_QCOM = 0x8bd6;
- gl.TEXTURE_HEIGHT_QCOM = 0x8bd3;
- gl.TEXTURE_IMAGE_VALID_QCOM = 0x8bd8;
- gl.TEXTURE_IMMUTABLE_FORMAT_EXT = 0x912f;
- gl.TEXTURE_INTERNAL_FORMAT_QCOM = 0x8bd5;
- gl.TEXTURE_MAG_FILTER = 0x2800;
- gl.TEXTURE_MAX_ANISOTROPY_EXT = 0x84fe;
- gl.TEXTURE_MAX_LEVEL_APPLE = 0x813d;
- gl.TEXTURE_MIN_FILTER = 0x2801;
- gl.TEXTURE_NUM_LEVELS_QCOM = 0x8bd9;
- gl.TEXTURE_OBJECT_VALID_QCOM = 0x8bdb;
- gl.TEXTURE_SAMPLES_IMG = 0x9136;
- gl.TEXTURE_TARGET_QCOM = 0x8bda;
- gl.TEXTURE_TYPE_QCOM = 0x8bd7;
- gl.TEXTURE_USAGE_ANGLE = 0x93a2;
- gl.TEXTURE_WIDTH_QCOM = 0x8bd2;
- gl.TEXTURE_WRAP_R_OES = 0x8072;
- gl.TEXTURE_WRAP_S = 0x2802;
- gl.TEXTURE_WRAP_T = 0x2803;
- gl.TIMEOUT_EXPIRED_APPLE = 0x911b;
- gl.TIMEOUT_IGNORED_APPLE = 0xffffffffffffffff;
- gl.TRANSLATED_SHADER_SOURCE_LENGTH_ANGLE = 0x93a0;
- gl.TRIANGLES = 0x4;
- gl.TRIANGLE_FAN = 0x6;
- gl.TRIANGLE_STRIP = 0x5;
- gl.TRUE = 0x1;
- gl.UNKNOWN_CONTEXT_RESET_EXT = 0x8255;
- gl.UNPACK_ALIGNMENT = 0xcf5;
- gl.UNPACK_ROW_LENGTH = 0xcf2;
- gl.UNPACK_SKIP_PIXELS = 0xcf4;
- gl.UNPACK_SKIP_ROWS = 0xcf3;
- gl.UNSIGNALED_APPLE = 0x9118;
- gl.UNSIGNED_BYTE = 0x1401;
- gl.UNSIGNED_INT = 0x1405;
- gl.UNSIGNED_INT64_AMD = 0x8bc2;
- gl.UNSIGNED_INT_10_10_10_2_OES = 0x8df6;
- gl.UNSIGNED_INT_24_8_OES = 0x84fa;
- gl.UNSIGNED_INT_2_10_10_10_REV_EXT = 0x8368;
- gl.UNSIGNED_NORMALIZED_EXT = 0x8c17;
- gl.UNSIGNED_SHORT = 0x1403;
- gl.UNSIGNED_SHORT_1_5_5_5_REV_EXT = 0x8366;
- gl.UNSIGNED_SHORT_4_4_4_4 = 0x8033;
- gl.UNSIGNED_SHORT_4_4_4_4_REV_EXT = 0x8365;
- gl.UNSIGNED_SHORT_4_4_4_4_REV_IMG = 0x8365;
- gl.UNSIGNED_SHORT_5_5_5_1 = 0x8034;
- gl.UNSIGNED_SHORT_5_6_5 = 0x8363;
- gl.UNSIGNED_SHORT_8_8_APPLE = 0x85ba;
- gl.UNSIGNED_SHORT_8_8_REV_APPLE = 0x85bb;
- gl.VALIDATE_STATUS = 0x8b83;
- gl.VENDOR = 0x1f00;
- gl.VERSION = 0x1f02;
- gl.VERTEX_ARRAY_BINDING_OES = 0x85b5;
- gl.VERTEX_ARRAY_OBJECT_EXT = 0x9154;
- gl.VERTEX_ATTRIB_ARRAY_BUFFER_BINDING = 0x889f;
- gl.VERTEX_ATTRIB_ARRAY_DIVISOR_ANGLE = 0x88fe;
- gl.VERTEX_ATTRIB_ARRAY_DIVISOR_NV = 0x88fe;
- gl.VERTEX_ATTRIB_ARRAY_ENABLED = 0x8622;
- gl.VERTEX_ATTRIB_ARRAY_NORMALIZED = 0x886a;
- gl.VERTEX_ATTRIB_ARRAY_POINTER = 0x8645;
- gl.VERTEX_ATTRIB_ARRAY_SIZE = 0x8623;
- gl.VERTEX_ATTRIB_ARRAY_STRIDE = 0x8624;
- gl.VERTEX_ATTRIB_ARRAY_TYPE = 0x8625;
- gl.VERTEX_SHADER = 0x8b31;
- gl.VERTEX_SHADER_BIT_EXT = 0x1;
- gl.VIEWPORT = 0xba2;
- gl.VIV_shader_binary = 0x1;
- gl.WAIT_FAILED_APPLE = 0x911d;
- gl.WRITEONLY_RENDERING_QCOM = 0x8823;
- gl.WRITE_ONLY_OES = 0x88b9;
- gl.Z400_BINARY_AMD = 0x8740;
- gl.ZERO = 0x0;
- gl.RASTERIZER_DISCARD = 0x8C89;
- gl.UNPACK_FLIP_Y_WEBGL = 0x9240;
- gl.UNPACK_PREMULTIPLY_ALPHA_WEBGL = 0x9241;
- gl.CONTEXT_LOST_WEBGL = 0x9242;
- gl.UNPACK_COLORSPACE_CONVERSION_WEBGL = 0x9243;
- gl.BROWSER_DEFAULT_WEBGL = 0x9244;
- },{}],36:[function(require,module,exports){
- "use strict";
- jsb.__obj_ref_id = 0;
- jsb.registerNativeRef = function (owner, target) {
- if (owner && target && owner !== target) {
- var targetID = target.__jsb_ref_id;
- if (targetID === undefined) targetID = target.__jsb_ref_id = jsb.__obj_ref_id++;
- var refs = owner.__nativeRefs;
- if (!refs) {
- refs = owner.__nativeRefs = {};
- }
- refs[targetID] = target;
- }
- };
- jsb.unregisterNativeRef = function (owner, target) {
- if (owner && target && owner !== target) {
- var targetID = target.__jsb_ref_id;
- if (targetID === undefined) return;
- var refs = owner.__nativeRefs;
- if (!refs) {
- return;
- }
- delete refs[targetID];
- }
- };
- jsb.unregisterAllNativeRefs = function (owner) {
- if (!owner) return;
- delete owner.__nativeRefs;
- };
- jsb.unregisterChildRefsForNode = function (node, recursive) {
- recursive = !!recursive;
- var children = node.getChildren(),
- i,
- l,
- child;
- for (i = 0, l = children.length; i < l; ++i) {
- child = children[i];
- jsb.unregisterNativeRef(node, child);
- if (recursive) {
- jsb.unregisterChildRefsForNode(child, recursive);
- }
- }
- };
- },{}],37:[function(require,module,exports){
- (function (global){
- "use strict";
- function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
- !function (e, n) {
- "object" == (typeof exports === "undefined" ? "undefined" : _typeof(exports)) && "undefined" != typeof module ? n() : "function" == typeof define && define.amd ? define(n) : n();
- }(0, function () {
- "use strict";
- function e(e) {
- var n = this.constructor;
- return this.then(function (t) {
- return n.resolve(e()).then(function () {
- return t;
- });
- }, function (t) {
- return n.resolve(e()).then(function () {
- return n.reject(t);
- });
- });
- }
- function n() {}
- function t(e) {
- if (!(this instanceof t)) throw new TypeError("Promises must be constructed via new");
- if ("function" != typeof e) throw new TypeError("not a function");
- this._state = 0, this._handled = !1, this._value = undefined, this._deferreds = [], u(e, this);
- }
- function o(e, n) {
- for (; 3 === e._state;) {
- e = e._value;
- }
- 0 !== e._state ? (e._handled = !0, t._immediateFn(function () {
- var t = 1 === e._state ? n.onFulfilled : n.onRejected;
- if (null !== t) {
- var o;
- try {
- o = t(e._value);
- } catch (f) {
- return void i(n.promise, f);
- }
- r(n.promise, o);
- } else (1 === e._state ? r : i)(n.promise, e._value);
- })) : e._deferreds.push(n);
- }
- function r(e, n) {
- try {
- if (n === e) throw new TypeError("A promise cannot be resolved with itself.");
- if (n && ("object" == _typeof(n) || "function" == typeof n)) {
- var o = n.then;
- if (n instanceof t) return e._state = 3, e._value = n, void f(e);
- if ("function" == typeof o) return void u(function (e, n) {
- return function () {
- e.apply(n, arguments);
- };
- }(o, n), e);
- }
- e._state = 1, e._value = n, f(e);
- } catch (r) {
- i(e, r);
- }
- }
- function i(e, n) {
- e._state = 2, e._value = n, f(e);
- }
- function f(e) {
- 2 === e._state && 0 === e._deferreds.length && t._immediateFn(function () {
- e._handled || t._unhandledRejectionFn(e._value);
- });
- for (var n = 0, r = e._deferreds.length; r > n; n++) {
- o(e, e._deferreds[n]);
- }
- e._deferreds = null;
- }
- function u(e, n) {
- var t = !1;
- try {
- e(function (e) {
- t || (t = !0, r(n, e));
- }, function (e) {
- t || (t = !0, i(n, e));
- });
- } catch (o) {
- if (t) return;
- t = !0, i(n, o);
- }
- }
- var c = setTimeout;
- t.prototype["catch"] = function (e) {
- return this.then(null, e);
- }, t.prototype.then = function (e, t) {
- var r = new this.constructor(n);
- return o(this, new function (e, n, t) {
- this.onFulfilled = "function" == typeof e ? e : null, this.onRejected = "function" == typeof n ? n : null, this.promise = t;
- }(e, t, r)), r;
- }, t.prototype["finally"] = e, t.all = function (e) {
- return new t(function (n, t) {
- function o(e, f) {
- try {
- if (f && ("object" == _typeof(f) || "function" == typeof f)) {
- var u = f.then;
- if ("function" == typeof u) return void u.call(f, function (n) {
- o(e, n);
- }, t);
- }
- r[e] = f, 0 == --i && n(r);
- } catch (c) {
- t(c);
- }
- }
- if (!e || "undefined" == typeof e.length) throw new TypeError("Promise.all accepts an array");
- var r = Array.prototype.slice.call(e);
- if (0 === r.length) return n([]);
- for (var i = r.length, f = 0; r.length > f; f++) {
- o(f, r[f]);
- }
- });
- }, t.resolve = function (e) {
- return e && "object" == _typeof(e) && e.constructor === t ? e : new t(function (n) {
- n(e);
- });
- }, t.reject = function (e) {
- return new t(function (n, t) {
- t(e);
- });
- }, t.race = function (e) {
- return new t(function (n, t) {
- for (var o = 0, r = e.length; r > o; o++) {
- e[o].then(n, t);
- }
- });
- }, t._immediateFn = "function" == typeof setImmediate && function (e) {
- setImmediate(e);
- } || function (e) {
- c(e, 0);
- }, t._unhandledRejectionFn = function (e) {
- void 0 !== console && console && console.warn("Possible Unhandled Promise Rejection:", e);
- };
- var l = function () {
- if ("undefined" != typeof self) return self;
- if ("undefined" != typeof window) return window;
- if ("undefined" != typeof global) return global;
- throw Error("unable to locate global object");
- }();
- "Promise" in l ? l.Promise.prototype["finally"] || (l.Promise.prototype["finally"] = e) : l.Promise = t;
- });
- }).call(this,typeof global !== "undefined" ? global : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : {})
- },{}],38:[function(require,module,exports){
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- exports.attrTypeBytes = attrTypeBytes;
- exports.glFilter = glFilter;
- exports.glTextureFmt = glTextureFmt;
- exports.enums = void 0;
- var gl = window.__gl;
- var GL_NEAREST = 9728;
- var GL_LINEAR = 9729;
- var GL_NEAREST_MIPMAP_NEAREST = 9984;
- var GL_LINEAR_MIPMAP_NEAREST = 9985;
- var GL_NEAREST_MIPMAP_LINEAR = 9986;
- var GL_LINEAR_MIPMAP_LINEAR = 9987;
- var GL_UNSIGNED_BYTE = 5121;
- var GL_UNSIGNED_SHORT = 5123;
- var GL_UNSIGNED_INT = 5125;
- var GL_FLOAT = 5126;
- var GL_UNSIGNED_SHORT_5_6_5 = 33635;
- var GL_UNSIGNED_SHORT_4_4_4_4 = 32819;
- var GL_UNSIGNED_SHORT_5_5_5_1 = 32820;
- var GL_HALF_FLOAT_OES = 36193;
- var GL_DEPTH_COMPONENT = 6402;
- var GL_ALPHA = 6406;
- var GL_RGB = 6407;
- var GL_RGBA = 6408;
- var GL_LUMINANCE = 6409;
- var GL_LUMINANCE_ALPHA = 6410;
- var GL_RGBA32F = 0x8814;
- var GL_RGB32F = 0x8815;
- var GL_RGBA16F = 0x881A;
- var GL_RGB16F = 0x881B;
- var GL_COMPRESSED_RGB_S3TC_DXT1_EXT = 0x83F0;
- var GL_COMPRESSED_RGBA_S3TC_DXT1_EXT = 0x83F1;
- var GL_COMPRESSED_RGBA_S3TC_DXT3_EXT = 0x83F2;
- var GL_COMPRESSED_RGBA_S3TC_DXT5_EXT = 0x83F3;
- var GL_COMPRESSED_RGB_PVRTC_4BPPV1_IMG = 0x8C00;
- var GL_COMPRESSED_RGB_PVRTC_2BPPV1_IMG = 0x8C01;
- var GL_COMPRESSED_RGBA_PVRTC_4BPPV1_IMG = 0x8C02;
- var GL_COMPRESSED_RGBA_PVRTC_2BPPV1_IMG = 0x8C03;
- var GL_COMPRESSED_RGB_ETC1_WEBGL = 0x8D64;
- var GL_COMPRESSED_RGB8_ETC2 = 0x9274;
- var GL_COMPRESSED_RGBA8_ETC2_EAC = 0x9278;
- var _filterGL = [[GL_NEAREST, GL_NEAREST_MIPMAP_NEAREST, GL_NEAREST_MIPMAP_LINEAR], [GL_LINEAR, GL_LINEAR_MIPMAP_NEAREST, GL_LINEAR_MIPMAP_LINEAR]];
- var _textureFmtGL = [
- {
- format: GL_RGB,
- internalFormat: GL_COMPRESSED_RGB_S3TC_DXT1_EXT,
- pixelType: null
- },
- {
- format: GL_RGBA,
- internalFormat: GL_COMPRESSED_RGBA_S3TC_DXT1_EXT,
- pixelType: null
- },
- {
- format: GL_RGBA,
- internalFormat: GL_COMPRESSED_RGBA_S3TC_DXT3_EXT,
- pixelType: null
- },
- {
- format: GL_RGBA,
- internalFormat: GL_COMPRESSED_RGBA_S3TC_DXT5_EXT,
- pixelType: null
- },
- {
- format: GL_RGB,
- internalFormat: GL_COMPRESSED_RGB_ETC1_WEBGL,
- pixelType: null
- },
- {
- format: GL_RGB,
- internalFormat: GL_COMPRESSED_RGB_PVRTC_2BPPV1_IMG,
- pixelType: null
- },
- {
- format: GL_RGBA,
- internalFormat: GL_COMPRESSED_RGBA_PVRTC_2BPPV1_IMG,
- pixelType: null
- },
- {
- format: GL_RGB,
- internalFormat: GL_COMPRESSED_RGB_PVRTC_4BPPV1_IMG,
- pixelType: null
- },
- {
- format: GL_RGBA,
- internalFormat: GL_COMPRESSED_RGBA_PVRTC_4BPPV1_IMG,
- pixelType: null
- },
- {
- format: GL_ALPHA,
- internalFormat: GL_ALPHA,
- pixelType: GL_UNSIGNED_BYTE
- },
- {
- format: GL_LUMINANCE,
- internalFormat: GL_LUMINANCE,
- pixelType: GL_UNSIGNED_BYTE
- },
- {
- format: GL_LUMINANCE_ALPHA,
- internalFormat: GL_LUMINANCE_ALPHA,
- pixelType: GL_UNSIGNED_BYTE
- },
- {
- format: GL_RGB,
- internalFormat: GL_RGB,
- pixelType: GL_UNSIGNED_SHORT_5_6_5
- },
- {
- format: GL_RGBA,
- internalFormat: GL_RGBA,
- pixelType: GL_UNSIGNED_SHORT_5_5_5_1
- },
- {
- format: GL_RGBA,
- internalFormat: GL_RGBA,
- pixelType: GL_UNSIGNED_SHORT_4_4_4_4
- },
- {
- format: GL_RGB,
- internalFormat: GL_RGB,
- pixelType: GL_UNSIGNED_BYTE
- },
- {
- format: GL_RGBA,
- internalFormat: GL_RGBA,
- pixelType: GL_UNSIGNED_BYTE
- },
- {
- format: GL_RGB,
- internalFormat: GL_RGB16F,
- pixelType: GL_HALF_FLOAT_OES
- },
- {
- format: GL_RGBA,
- internalFormat: GL_RGBA16F,
- pixelType: GL_HALF_FLOAT_OES
- },
- {
- format: GL_RGB,
- internalFormat: GL_RGB32F,
- pixelType: GL_FLOAT
- },
- {
- format: GL_RGBA,
- internalFormat: GL_RGBA32F,
- pixelType: GL_FLOAT
- },
- {
- format: null,
- internalFormat: null,
- pixelType: null
- },
- {
- format: null,
- internalFormat: null,
- pixelType: null
- },
- {
- format: null,
- internalFormat: null,
- pixelType: null
- },
- {
- format: null,
- internalFormat: null,
- pixelType: null
- },
- {
- format: GL_DEPTH_COMPONENT,
- internalFormat: GL_DEPTH_COMPONENT,
- pixelType: GL_UNSIGNED_SHORT
- },
- {
- format: GL_DEPTH_COMPONENT,
- internalFormat: GL_DEPTH_COMPONENT,
- pixelType: GL_UNSIGNED_INT
- },
- {
- format: GL_DEPTH_COMPONENT,
- internalFormat: GL_DEPTH_COMPONENT,
- pixelType: GL_UNSIGNED_INT
- },
- {
- format: GL_RGB,
- internalFormat: GL_COMPRESSED_RGB8_ETC2,
- pixelType: null
- },
- {
- format: GL_RGBA,
- internalFormat: GL_COMPRESSED_RGBA8_ETC2_EAC,
- pixelType: null
- }];
- var enums = {
-
- USAGE_STATIC: 35044,
-
- USAGE_DYNAMIC: 35048,
-
- USAGE_STREAM: 35040,
-
-
- INDEX_FMT_UINT8: 5121,
-
- INDEX_FMT_UINT16: 5123,
-
- INDEX_FMT_UINT32: 5125,
-
-
- ATTR_POSITION: 'a_position',
- ATTR_NORMAL: 'a_normal',
- ATTR_TANGENT: 'a_tangent',
- ATTR_BITANGENT: 'a_bitangent',
- ATTR_WEIGHTS: 'a_weights',
- ATTR_JOINTS: 'a_joints',
- ATTR_COLOR: 'a_color',
- ATTR_COLOR0: 'a_color0',
- ATTR_COLOR1: 'a_color1',
- ATTR_UV: 'a_uv',
- ATTR_UV0: 'a_uv0',
- ATTR_UV1: 'a_uv1',
- ATTR_UV2: 'a_uv2',
- ATTR_UV3: 'a_uv3',
- ATTR_UV4: 'a_uv4',
- ATTR_UV5: 'a_uv5',
- ATTR_UV6: 'a_uv6',
- ATTR_UV7: 'a_uv7',
- ATTR_TEX_COORD: 'a_texCoord',
- ATTR_TEX_COORD1: 'a_texCoord1',
- ATTR_TEX_COORD2: 'a_texCoord2',
- ATTR_TEX_COORD3: 'a_texCoord3',
- ATTR_TEX_COORD4: 'a_texCoord4',
- ATTR_TEX_COORD5: 'a_texCoord5',
- ATTR_TEX_COORD6: 'a_texCoord6',
- ATTR_TEX_COORD7: 'a_texCoord7',
- ATTR_TEX_COORD8: 'a_texCoord8',
-
- ATTR_TYPE_INT8: 5120,
-
- ATTR_TYPE_UINT8: 5121,
-
- ATTR_TYPE_INT16: 5122,
-
- ATTR_TYPE_UINT16: 5123,
-
- ATTR_TYPE_INT32: 5124,
-
- ATTR_TYPE_UINT32: 5125,
-
- ATTR_TYPE_FLOAT32: 5126,
-
-
- FILTER_NEAREST: 0,
- FILTER_LINEAR: 1,
-
- WRAP_REPEAT: 10497,
-
- WRAP_CLAMP: 33071,
-
- WRAP_MIRROR: 33648,
-
-
-
- TEXTURE_FMT_RGB_DXT1: 0,
- TEXTURE_FMT_RGBA_DXT1: 1,
- TEXTURE_FMT_RGBA_DXT3: 2,
- TEXTURE_FMT_RGBA_DXT5: 3,
- TEXTURE_FMT_RGB_ETC1: 4,
- TEXTURE_FMT_RGB_PVRTC_2BPPV1: 5,
- TEXTURE_FMT_RGBA_PVRTC_2BPPV1: 6,
- TEXTURE_FMT_RGB_PVRTC_4BPPV1: 7,
- TEXTURE_FMT_RGBA_PVRTC_4BPPV1: 8,
-
- TEXTURE_FMT_A8: 9,
- TEXTURE_FMT_L8: 10,
- TEXTURE_FMT_L8_A8: 11,
- TEXTURE_FMT_R5_G6_B5: 12,
- TEXTURE_FMT_R5_G5_B5_A1: 13,
- TEXTURE_FMT_R4_G4_B4_A4: 14,
- TEXTURE_FMT_RGB8: 15,
- TEXTURE_FMT_RGBA8: 16,
- TEXTURE_FMT_RGB16F: 17,
- TEXTURE_FMT_RGBA16F: 18,
- TEXTURE_FMT_RGB32F: 19,
- TEXTURE_FMT_RGBA32F: 20,
- TEXTURE_FMT_R32F: 21,
- TEXTURE_FMT_111110F: 22,
- TEXTURE_FMT_SRGB: 23,
- TEXTURE_FMT_SRGBA: 24,
-
- TEXTURE_FMT_D16: 25,
- TEXTURE_FMT_D32: 26,
- TEXTURE_FMT_D24S8: 27,
-
- TEXTURE_FMT_RGB_ETC2: 28,
- TEXTURE_FMT_RGBA_ETC2: 29,
-
- DS_FUNC_NEVER: 512,
-
- DS_FUNC_LESS: 513,
-
- DS_FUNC_EQUAL: 514,
-
- DS_FUNC_LEQUAL: 515,
-
- DS_FUNC_GREATER: 516,
-
- DS_FUNC_NOTEQUAL: 517,
-
- DS_FUNC_GEQUAL: 518,
-
- DS_FUNC_ALWAYS: 519,
-
-
- RB_FMT_RGBA4: 32854,
-
- RB_FMT_RGB5_A1: 32855,
-
- RB_FMT_RGB565: 36194,
-
- RB_FMT_D16: 33189,
-
- RB_FMT_S8: 36168,
-
- RB_FMT_D24S8: 34041,
-
-
- BLEND_FUNC_ADD: 32774,
-
- BLEND_FUNC_SUBTRACT: 32778,
-
- BLEND_FUNC_REVERSE_SUBTRACT: 32779,
-
-
- BLEND_ZERO: 0,
-
- BLEND_ONE: 1,
-
- BLEND_SRC_COLOR: 768,
-
- BLEND_ONE_MINUS_SRC_COLOR: 769,
-
- BLEND_DST_COLOR: 774,
-
- BLEND_ONE_MINUS_DST_COLOR: 775,
-
- BLEND_SRC_ALPHA: 770,
-
- BLEND_ONE_MINUS_SRC_ALPHA: 771,
-
- BLEND_DST_ALPHA: 772,
-
- BLEND_ONE_MINUS_DST_ALPHA: 773,
-
- BLEND_CONSTANT_COLOR: 32769,
-
- BLEND_ONE_MINUS_CONSTANT_COLOR: 32770,
-
- BLEND_CONSTANT_ALPHA: 32771,
-
- BLEND_ONE_MINUS_CONSTANT_ALPHA: 32772,
-
- BLEND_SRC_ALPHA_SATURATE: 776,
-
-
- STENCIL_DISABLE: 0,
-
- STENCIL_ENABLE: 1,
-
- STENCIL_INHERIT: 2,
-
- STENCIL_OP_KEEP: 7680,
-
- STENCIL_OP_ZERO: 0,
-
- STENCIL_OP_REPLACE: 7681,
-
- STENCIL_OP_INCR: 7682,
-
- STENCIL_OP_INCR_WRAP: 34055,
-
- STENCIL_OP_DECR: 7683,
-
- STENCIL_OP_DECR_WRAP: 34056,
-
- STENCIL_OP_INVERT: 5386,
-
-
- CULL_NONE: 0,
- CULL_FRONT: 1028,
- CULL_BACK: 1029,
- CULL_FRONT_AND_BACK: 1032,
-
- PT_POINTS: 0,
-
- PT_LINES: 1,
-
- PT_LINE_LOOP: 2,
-
- PT_LINE_STRIP: 3,
-
- PT_TRIANGLES: 4,
-
- PT_TRIANGLE_STRIP: 5,
-
- PT_TRIANGLE_FAN: 6
- };
- exports.enums = enums;
- function attrTypeBytes(attrType) {
- if (attrType === enums.ATTR_TYPE_INT8) {
- return 1;
- } else if (attrType === enums.ATTR_TYPE_UINT8) {
- return 1;
- } else if (attrType === enums.ATTR_TYPE_INT16) {
- return 2;
- } else if (attrType === enums.ATTR_TYPE_UINT16) {
- return 2;
- } else if (attrType === enums.ATTR_TYPE_INT32) {
- return 4;
- } else if (attrType === enums.ATTR_TYPE_UINT32) {
- return 4;
- } else if (attrType === enums.ATTR_TYPE_FLOAT32) {
- return 4;
- }
- console.warn("Unknown ATTR_TYPE: ".concat(attrType));
- return 0;
- }
- function glFilter(gl, filter) {
- var mipFilter = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : -1;
- var result = _filterGL[filter][mipFilter + 1];
- if (result === undefined) {
- console.warn("Unknown FILTER: ".concat(filter));
- return mipFilter === -1 ? gl.LINEAR : gl.LINEAR_MIPMAP_LINEAR;
- }
- return result;
- }
- function glTextureFmt(fmt) {
- var result = _textureFmtGL[fmt];
- if (result === undefined) {
- console.warn("Unknown TEXTURE_FMT: ".concat(fmt));
- return _textureFmtGL[enums.TEXTURE_FMT_RGBA8];
- }
- return result;
- }
- },{}],39:[function(require,module,exports){
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- exports["default"] = void 0;
- var _enums = require("./enums");
- var _jsbVertexFormat = _interopRequireDefault(require("./jsb-vertex-format"));
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
- var gfx = window.gfx;
- var _tmpGetSetDesc = {
- get: undefined,
- set: undefined,
- enumerable: true,
- configurable: true
- };
- var deviceInstance;
- gfx.Device.prototype.setBlendColor32 = gfx.Device.prototype.setBlendColor;
- gfx.Device._getInstance = gfx.Device.getInstance;
- gfx.Device.getInstance = function () {
-
- if (!deviceInstance) {
- deviceInstance = gfx.Device._getInstance();
- deviceInstance._gl = window.__gl;
- deviceInstance.ext = function (extName) {
- return window.__gl.getExtension(extName);
- };
- }
- return deviceInstance;
- };
- var _p = gfx.Program.prototype;
- _p._ctor = function (device, options) {
- if (device) {
- this.init(device, options.vert, options.frag);
- }
- };
- _p = gfx.VertexBuffer.prototype;
- _p._ctor = function (device, format, usage, data, numVertices) {
- this._attr2el = format._attr2el;
- if (device && format) {
- this.init(device, format._nativeObj, usage, data, numVertices);
- }
- this._nativePtr = this.self();
- };
- _p.getFormat = function (name) {
- return this._attr2el[name];
- };
- _tmpGetSetDesc.get = _p.getCount;
- _tmpGetSetDesc.set = undefined;
- Object.defineProperty(_p, "count", _tmpGetSetDesc);
- _p = gfx.IndexBuffer.prototype;
- _p._ctor = function (device, format, usage, data, numIndices) {
- if (device) {
- this.init(device, format, usage, data, numIndices);
- }
- this._nativePtr = this.self();
- };
- _tmpGetSetDesc.get = _p.getCount;
- _tmpGetSetDesc.set = undefined;
- Object.defineProperty(_p, "count", _tmpGetSetDesc);
- gfx.VertexFormat = _jsbVertexFormat["default"];
- Object.assign(gfx, _enums.enums);
- function convertImages(images) {
- if (images) {
- for (var i = 0, len = images.length; i < len; ++i) {
- var image = images[i];
- if (image !== null) {
- if (image instanceof window.HTMLCanvasElement) {
- if (image._data) {
- images[i] = image._data._data;
- } else {
- images[i] = null;
- }
- } else if (image instanceof window.HTMLImageElement) {
- images[i] = image._data;
- }
- }
- }
- }
- }
- function convertOptions(texture, options) {
- var gl = window.__gl;
- if (options.images && options.images[0] instanceof HTMLImageElement) {
- var image = options.images[0];
- options.glInternalFormat = image._glInternalFormat;
- options.glFormat = image._glFormat;
- options.glType = image._glType;
- options.bpp = image._bpp;
- options.compressed = image._compressed;
- } else if (options.images && options.images[0] instanceof HTMLCanvasElement) {
- options.glInternalFormat = gl.RGBA;
- options.glFormat = gl.RGBA;
- options.glType = gl.UNSIGNED_BYTE;
- options.bpp = 32;
- options.compressed = false;
- } else {
- var format = options.format || texture._format;
- var gltf = (0, _enums.glTextureFmt)(format);
- options.glInternalFormat = gltf.internalFormat;
- options.glFormat = gltf.format;
- options.glType = gltf.pixelType;
- options.bpp = gltf.bpp;
- options.compressed = format >= _enums.enums.TEXTURE_FMT_RGB_DXT1 && format <= _enums.enums.TEXTURE_FMT_RGBA_PVRTC_4BPPV1 || format >= _enums.enums.TEXTURE_FMT_RGB_ETC2 && format <= _enums.enums.TEXTURE_FMT_RGBA_ETC2;
- }
- options.width = options.width || texture._width;
- options.height = options.height || texture._height;
- convertImages(options.images);
- }
- _p = gfx.Texture2D.prototype;
- var _textureID = 0;
- _p._ctor = function (device, options) {
- if (device) {
- convertOptions(this, options);
- this.init(device, options);
- }
- this._id = _textureID++;
- };
- _p.destroy = function () {};
- _p.update = function (options) {
- convertOptions(this, options);
- this.updateNative(options);
- };
- _p.updateSubImage = function (option) {
- var images = [option.image];
- convertImages(images);
- var data = new Uint32Array(8 + (images[0].length + 3) / 4);
- data[0] = option.x;
- data[1] = option.y;
- data[2] = option.width;
- data[3] = option.height;
- data[4] = option.level;
- data[5] = option.flipY;
- data[6] = false;
- data[7] = images[0].length;
- var imageData = new Uint8Array(data.buffer);
- imageData.set(images[0], 32);
- this.updateSubImageNative(data);
- };
- _tmpGetSetDesc.get = _p.getWidth;
- _tmpGetSetDesc.set = undefined;
- Object.defineProperty(_p, "_width", _tmpGetSetDesc);
- _tmpGetSetDesc.get = _p.getHeight;
- Object.defineProperty(_p, "_height", _tmpGetSetDesc);
- _p = gfx.FrameBuffer.prototype;
- _p._ctor = function (device, width, height, options) {
- if (!device) return;
- this.init(device, width, height, options);
- this._glID = {
- _id: this.getHandle()
- };
- this.getHandle = function () {
- return this._glID;
- };
- };
- _p = gfx.RenderBuffer.prototype;
- _p._ctor = function (device, format, width, height) {
- if (!device) return;
- this.init(device, format, width, height);
- this._glID = {
- _id: this.getHandle()
- };
- this.getHandle = function () {
- return this._glID;
- };
- };
- gfx.RB_FMT_D16 = 0x81A5;
- var _default = gfx;
- exports["default"] = _default;
- },{"./enums":38,"./jsb-vertex-format":41}],40:[function(require,module,exports){
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- exports["default"] = void 0;
- var renderer = window.renderer;
- _p = renderer.ProgramLib.prototype;
- var _define = _p.define;
- var _shdID = 0;
- var _templates = {};
- var libDefine = function libDefine(prog) {
- var name = prog.name,
- defines = prog.defines,
- glsl1 = prog.glsl1;
- var _ref = glsl1 || prog,
- vert = _ref.vert,
- frag = _ref.frag;
- if (_templates[name]) {
- console.warn("Failed to define shader ".concat(name, ": already exists."));
- return;
- }
- var id = ++_shdID;
- var offset = 0;
- for (var i = 0; i < defines.length; ++i) {
- var def = defines[i];
- var cnt = 1;
- if (def.type === 'number') {
- var range = def.range || [];
- def.min = range[0] || 0;
- def.max = range[1] || 4;
- cnt = Math.ceil(Math.log2(def.max - def.min));
- def._map = function (value) {
- return value - this.min << this._offset;
- }.bind(def);
- } else {
-
- def._map = function (value) {
- if (value) {
- return 1 << this._offset;
- }
- return 0;
- }.bind(def);
- }
- offset += cnt;
- def._offset = offset;
- }
- var uniforms = prog.uniforms || [];
- if (prog.samplers) {
- for (var _i = 0; _i < prog.samplers.length; _i++) {
- uniforms.push(prog.samplers[_i]);
- }
- }
- if (prog.blocks) {
- for (var _i2 = 0; _i2 < prog.blocks.length; _i2++) {
- var _defines = prog.blocks[_i2].defines;
- var members = prog.blocks[_i2].members;
- for (var j = 0; j < members.length; j++) {
- uniforms.push({
- defines: _defines,
- name: members[j].name,
- type: members[j].type
- });
- }
- }
- }
- _templates[name] = {
- id: id,
- name: name,
- vert: vert,
- frag: frag,
- defines: defines,
- attributes: prog.attributes,
- uniforms: uniforms,
- extensions: prog.extensions
- };
- _define.call(this, name, vert, frag, defines);
- };
- var libGetTemplate = function libGetTemplate(name) {
- return _templates[name];
- };
- var _p = renderer.ForwardRenderer.prototype;
- _p._ctor = function (device, builtin) {
- if (device) {
- this.init(device, [], builtin.defaultTexture, window.innerWidth, window.innerHeight);
- var templates = builtin.programTemplates;
- this._programLib = this.getProgramLib();
- this._programLib.define = libDefine;
- this._programLib.getTemplate = libGetTemplate;
- for (var i = 0; i < templates.length; ++i) {
- this._programLib.define(templates[i]);
- }
- }
- };
- _p = renderer.Camera.prototype;
- Object.defineProperty(_p, "cullingMask", {
- get: function get() {
- return this.getCullingMask();
- },
- set: function set(value) {
- this.setCullingMask(value);
- }
- });
- var _default = renderer;
- exports["default"] = _default;
- },{}],41:[function(require,module,exports){
- "use strict";
- Object.defineProperty(exports, "__esModule", {
- value: true
- });
- exports["default"] = void 0;
- var _enums = require("./enums");
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
- function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }
- function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }
- var gfx = window.gfx;
- var VertexFormat = function () {
-
- function VertexFormat(infos) {
- _classCallCheck(this, VertexFormat);
- this._attr2el = {};
- this._elements = [];
- this._bytes = 0;
- var offset = 0;
- for (var i = 0, len = infos.length; i < len; ++i) {
- var info = infos[i];
- var el = {
- name: info.name,
- offset: offset,
- stride: 0,
- stream: -1,
- type: info.type,
- num: info.num,
- normalize: info.normalize === undefined ? false : info.normalize,
- bytes: info.num * (0, _enums.attrTypeBytes)(info.type)
- };
- this._attr2el[el.name] = el;
- this._elements.push(el);
- this._bytes += el.bytes;
- offset += el.bytes;
- }
- for (var _i = 0, _len = this._elements.length; _i < _len; ++_i) {
- var _el = this._elements[_i];
- _el.stride = this._bytes;
- }
- this._nativeObj = new gfx.VertexFormatNative(this._elements);
- }
-
- _createClass(VertexFormat, [{
- key: "element",
- value: function element(attrName) {
- return this._attr2el[attrName];
- }
- }, {
- key: "getElement",
- value: function getElement(attrName) {
- return this._attr2el[attrName];
- }
- }, {
- key: "getBytes",
- value: function getBytes() {
- return this._bytes;
- }
- }, {
- key: "getAttributeNames",
- value: function getAttributeNames() {
- return Object.keys(this._attr2el);
- }
- }]);
- return VertexFormat;
- }();
- exports["default"] = VertexFormat;
- },{"./enums":38}],42:[function(require,module,exports){
- "use strict";
- function DOMParser(options) {
- this.options = options || {
- locator: {}
- };
- }
- DOMParser.prototype.parseFromString = function (source, mimeType) {
- var options = this.options;
- var sax = new XMLReader();
- var domBuilder = options.domBuilder || new DOMHandler();
- var errorHandler = options.errorHandler;
- var locator = options.locator;
- var defaultNSMap = options.xmlns || {};
- var isHTML = /\/x?html?$/.test(mimeType);
- var entityMap = isHTML ? htmlEntity.entityMap : {
- 'lt': '<',
- 'gt': '>',
- 'amp': '&',
- 'quot': '"',
- 'apos': "'"
- };
- if (locator) {
- domBuilder.setDocumentLocator(locator);
- }
- sax.errorHandler = buildErrorHandler(errorHandler, domBuilder, locator);
- sax.domBuilder = options.domBuilder || domBuilder;
- if (isHTML) {
- defaultNSMap[''] = 'http://www.w3.org/1999/xhtml';
- }
- defaultNSMap.xml = defaultNSMap.xml || 'http://www.w3.org/XML/1998/namespace';
- if (source) {
- sax.parse(source, defaultNSMap, entityMap);
- } else {
- sax.errorHandler.error("invalid doc source");
- }
- return domBuilder.doc;
- };
- function buildErrorHandler(errorImpl, domBuilder, locator) {
- if (!errorImpl) {
- if (domBuilder instanceof DOMHandler) {
- return domBuilder;
- }
- errorImpl = domBuilder;
- }
- var errorHandler = {};
- var isCallback = errorImpl instanceof Function;
- locator = locator || {};
- function build(key) {
- var fn = errorImpl[key];
- if (!fn && isCallback) {
- fn = errorImpl.length == 2 ? function (msg) {
- errorImpl(key, msg);
- } : errorImpl;
- }
- errorHandler[key] = fn && function (msg) {
- fn('[xmldom ' + key + ']\t' + msg + _locator(locator));
- } || function () {};
- }
- build('warning');
- build('error');
- build('fatalError');
- return errorHandler;
- }
- function DOMHandler() {
- this.cdata = false;
- }
- function position(locator, node) {
- node.lineNumber = locator.lineNumber;
- node.columnNumber = locator.columnNumber;
- }
- DOMHandler.prototype = {
- startDocument: function startDocument() {
- this.doc = new DOMImplementation().createDocument(null, null, null);
- if (this.locator) {
- this.doc.documentURI = this.locator.systemId;
- }
- },
- startElement: function startElement(namespaceURI, localName, qName, attrs) {
- var doc = this.doc;
- var el = doc.createElementNS(namespaceURI, qName || localName);
- var len = attrs.length;
- appendElement(this, el);
- this.currentElement = el;
- this.locator && position(this.locator, el);
- for (var i = 0; i < len; i++) {
- var namespaceURI = attrs.getURI(i);
- var value = attrs.getValue(i);
- var qName = attrs.getQName(i);
- var attr = doc.createAttributeNS(namespaceURI, qName);
- this.locator && position(attrs.getLocator(i), attr);
- attr.value = attr.nodeValue = value;
- el.setAttributeNode(attr);
- }
- },
- endElement: function endElement(namespaceURI, localName, qName) {
- var current = this.currentElement;
- var tagName = current.tagName;
- this.currentElement = current.parentNode;
- },
- startPrefixMapping: function startPrefixMapping(prefix, uri) {},
- endPrefixMapping: function endPrefixMapping(prefix) {},
- processingInstruction: function processingInstruction(target, data) {
- var ins = this.doc.createProcessingInstruction(target, data);
- this.locator && position(this.locator, ins);
- appendElement(this, ins);
- },
- ignorableWhitespace: function ignorableWhitespace(ch, start, length) {},
- characters: function characters(chars, start, length) {
- chars = _toString.apply(this, arguments);
- if (chars) {
- if (this.cdata) {
- var charNode = this.doc.createCDATASection(chars);
- } else {
- var charNode = this.doc.createTextNode(chars);
- }
- if (this.currentElement) {
- this.currentElement.appendChild(charNode);
- } else if (/^\s*$/.test(chars)) {
- this.doc.appendChild(charNode);
- }
- this.locator && position(this.locator, charNode);
- }
- },
- skippedEntity: function skippedEntity(name) {},
- endDocument: function endDocument() {
- this.doc.normalize();
- },
- setDocumentLocator: function setDocumentLocator(locator) {
- if (this.locator = locator) {
-
- locator.lineNumber = 0;
- }
- },
-
- comment: function comment(chars, start, length) {
- chars = _toString.apply(this, arguments);
- var comm = this.doc.createComment(chars);
- this.locator && position(this.locator, comm);
- appendElement(this, comm);
- },
- startCDATA: function startCDATA() {
-
- this.cdata = true;
- },
- endCDATA: function endCDATA() {
- this.cdata = false;
- },
- startDTD: function startDTD(name, publicId, systemId) {
- var impl = this.doc.implementation;
- if (impl && impl.createDocumentType) {
- var dt = impl.createDocumentType(name, publicId, systemId);
- this.locator && position(this.locator, dt);
- appendElement(this, dt);
- }
- },
-
- warning: function warning(error) {
- console.warn('[xmldom warning]\t' + error, _locator(this.locator));
- },
- error: function error(_error) {
- console.error('[xmldom error]\t' + _error, _locator(this.locator));
- },
- fatalError: function fatalError(error) {
- console.error('[xmldom fatalError]\t' + error, _locator(this.locator));
- throw error;
- }
- };
- function _locator(l) {
- if (l) {
- return '\n@' + (l.systemId || '') + '#[line:' + l.lineNumber + ',col:' + l.columnNumber + ']';
- }
- }
- function _toString(chars, start, length) {
- if (typeof chars == 'string') {
- return chars.substr(start, length);
- } else {
-
- if (chars.length >= start + length || start) {
- return new java.lang.String(chars, start, length) + '';
- }
- return chars;
- }
- }
- "endDTD,startEntity,endEntity,attributeDecl,elementDecl,externalEntityDecl,internalEntityDecl,resolveEntity,getExternalSubset,notationDecl,unparsedEntityDecl".replace(/\w+/g, function (key) {
- DOMHandler.prototype[key] = function () {
- return null;
- };
- });
- function appendElement(hander, node) {
- if (!hander.currentElement) {
- hander.doc.appendChild(node);
- } else {
- hander.currentElement.appendChild(node);
- }
- }
- var htmlEntity = require('./entities');
- var XMLReader = require('./sax').XMLReader;
- var DOMImplementation = exports.DOMImplementation = require('./dom').DOMImplementation;
- exports.XMLSerializer = require('./dom').XMLSerializer;
- exports.DOMParser = DOMParser;
- },{"./dom":43,"./entities":44,"./sax":45}],43:[function(require,module,exports){
- "use strict";
- function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); }
- function copy(src, dest) {
- for (var p in src) {
- dest[p] = src[p];
- }
- }
- function _extends(Class, Super) {
- var pt = Class.prototype;
- if (!(pt instanceof Super)) {
- var t = function t() {};
- ;
- t.prototype = Super.prototype;
- t = new t();
- copy(pt, t);
- Class.prototype = pt = t;
- }
- if (pt.constructor != Class) {
- if (typeof Class != 'function') {
- console.error("unknow Class:" + Class);
- }
- pt.constructor = Class;
- }
- }
- var htmlns = 'http://www.w3.org/1999/xhtml';
- var NodeType = {};
- var ELEMENT_NODE = NodeType.ELEMENT_NODE = 1;
- var ATTRIBUTE_NODE = NodeType.ATTRIBUTE_NODE = 2;
- var TEXT_NODE = NodeType.TEXT_NODE = 3;
- var CDATA_SECTION_NODE = NodeType.CDATA_SECTION_NODE = 4;
- var ENTITY_REFERENCE_NODE = NodeType.ENTITY_REFERENCE_NODE = 5;
- var ENTITY_NODE = NodeType.ENTITY_NODE = 6;
- var PROCESSING_INSTRUCTION_NODE = NodeType.PROCESSING_INSTRUCTION_NODE = 7;
- var COMMENT_NODE = NodeType.COMMENT_NODE = 8;
- var DOCUMENT_NODE = NodeType.DOCUMENT_NODE = 9;
- var DOCUMENT_TYPE_NODE = NodeType.DOCUMENT_TYPE_NODE = 10;
- var DOCUMENT_FRAGMENT_NODE = NodeType.DOCUMENT_FRAGMENT_NODE = 11;
- var NOTATION_NODE = NodeType.NOTATION_NODE = 12;
- var ExceptionCode = {};
- var ExceptionMessage = {};
- var INDEX_SIZE_ERR = ExceptionCode.INDEX_SIZE_ERR = (ExceptionMessage[1] = "Index size error", 1);
- var DOMSTRING_SIZE_ERR = ExceptionCode.DOMSTRING_SIZE_ERR = (ExceptionMessage[2] = "DOMString size error", 2);
- var HIERARCHY_REQUEST_ERR = ExceptionCode.HIERARCHY_REQUEST_ERR = (ExceptionMessage[3] = "Hierarchy request error", 3);
- var WRONG_DOCUMENT_ERR = ExceptionCode.WRONG_DOCUMENT_ERR = (ExceptionMessage[4] = "Wrong document", 4);
- var INVALID_CHARACTER_ERR = ExceptionCode.INVALID_CHARACTER_ERR = (ExceptionMessage[5] = "Invalid character", 5);
- var NO_DATA_ALLOWED_ERR = ExceptionCode.NO_DATA_ALLOWED_ERR = (ExceptionMessage[6] = "No data allowed", 6);
- var NO_MODIFICATION_ALLOWED_ERR = ExceptionCode.NO_MODIFICATION_ALLOWED_ERR = (ExceptionMessage[7] = "No modification allowed", 7);
- var NOT_FOUND_ERR = ExceptionCode.NOT_FOUND_ERR = (ExceptionMessage[8] = "Not found", 8);
- var NOT_SUPPORTED_ERR = ExceptionCode.NOT_SUPPORTED_ERR = (ExceptionMessage[9] = "Not supported", 9);
- var INUSE_ATTRIBUTE_ERR = ExceptionCode.INUSE_ATTRIBUTE_ERR = (ExceptionMessage[10] = "Attribute in use", 10);
- var INVALID_STATE_ERR = ExceptionCode.INVALID_STATE_ERR = (ExceptionMessage[11] = "Invalid state", 11);
- var SYNTAX_ERR = ExceptionCode.SYNTAX_ERR = (ExceptionMessage[12] = "Syntax error", 12);
- var INVALID_MODIFICATION_ERR = ExceptionCode.INVALID_MODIFICATION_ERR = (ExceptionMessage[13] = "Invalid modification", 13);
- var NAMESPACE_ERR = ExceptionCode.NAMESPACE_ERR = (ExceptionMessage[14] = "Invalid namespace", 14);
- var INVALID_ACCESS_ERR = ExceptionCode.INVALID_ACCESS_ERR = (ExceptionMessage[15] = "Invalid access", 15);
- function DOMException(code, message) {
- if (message instanceof Error) {
- var error = message;
- } else {
- error = this;
- Error.call(this, ExceptionMessage[code]);
- this.message = ExceptionMessage[code];
- if (Error.captureStackTrace) Error.captureStackTrace(this, DOMException);
- }
- error.code = code;
- if (message) this.message = this.message + ": " + message;
- return error;
- }
- ;
- DOMException.prototype = Error.prototype;
- copy(ExceptionCode, DOMException);
- function NodeList() {}
- ;
- NodeList.prototype = {
-
- length: 0,
-
- item: function item(index) {
- return this[index] || null;
- },
- toString: function toString(isHTML, nodeFilter) {
- for (var buf = [], i = 0; i < this.length; i++) {
- serializeToString(this[i], buf, isHTML, nodeFilter);
- }
- return buf.join('');
- }
- };
- function LiveNodeList(node, refresh) {
- this._node = node;
- this._refresh = refresh;
- _updateLiveList(this);
- }
- function _updateLiveList(list) {
- var inc = list._node._inc || list._node.ownerDocument._inc;
- if (list._inc != inc) {
- var ls = list._refresh(list._node);
- __set__(list, 'length', ls.length);
- copy(ls, list);
- list._inc = inc;
- }
- }
- LiveNodeList.prototype.item = function (i) {
- _updateLiveList(this);
- return this[i];
- };
- _extends(LiveNodeList, NodeList);
- function NamedNodeMap() {}
- ;
- function _findNodeIndex(list, node) {
- var i = list.length;
- while (i--) {
- if (list[i] === node) {
- return i;
- }
- }
- }
- function _addNamedNode(el, list, newAttr, oldAttr) {
- if (oldAttr) {
- list[_findNodeIndex(list, oldAttr)] = newAttr;
- } else {
- list[list.length++] = newAttr;
- }
- if (el) {
- newAttr.ownerElement = el;
- var doc = el.ownerDocument;
- if (doc) {
- oldAttr && _onRemoveAttribute(doc, el, oldAttr);
- _onAddAttribute(doc, el, newAttr);
- }
- }
- }
- function _removeNamedNode(el, list, attr) {
-
- var i = _findNodeIndex(list, attr);
- if (i >= 0) {
- var lastIndex = list.length - 1;
- while (i < lastIndex) {
- list[i] = list[++i];
- }
- list.length = lastIndex;
- if (el) {
- var doc = el.ownerDocument;
- if (doc) {
- _onRemoveAttribute(doc, el, attr);
- attr.ownerElement = null;
- }
- }
- } else {
- throw DOMException(NOT_FOUND_ERR, new Error(el.tagName + '@' + attr));
- }
- }
- NamedNodeMap.prototype = {
- length: 0,
- item: NodeList.prototype.item,
- getNamedItem: function getNamedItem(key) {
-
-
-
-
- var i = this.length;
- while (i--) {
- var attr = this[i];
- if (attr.nodeName == key) {
- return attr;
- }
- }
- },
- setNamedItem: function setNamedItem(attr) {
- var el = attr.ownerElement;
- if (el && el != this._ownerElement) {
- throw new DOMException(INUSE_ATTRIBUTE_ERR);
- }
- var oldAttr = this.getNamedItem(attr.nodeName);
- _addNamedNode(this._ownerElement, this, attr, oldAttr);
- return oldAttr;
- },
-
- setNamedItemNS: function setNamedItemNS(attr) {
-
- var el = attr.ownerElement,
- oldAttr;
- if (el && el != this._ownerElement) {
- throw new DOMException(INUSE_ATTRIBUTE_ERR);
- }
- oldAttr = this.getNamedItemNS(attr.namespaceURI, attr.localName);
- _addNamedNode(this._ownerElement, this, attr, oldAttr);
- return oldAttr;
- },
-
- removeNamedItem: function removeNamedItem(key) {
- var attr = this.getNamedItem(key);
- _removeNamedNode(this._ownerElement, this, attr);
- return attr;
- },
-
-
- removeNamedItemNS: function removeNamedItemNS(namespaceURI, localName) {
- var attr = this.getNamedItemNS(namespaceURI, localName);
- _removeNamedNode(this._ownerElement, this, attr);
- return attr;
- },
- getNamedItemNS: function getNamedItemNS(namespaceURI, localName) {
- var i = this.length;
- while (i--) {
- var node = this[i];
- if (node.localName == localName && node.namespaceURI == namespaceURI) {
- return node;
- }
- }
- return null;
- }
- };
- function DOMImplementation(
- features) {
- this._features = {};
- if (features) {
- for (var feature in features) {
- this._features = features[feature];
- }
- }
- }
- ;
- DOMImplementation.prototype = {
- hasFeature: function hasFeature(
-
- feature,
-
- version) {
- var versions = this._features[feature.toLowerCase()];
- if (versions && (!version || version in versions)) {
- return true;
- } else {
- return false;
- }
- },
-
- createDocument: function createDocument(namespaceURI, qualifiedName, doctype) {
-
- var doc = new Document();
- doc.implementation = this;
- doc.childNodes = new NodeList();
- doc.doctype = doctype;
- if (doctype) {
- doc.appendChild(doctype);
- }
- if (qualifiedName) {
- var root = doc.createElementNS(namespaceURI, qualifiedName);
- doc.appendChild(root);
- }
- return doc;
- },
-
- createDocumentType: function createDocumentType(qualifiedName, publicId, systemId) {
-
- var node = new DocumentType();
- node.name = qualifiedName;
- node.nodeName = qualifiedName;
- node.publicId = publicId;
- node.systemId = systemId;
-
-
-
-
- return node;
- }
- };
- function Node() {}
- ;
- Node.prototype = {
- firstChild: null,
- lastChild: null,
- previousSibling: null,
- nextSibling: null,
- attributes: null,
- parentNode: null,
- childNodes: null,
- ownerDocument: null,
- nodeValue: null,
- namespaceURI: null,
- prefix: null,
- localName: null,
-
- insertBefore: function insertBefore(newChild, refChild) {
-
- return _insertBefore(this, newChild, refChild);
- },
- replaceChild: function replaceChild(newChild, oldChild) {
-
- this.insertBefore(newChild, oldChild);
- if (oldChild) {
- this.removeChild(oldChild);
- }
- },
- removeChild: function removeChild(oldChild) {
- return _removeChild(this, oldChild);
- },
- appendChild: function appendChild(newChild) {
- return this.insertBefore(newChild, null);
- },
- hasChildNodes: function hasChildNodes() {
- return this.firstChild != null;
- },
- cloneNode: function cloneNode(deep) {
- return _cloneNode(this.ownerDocument || this, this, deep);
- },
-
- normalize: function normalize() {
- var child = this.firstChild;
- while (child) {
- var next = child.nextSibling;
- if (next && next.nodeType == TEXT_NODE && child.nodeType == TEXT_NODE) {
- this.removeChild(next);
- child.appendData(next.data);
- } else {
- child.normalize();
- child = next;
- }
- }
- },
-
- isSupported: function isSupported(feature, version) {
- return this.ownerDocument.implementation.hasFeature(feature, version);
- },
-
- hasAttributes: function hasAttributes() {
- return this.attributes.length > 0;
- },
- lookupPrefix: function lookupPrefix(namespaceURI) {
- var el = this;
- while (el) {
- var map = el._nsMap;
- if (map) {
- for (var n in map) {
- if (map[n] == namespaceURI) {
- return n;
- }
- }
- }
- el = el.nodeType == ATTRIBUTE_NODE ? el.ownerDocument : el.parentNode;
- }
- return null;
- },
-
- lookupNamespaceURI: function lookupNamespaceURI(prefix) {
- var el = this;
- while (el) {
- var map = el._nsMap;
- if (map) {
- if (prefix in map) {
- return map[prefix];
- }
- }
- el = el.nodeType == ATTRIBUTE_NODE ? el.ownerDocument : el.parentNode;
- }
- return null;
- },
-
- isDefaultNamespace: function isDefaultNamespace(namespaceURI) {
- var prefix = this.lookupPrefix(namespaceURI);
- return prefix == null;
- }
- };
- function _xmlEncoder(c) {
- return c == '<' && '<' || c == '>' && '>' || c == '&' && '&' || c == '"' && '"' || '&#' + c.charCodeAt() + ';';
- }
- copy(NodeType, Node);
- copy(NodeType, Node.prototype);
- function _visitNode(node, callback) {
- if (callback(node)) {
- return true;
- }
- if (node = node.firstChild) {
- do {
- if (_visitNode(node, callback)) {
- return true;
- }
- } while (node = node.nextSibling);
- }
- }
- function Document() {}
- function _onAddAttribute(doc, el, newAttr) {
- doc && doc._inc++;
- var ns = newAttr.namespaceURI;
- if (ns == 'http://www.w3.org/2000/xmlns/') {
-
- el._nsMap[newAttr.prefix ? newAttr.localName : ''] = newAttr.value;
- }
- }
- function _onRemoveAttribute(doc, el, newAttr, remove) {
- doc && doc._inc++;
- var ns = newAttr.namespaceURI;
- if (ns == 'http://www.w3.org/2000/xmlns/') {
-
- delete el._nsMap[newAttr.prefix ? newAttr.localName : ''];
- }
- }
- function _onUpdateChild(doc, el, newChild) {
- if (doc && doc._inc) {
- doc._inc++;
- var cs = el.childNodes;
- if (newChild) {
- cs[cs.length++] = newChild;
- } else {
-
- var child = el.firstChild;
- var i = 0;
- while (child) {
- cs[i++] = child;
- child = child.nextSibling;
- }
- cs.length = i;
- }
- }
- }
- function _removeChild(parentNode, child) {
- var previous = child.previousSibling;
- var next = child.nextSibling;
- if (previous) {
- previous.nextSibling = next;
- } else {
- parentNode.firstChild = next;
- }
- if (next) {
- next.previousSibling = previous;
- } else {
- parentNode.lastChild = previous;
- }
- _onUpdateChild(parentNode.ownerDocument, parentNode);
- return child;
- }
- function _insertBefore(parentNode, newChild, nextChild) {
- var cp = newChild.parentNode;
- if (cp) {
- cp.removeChild(newChild);
- }
- if (newChild.nodeType === DOCUMENT_FRAGMENT_NODE) {
- var newFirst = newChild.firstChild;
- if (newFirst == null) {
- return newChild;
- }
- var newLast = newChild.lastChild;
- } else {
- newFirst = newLast = newChild;
- }
- var pre = nextChild ? nextChild.previousSibling : parentNode.lastChild;
- newFirst.previousSibling = pre;
- newLast.nextSibling = nextChild;
- if (pre) {
- pre.nextSibling = newFirst;
- } else {
- parentNode.firstChild = newFirst;
- }
- if (nextChild == null) {
- parentNode.lastChild = newLast;
- } else {
- nextChild.previousSibling = newLast;
- }
- do {
- newFirst.parentNode = parentNode;
- } while (newFirst !== newLast && (newFirst = newFirst.nextSibling));
- _onUpdateChild(parentNode.ownerDocument || parentNode, parentNode);
- if (newChild.nodeType == DOCUMENT_FRAGMENT_NODE) {
- newChild.firstChild = newChild.lastChild = null;
- }
- return newChild;
- }
- function _appendSingleChild(parentNode, newChild) {
- var cp = newChild.parentNode;
- if (cp) {
- var pre = parentNode.lastChild;
- cp.removeChild(newChild);
- var pre = parentNode.lastChild;
- }
- var pre = parentNode.lastChild;
- newChild.parentNode = parentNode;
- newChild.previousSibling = pre;
- newChild.nextSibling = null;
- if (pre) {
- pre.nextSibling = newChild;
- } else {
- parentNode.firstChild = newChild;
- }
- parentNode.lastChild = newChild;
- _onUpdateChild(parentNode.ownerDocument, parentNode, newChild);
- return newChild;
- }
- Document.prototype = {
-
- nodeName: '#document',
- nodeType: DOCUMENT_NODE,
- doctype: null,
- documentElement: null,
- _inc: 1,
- insertBefore: function insertBefore(newChild, refChild) {
-
- if (newChild.nodeType == DOCUMENT_FRAGMENT_NODE) {
- var child = newChild.firstChild;
- while (child) {
- var next = child.nextSibling;
- this.insertBefore(child, refChild);
- child = next;
- }
- return newChild;
- }
- if (this.documentElement == null && newChild.nodeType == ELEMENT_NODE) {
- this.documentElement = newChild;
- }
- return _insertBefore(this, newChild, refChild), newChild.ownerDocument = this, newChild;
- },
- removeChild: function removeChild(oldChild) {
- if (this.documentElement == oldChild) {
- this.documentElement = null;
- }
- return _removeChild(this, oldChild);
- },
-
- importNode: function importNode(importedNode, deep) {
- return _importNode(this, importedNode, deep);
- },
-
- getElementById: function getElementById(id) {
- var rtv = null;
- _visitNode(this.documentElement, function (node) {
- if (node.nodeType == ELEMENT_NODE) {
- if (node.getAttribute('id') == id) {
- rtv = node;
- return true;
- }
- }
- });
- return rtv;
- },
-
- createElement: function createElement(tagName) {
- var node = new Element();
- node.ownerDocument = this;
- node.nodeName = tagName;
- node.tagName = tagName;
- node.childNodes = new NodeList();
- var attrs = node.attributes = new NamedNodeMap();
- attrs._ownerElement = node;
- return node;
- },
- createDocumentFragment: function createDocumentFragment() {
- var node = new DocumentFragment();
- node.ownerDocument = this;
- node.childNodes = new NodeList();
- return node;
- },
- createTextNode: function createTextNode(data) {
- var node = new Text();
- node.ownerDocument = this;
- node.appendData(data);
- return node;
- },
- createComment: function createComment(data) {
- var node = new Comment();
- node.ownerDocument = this;
- node.appendData(data);
- return node;
- },
- createCDATASection: function createCDATASection(data) {
- var node = new CDATASection();
- node.ownerDocument = this;
- node.appendData(data);
- return node;
- },
- createProcessingInstruction: function createProcessingInstruction(target, data) {
- var node = new ProcessingInstruction();
- node.ownerDocument = this;
- node.tagName = node.target = target;
- node.nodeValue = node.data = data;
- return node;
- },
- createAttribute: function createAttribute(name) {
- var node = new Attr();
- node.ownerDocument = this;
- node.name = name;
- node.nodeName = name;
- node.localName = name;
- node.specified = true;
- return node;
- },
- createEntityReference: function createEntityReference(name) {
- var node = new EntityReference();
- node.ownerDocument = this;
- node.nodeName = name;
- return node;
- },
-
- createElementNS: function createElementNS(namespaceURI, qualifiedName) {
- var node = new Element();
- var pl = qualifiedName.split(':');
- var attrs = node.attributes = new NamedNodeMap();
- node.childNodes = new NodeList();
- node.ownerDocument = this;
- node.nodeName = qualifiedName;
- node.tagName = qualifiedName;
- node.namespaceURI = namespaceURI;
- if (pl.length == 2) {
- node.prefix = pl[0];
- node.localName = pl[1];
- } else {
-
- node.localName = qualifiedName;
- }
- attrs._ownerElement = node;
- return node;
- },
-
- createAttributeNS: function createAttributeNS(namespaceURI, qualifiedName) {
- var node = new Attr();
- var pl = qualifiedName.split(':');
- node.ownerDocument = this;
- node.nodeName = qualifiedName;
- node.name = qualifiedName;
- node.namespaceURI = namespaceURI;
- node.specified = true;
- if (pl.length == 2) {
- node.prefix = pl[0];
- node.localName = pl[1];
- } else {
-
- node.localName = qualifiedName;
- }
- return node;
- }
- };
- _extends(Document, Node);
- function Element() {
- this._nsMap = {};
- }
- ;
- Element.prototype = {
- nodeType: ELEMENT_NODE,
- hasAttribute: function hasAttribute(name) {
- return this.getAttributeNode(name) != null;
- },
- getAttribute: function getAttribute(name) {
- var attr = this.getAttributeNode(name);
- return attr && attr.value || '';
- },
- getAttributeNode: function getAttributeNode(name) {
- return this.attributes.getNamedItem(name);
- },
- setAttribute: function setAttribute(name, value) {
- var attr = this.ownerDocument.createAttribute(name);
- attr.value = attr.nodeValue = "" + value;
- this.setAttributeNode(attr);
- },
- removeAttribute: function removeAttribute(name) {
- var attr = this.getAttributeNode(name);
- attr && this.removeAttributeNode(attr);
- },
-
- appendChild: function appendChild(newChild) {
- if (newChild.nodeType === DOCUMENT_FRAGMENT_NODE) {
- return this.insertBefore(newChild, null);
- } else {
- return _appendSingleChild(this, newChild);
- }
- },
- setAttributeNode: function setAttributeNode(newAttr) {
- return this.attributes.setNamedItem(newAttr);
- },
- setAttributeNodeNS: function setAttributeNodeNS(newAttr) {
- return this.attributes.setNamedItemNS(newAttr);
- },
- removeAttributeNode: function removeAttributeNode(oldAttr) {
-
- return this.attributes.removeNamedItem(oldAttr.nodeName);
- },
-
- removeAttributeNS: function removeAttributeNS(namespaceURI, localName) {
- var old = this.getAttributeNodeNS(namespaceURI, localName);
- old && this.removeAttributeNode(old);
- },
- hasAttributeNS: function hasAttributeNS(namespaceURI, localName) {
- return this.getAttributeNodeNS(namespaceURI, localName) != null;
- },
- getAttributeNS: function getAttributeNS(namespaceURI, localName) {
- var attr = this.getAttributeNodeNS(namespaceURI, localName);
- return attr && attr.value || '';
- },
- setAttributeNS: function setAttributeNS(namespaceURI, qualifiedName, value) {
- var attr = this.ownerDocument.createAttributeNS(namespaceURI, qualifiedName);
- attr.value = attr.nodeValue = "" + value;
- this.setAttributeNode(attr);
- },
- getAttributeNodeNS: function getAttributeNodeNS(namespaceURI, localName) {
- return this.attributes.getNamedItemNS(namespaceURI, localName);
- },
- getElementsByTagName: function getElementsByTagName(tagName) {
- return new LiveNodeList(this, function (base) {
- var ls = [];
- _visitNode(base, function (node) {
- if (node !== base && node.nodeType == ELEMENT_NODE && (tagName === '*' || node.tagName == tagName)) {
- ls.push(node);
- }
- });
- return ls;
- });
- },
- getElementsByTagNameNS: function getElementsByTagNameNS(namespaceURI, localName) {
- return new LiveNodeList(this, function (base) {
- var ls = [];
- _visitNode(base, function (node) {
- if (node !== base && node.nodeType === ELEMENT_NODE && (namespaceURI === '*' || node.namespaceURI === namespaceURI) && (localName === '*' || node.localName == localName)) {
- ls.push(node);
- }
- });
- return ls;
- });
- }
- };
- Document.prototype.getElementsByTagName = Element.prototype.getElementsByTagName;
- Document.prototype.getElementsByTagNameNS = Element.prototype.getElementsByTagNameNS;
- _extends(Element, Node);
- function Attr() {}
- ;
- Attr.prototype.nodeType = ATTRIBUTE_NODE;
- _extends(Attr, Node);
- function CharacterData() {}
- ;
- CharacterData.prototype = {
- data: '',
- substringData: function substringData(offset, count) {
- return this.data.substring(offset, offset + count);
- },
- appendData: function appendData(text) {
- text = this.data + text;
- this.nodeValue = this.data = text;
- this.length = text.length;
- },
- insertData: function insertData(offset, text) {
- this.replaceData(offset, 0, text);
- },
- appendChild: function appendChild(newChild) {
- throw new Error(ExceptionMessage[HIERARCHY_REQUEST_ERR]);
- },
- deleteData: function deleteData(offset, count) {
- this.replaceData(offset, count, "");
- },
- replaceData: function replaceData(offset, count, text) {
- var start = this.data.substring(0, offset);
- var end = this.data.substring(offset + count);
- text = start + text + end;
- this.nodeValue = this.data = text;
- this.length = text.length;
- }
- };
- _extends(CharacterData, Node);
- function Text() {}
- ;
- Text.prototype = {
- nodeName: "#text",
- nodeType: TEXT_NODE,
- splitText: function splitText(offset) {
- var text = this.data;
- var newText = text.substring(offset);
- text = text.substring(0, offset);
- this.data = this.nodeValue = text;
- this.length = text.length;
- var newNode = this.ownerDocument.createTextNode(newText);
- if (this.parentNode) {
- this.parentNode.insertBefore(newNode, this.nextSibling);
- }
- return newNode;
- }
- };
- _extends(Text, CharacterData);
- function Comment() {}
- ;
- Comment.prototype = {
- nodeName: "#comment",
- nodeType: COMMENT_NODE
- };
- _extends(Comment, CharacterData);
- function CDATASection() {}
- ;
- CDATASection.prototype = {
- nodeName: "#cdata-section",
- nodeType: CDATA_SECTION_NODE
- };
- _extends(CDATASection, CharacterData);
- function DocumentType() {}
- ;
- DocumentType.prototype.nodeType = DOCUMENT_TYPE_NODE;
- _extends(DocumentType, Node);
- function Notation() {}
- ;
- Notation.prototype.nodeType = NOTATION_NODE;
- _extends(Notation, Node);
- function Entity() {}
- ;
- Entity.prototype.nodeType = ENTITY_NODE;
- _extends(Entity, Node);
- function EntityReference() {}
- ;
- EntityReference.prototype.nodeType = ENTITY_REFERENCE_NODE;
- _extends(EntityReference, Node);
- function DocumentFragment() {}
- ;
- DocumentFragment.prototype.nodeName = "#document-fragment";
- DocumentFragment.prototype.nodeType = DOCUMENT_FRAGMENT_NODE;
- _extends(DocumentFragment, Node);
- function ProcessingInstruction() {}
- ProcessingInstruction.prototype.nodeType = PROCESSING_INSTRUCTION_NODE;
- _extends(ProcessingInstruction, Node);
- function XMLSerializer() {}
- XMLSerializer.prototype.serializeToString = function (node, isHtml, nodeFilter) {
- return nodeSerializeToString.call(node, isHtml, nodeFilter);
- };
- Node.prototype.toString = nodeSerializeToString;
- function nodeSerializeToString(isHtml, nodeFilter) {
- var buf = [];
- var refNode = this.nodeType == 9 && this.documentElement || this;
- var prefix = refNode.prefix;
- var uri = refNode.namespaceURI;
- if (uri && prefix == null) {
-
- var prefix = refNode.lookupPrefix(uri);
- if (prefix == null) {
-
- var visibleNamespaces = [{
- namespace: uri,
- prefix: null
- }
- ];
- }
- }
- serializeToString(this, buf, isHtml, nodeFilter, visibleNamespaces);
- return buf.join('');
- }
- function needNamespaceDefine(node, isHTML, visibleNamespaces) {
- var prefix = node.prefix || '';
- var uri = node.namespaceURI;
- if (!prefix && !uri) {
- return false;
- }
- if (prefix === "xml" && uri === "http://www.w3.org/XML/1998/namespace" || uri == 'http://www.w3.org/2000/xmlns/') {
- return false;
- }
- var i = visibleNamespaces.length;
- while (i--) {
- var ns = visibleNamespaces[i];
-
- if (ns.prefix == prefix) {
- return ns.namespace != uri;
- }
- }
-
-
-
-
-
- return true;
- }
- function serializeToString(node, buf, isHTML, nodeFilter, visibleNamespaces) {
- if (nodeFilter) {
- node = nodeFilter(node);
- if (node) {
- if (typeof node == 'string') {
- buf.push(node);
- return;
- }
- } else {
- return;
- }
- }
- switch (node.nodeType) {
- case ELEMENT_NODE:
- if (!visibleNamespaces) visibleNamespaces = [];
- var startVisibleNamespaces = visibleNamespaces.length;
- var attrs = node.attributes;
- var len = attrs.length;
- var child = node.firstChild;
- var nodeName = node.tagName;
- isHTML = htmlns === node.namespaceURI || isHTML;
- buf.push('<', nodeName);
- for (var i = 0; i < len; i++) {
-
- var attr = attrs.item(i);
- if (attr.prefix == 'xmlns') {
- visibleNamespaces.push({
- prefix: attr.localName,
- namespace: attr.value
- });
- } else if (attr.nodeName == 'xmlns') {
- visibleNamespaces.push({
- prefix: '',
- namespace: attr.value
- });
- }
- }
- for (var i = 0; i < len; i++) {
- var attr = attrs.item(i);
- if (needNamespaceDefine(attr, isHTML, visibleNamespaces)) {
- var prefix = attr.prefix || '';
- var uri = attr.namespaceURI;
- var ns = prefix ? ' xmlns:' + prefix : " xmlns";
- buf.push(ns, '="', uri, '"');
- visibleNamespaces.push({
- prefix: prefix,
- namespace: uri
- });
- }
- serializeToString(attr, buf, isHTML, nodeFilter, visibleNamespaces);
- }
- if (needNamespaceDefine(node, isHTML, visibleNamespaces)) {
- var prefix = node.prefix || '';
- var uri = node.namespaceURI;
- var ns = prefix ? ' xmlns:' + prefix : " xmlns";
- buf.push(ns, '="', uri, '"');
- visibleNamespaces.push({
- prefix: prefix,
- namespace: uri
- });
- }
- if (child || isHTML && !/^(?:meta|link|img|br|hr|input)$/i.test(nodeName)) {
- buf.push('>');
- if (isHTML && /^script$/i.test(nodeName)) {
- while (child) {
- if (child.data) {
- buf.push(child.data);
- } else {
- serializeToString(child, buf, isHTML, nodeFilter, visibleNamespaces);
- }
- child = child.nextSibling;
- }
- } else {
- while (child) {
- serializeToString(child, buf, isHTML, nodeFilter, visibleNamespaces);
- child = child.nextSibling;
- }
- }
- buf.push('</', nodeName, '>');
- } else {
- buf.push('/>');
- }
-
- return;
- case DOCUMENT_NODE:
- case DOCUMENT_FRAGMENT_NODE:
- var child = node.firstChild;
- while (child) {
- serializeToString(child, buf, isHTML, nodeFilter, visibleNamespaces);
- child = child.nextSibling;
- }
- return;
- case ATTRIBUTE_NODE:
- return buf.push(' ', node.name, '="', node.value.replace(/[<&"]/g, _xmlEncoder), '"');
- case TEXT_NODE:
- return buf.push(node.data.replace(/[<&]/g, _xmlEncoder));
- case CDATA_SECTION_NODE:
- return buf.push('<![CDATA[', node.data, ']]>');
- case COMMENT_NODE:
- return buf.push("<!--", node.data, "-->");
- case DOCUMENT_TYPE_NODE:
- var pubid = node.publicId;
- var sysid = node.systemId;
- buf.push('<!DOCTYPE ', node.name);
- if (pubid) {
- buf.push(' PUBLIC "', pubid);
- if (sysid && sysid != '.') {
- buf.push('" "', sysid);
- }
- buf.push('">');
- } else if (sysid && sysid != '.') {
- buf.push(' SYSTEM "', sysid, '">');
- } else {
- var sub = node.internalSubset;
- if (sub) {
- buf.push(" [", sub, "]");
- }
- buf.push(">");
- }
- return;
- case PROCESSING_INSTRUCTION_NODE:
- return buf.push("<?", node.target, " ", node.data, "?>");
- case ENTITY_REFERENCE_NODE:
- return buf.push('&', node.nodeName, ';');
-
-
- default:
- buf.push('??', node.nodeName);
- }
- }
- function _importNode(doc, node, deep) {
- var node2;
- switch (node.nodeType) {
- case ELEMENT_NODE:
- node2 = node.cloneNode(false);
- node2.ownerDocument = doc;
-
-
-
-
-
- case DOCUMENT_FRAGMENT_NODE:
- break;
- case ATTRIBUTE_NODE:
- deep = true;
- break;
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- }
- if (!node2) {
- node2 = node.cloneNode(false);
- }
- node2.ownerDocument = doc;
- node2.parentNode = null;
- if (deep) {
- var child = node.firstChild;
- while (child) {
- node2.appendChild(_importNode(doc, child, deep));
- child = child.nextSibling;
- }
- }
- return node2;
- }
- function _cloneNode(doc, node, deep) {
- var node2 = new node.constructor();
- for (var n in node) {
- var v = node[n];
- if (_typeof(v) != 'object') {
- if (v != node2[n]) {
- node2[n] = v;
- }
- }
- }
- if (node.childNodes) {
- node2.childNodes = new NodeList();
- }
- node2.ownerDocument = doc;
- switch (node2.nodeType) {
- case ELEMENT_NODE:
- var attrs = node.attributes;
- var attrs2 = node2.attributes = new NamedNodeMap();
- var len = attrs.length;
- attrs2._ownerElement = node2;
- for (var i = 0; i < len; i++) {
- node2.setAttributeNode(_cloneNode(doc, attrs.item(i), true));
- }
- break;
- ;
- case ATTRIBUTE_NODE:
- deep = true;
- }
- if (deep) {
- var child = node.firstChild;
- while (child) {
- node2.appendChild(_cloneNode(doc, child, deep));
- child = child.nextSibling;
- }
- }
- return node2;
- }
- function __set__(object, key, value) {
- object[key] = value;
- }
- try {
- if (Object.defineProperty) {
- var getTextContent = function getTextContent(node) {
- switch (node.nodeType) {
- case ELEMENT_NODE:
- case DOCUMENT_FRAGMENT_NODE:
- var buf = [];
- node = node.firstChild;
- while (node) {
- if (node.nodeType !== 7 && node.nodeType !== 8) {
- buf.push(getTextContent(node));
- }
- node = node.nextSibling;
- }
- return buf.join('');
- default:
- return node.nodeValue;
- }
- };
- Object.defineProperty(LiveNodeList.prototype, 'length', {
- get: function get() {
- _updateLiveList(this);
- return this.$$length;
- }
- });
- Object.defineProperty(Node.prototype, 'textContent', {
- get: function get() {
- return getTextContent(this);
- },
- set: function set(data) {
- switch (this.nodeType) {
- case ELEMENT_NODE:
- case DOCUMENT_FRAGMENT_NODE:
- while (this.firstChild) {
- this.removeChild(this.firstChild);
- }
- if (data || String(data)) {
- this.appendChild(this.ownerDocument.createTextNode(data));
- }
- break;
- default:
-
- this.data = data;
- this.value = data;
- this.nodeValue = data;
- }
- }
- });
- __set__ = function __set__(object, key, value) {
-
- object['$$' + key] = value;
- };
- }
- } catch (e) {
- }
- exports.DOMImplementation = DOMImplementation;
- exports.XMLSerializer = XMLSerializer;
- },{}],44:[function(require,module,exports){
- "use strict";
- exports.entityMap = {
- lt: '<',
- gt: '>',
- amp: '&',
- quot: '"',
- apos: "'",
- Agrave: "À",
- Aacute: "Á",
- Acirc: "Â",
- Atilde: "Ã",
- Auml: "Ä",
- Aring: "Å",
- AElig: "Æ",
- Ccedil: "Ç",
- Egrave: "È",
- Eacute: "É",
- Ecirc: "Ê",
- Euml: "Ë",
- Igrave: "Ì",
- Iacute: "Í",
- Icirc: "Î",
- Iuml: "Ï",
- ETH: "Ð",
- Ntilde: "Ñ",
- Ograve: "Ò",
- Oacute: "Ó",
- Ocirc: "Ô",
- Otilde: "Õ",
- Ouml: "Ö",
- Oslash: "Ø",
- Ugrave: "Ù",
- Uacute: "Ú",
- Ucirc: "Û",
- Uuml: "Ü",
- Yacute: "Ý",
- THORN: "Þ",
- szlig: "ß",
- agrave: "à",
- aacute: "á",
- acirc: "â",
- atilde: "ã",
- auml: "ä",
- aring: "å",
- aelig: "æ",
- ccedil: "ç",
- egrave: "è",
- eacute: "é",
- ecirc: "ê",
- euml: "ë",
- igrave: "ì",
- iacute: "í",
- icirc: "î",
- iuml: "ï",
- eth: "ð",
- ntilde: "ñ",
- ograve: "ò",
- oacute: "ó",
- ocirc: "ô",
- otilde: "õ",
- ouml: "ö",
- oslash: "ø",
- ugrave: "ù",
- uacute: "ú",
- ucirc: "û",
- uuml: "ü",
- yacute: "ý",
- thorn: "þ",
- yuml: "ÿ",
- nbsp: " ",
- iexcl: "¡",
- cent: "¢",
- pound: "£",
- curren: "¤",
- yen: "¥",
- brvbar: "¦",
- sect: "§",
- uml: "¨",
- copy: "©",
- ordf: "ª",
- laquo: "«",
- not: "¬",
- shy: "",
- reg: "®",
- macr: "¯",
- deg: "°",
- plusmn: "±",
- sup2: "²",
- sup3: "³",
- acute: "´",
- micro: "µ",
- para: "¶",
- middot: "·",
- cedil: "¸",
- sup1: "¹",
- ordm: "º",
- raquo: "»",
- frac14: "¼",
- frac12: "½",
- frac34: "¾",
- iquest: "¿",
- times: "×",
- divide: "÷",
- forall: "∀",
- part: "∂",
- exist: "∃",
- empty: "∅",
- nabla: "∇",
- isin: "∈",
- notin: "∉",
- ni: "∋",
- prod: "∏",
- sum: "∑",
- minus: "−",
- lowast: "∗",
- radic: "√",
- prop: "∝",
- infin: "∞",
- ang: "∠",
- and: "∧",
- or: "∨",
- cap: "∩",
- cup: "∪",
- 'int': "∫",
- there4: "∴",
- sim: "∼",
- cong: "≅",
- asymp: "≈",
- ne: "≠",
- equiv: "≡",
- le: "≤",
- ge: "≥",
- sub: "⊂",
- sup: "⊃",
- nsub: "⊄",
- sube: "⊆",
- supe: "⊇",
- oplus: "⊕",
- otimes: "⊗",
- perp: "⊥",
- sdot: "⋅",
- Alpha: "Α",
- Beta: "Β",
- Gamma: "Γ",
- Delta: "Δ",
- Epsilon: "Ε",
- Zeta: "Ζ",
- Eta: "Η",
- Theta: "Θ",
- Iota: "Ι",
- Kappa: "Κ",
- Lambda: "Λ",
- Mu: "Μ",
- Nu: "Ν",
- Xi: "Ξ",
- Omicron: "Ο",
- Pi: "Π",
- Rho: "Ρ",
- Sigma: "Σ",
- Tau: "Τ",
- Upsilon: "Υ",
- Phi: "Φ",
- Chi: "Χ",
- Psi: "Ψ",
- Omega: "Ω",
- alpha: "α",
- beta: "β",
- gamma: "γ",
- delta: "δ",
- epsilon: "ε",
- zeta: "ζ",
- eta: "η",
- theta: "θ",
- iota: "ι",
- kappa: "κ",
- lambda: "λ",
- mu: "μ",
- nu: "ν",
- xi: "ξ",
- omicron: "ο",
- pi: "π",
- rho: "ρ",
- sigmaf: "ς",
- sigma: "σ",
- tau: "τ",
- upsilon: "υ",
- phi: "φ",
- chi: "χ",
- psi: "ψ",
- omega: "ω",
- thetasym: "ϑ",
- upsih: "ϒ",
- piv: "ϖ",
- OElig: "Œ",
- oelig: "œ",
- Scaron: "Š",
- scaron: "š",
- Yuml: "Ÿ",
- fnof: "ƒ",
- circ: "ˆ",
- tilde: "˜",
- ensp: " ",
- emsp: " ",
- thinsp: " ",
- zwnj: "",
- zwj: "",
- lrm: "",
- rlm: "",
- ndash: "–",
- mdash: "—",
- lsquo: "‘",
- rsquo: "’",
- sbquo: "‚",
- ldquo: "“",
- rdquo: "”",
- bdquo: "„",
- dagger: "†",
- Dagger: "‡",
- bull: "•",
- hellip: "…",
- permil: "‰",
- prime: "′",
- Prime: "″",
- lsaquo: "‹",
- rsaquo: "›",
- oline: "‾",
- euro: "€",
- trade: "™",
- larr: "←",
- uarr: "↑",
- rarr: "→",
- darr: "↓",
- harr: "↔",
- crarr: "↵",
- lceil: "⌈",
- rceil: "⌉",
- lfloor: "⌊",
- rfloor: "⌋",
- loz: "◊",
- spades: "♠",
- clubs: "♣",
- hearts: "♥",
- diams: "♦"
- };
- },{}],45:[function(require,module,exports){
- "use strict";
- var nameStartChar = /[A-Z_a-z\xC0-\xD6\xD8-\xF6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]/;
- var nameChar = new RegExp("[\\-\\.0-9" + nameStartChar.source.slice(1, -1) + "\\u00B7\\u0300-\\u036F\\u203F-\\u2040]");
- var tagNamePattern = new RegExp('^' + nameStartChar.source + nameChar.source + '*(?:\:' + nameStartChar.source + nameChar.source + '*)?$');
- var S_TAG = 0;
- var S_ATTR = 1;
- var S_ATTR_SPACE = 2;
- var S_EQ = 3;
- var S_ATTR_NOQUOT_VALUE = 4;
- var S_ATTR_END = 5;
- var S_TAG_SPACE = 6;
- var S_TAG_CLOSE = 7;
- function XMLReader() {}
- XMLReader.prototype = {
- parse: function parse(source, defaultNSMap, entityMap) {
- var domBuilder = this.domBuilder;
- domBuilder.startDocument();
- _copy(defaultNSMap, defaultNSMap = {});
- _parse(source, defaultNSMap, entityMap, domBuilder, this.errorHandler);
- domBuilder.endDocument();
- }
- };
- function _parse(source, defaultNSMapCopy, entityMap, domBuilder, errorHandler) {
- function fixedFromCharCode(code) {
-
-
- if (code > 0xffff) {
- code -= 0x10000;
- var surrogate1 = 0xd800 + (code >> 10),
- surrogate2 = 0xdc00 + (code & 0x3ff);
- return String.fromCharCode(surrogate1, surrogate2);
- } else {
- return String.fromCharCode(code);
- }
- }
- function entityReplacer(a) {
- var k = a.slice(1, -1);
- if (k in entityMap) {
- return entityMap[k];
- } else if (k.charAt(0) === '#') {
- return fixedFromCharCode(parseInt(k.substr(1).replace('x', '0x')));
- } else {
- errorHandler.error('entity not found:' + a);
- return a;
- }
- }
- function appendText(end) {
-
- if (end > start) {
- var xt = source.substring(start, end).replace(/&#?\w+;/g, entityReplacer);
- locator && position(start);
- domBuilder.characters(xt, 0, end - start);
- start = end;
- }
- }
- function position(p, m) {
- while (p >= lineEnd && (m = linePattern.exec(source))) {
- lineStart = m.index;
- lineEnd = lineStart + m[0].length;
- locator.lineNumber++;
- }
- locator.columnNumber = p - lineStart + 1;
- }
- var lineStart = 0;
- var lineEnd = 0;
- var linePattern = /.*(?:\r\n?|\n)|.*$/g;
- var locator = domBuilder.locator;
- var parseStack = [{
- currentNSMap: defaultNSMapCopy
- }];
- var closeMap = {};
- var start = 0;
- while (true) {
- try {
- var tagStart = source.indexOf('<', start);
- if (tagStart < 0) {
- if (!source.substr(start).match(/^\s*$/)) {
- var doc = domBuilder.doc;
- var text = doc.createTextNode(source.substr(start));
- doc.appendChild(text);
- domBuilder.currentElement = text;
- }
- return;
- }
- if (tagStart > start) {
- appendText(tagStart);
- }
- switch (source.charAt(tagStart + 1)) {
- case '/':
- var end = source.indexOf('>', tagStart + 3);
- var tagName = source.substring(tagStart + 2, end);
- var config = parseStack.pop();
- if (end < 0) {
- tagName = source.substring(tagStart + 2).replace(/[\s<].*/, '');
- errorHandler.error("end tag name: " + tagName + ' is not complete:' + config.tagName);
- end = tagStart + 1 + tagName.length;
- } else if (tagName.match(/\s</)) {
- tagName = tagName.replace(/[\s<].*/, '');
- errorHandler.error("end tag name: " + tagName + ' maybe not complete');
- end = tagStart + 1 + tagName.length;
- }
-
- var localNSMap = config.localNSMap;
- var endMatch = config.tagName == tagName;
- var endIgnoreCaseMach = endMatch || config.tagName && config.tagName.toLowerCase() == tagName.toLowerCase();
- if (endIgnoreCaseMach) {
- domBuilder.endElement(config.uri, config.localName, tagName);
- if (localNSMap) {
- for (var prefix in localNSMap) {
- domBuilder.endPrefixMapping(prefix);
- }
- }
- if (!endMatch) {
- errorHandler.fatalError("end tag name: " + tagName + ' is not match the current start tagName:' + config.tagName);
- }
- } else {
- parseStack.push(config);
- }
- end++;
- break;
-
- case '?':
-
- locator && position(tagStart);
- end = parseInstruction(source, tagStart, domBuilder);
- break;
- case '!':
-
- locator && position(tagStart);
- end = parseDCC(source, tagStart, domBuilder, errorHandler);
- break;
- default:
- locator && position(tagStart);
- var el = new ElementAttributes();
- var currentNSMap = parseStack[parseStack.length - 1].currentNSMap;
- var end = parseElementStartPart(source, tagStart, el, currentNSMap, entityReplacer, errorHandler);
- var len = el.length;
- if (!el.closed && fixSelfClosed(source, end, el.tagName, closeMap)) {
- el.closed = true;
- if (!entityMap.nbsp) {
- errorHandler.warning('unclosed xml attribute');
- }
- }
- if (locator && len) {
- var locator2 = copyLocator(locator, {});
- for (var i = 0; i < len; i++) {
- var a = el[i];
- position(a.offset);
- a.locator = copyLocator(locator, {});
- }
- domBuilder.locator = locator2;
- if (appendElement(el, domBuilder, currentNSMap)) {
- parseStack.push(el);
- }
- domBuilder.locator = locator;
- } else {
- if (appendElement(el, domBuilder, currentNSMap)) {
- parseStack.push(el);
- }
- }
- if (el.uri === 'http://www.w3.org/1999/xhtml' && !el.closed) {
- end = parseHtmlSpecialContent(source, end, el.tagName, entityReplacer, domBuilder);
- } else {
- end++;
- }
- }
- } catch (e) {
- errorHandler.error('element parse error: ' + e);
- end = -1;
- }
- if (end > start) {
- start = end;
- } else {
-
- appendText(Math.max(tagStart, start) + 1);
- }
- }
- }
- function copyLocator(f, t) {
- t.lineNumber = f.lineNumber;
- t.columnNumber = f.columnNumber;
- return t;
- }
- function parseElementStartPart(source, start, el, currentNSMap, entityReplacer, errorHandler) {
- var attrName;
- var value;
- var p = ++start;
- var s = S_TAG;
- while (true) {
- var c = source.charAt(p);
- switch (c) {
- case '=':
- if (s === S_ATTR) {
-
- attrName = source.slice(start, p);
- s = S_EQ;
- } else if (s === S_ATTR_SPACE) {
- s = S_EQ;
- } else {
-
- throw new Error('attribute equal must after attrName');
- }
- break;
- case '\'':
- case '"':
- if (s === S_EQ || s === S_ATTR
- ) {
-
- if (s === S_ATTR) {
- errorHandler.warning('attribute value must after "="');
- attrName = source.slice(start, p);
- }
- start = p + 1;
- p = source.indexOf(c, start);
- if (p > 0) {
- value = source.slice(start, p).replace(/&#?\w+;/g, entityReplacer);
- el.add(attrName, value, start - 1);
- s = S_ATTR_END;
- } else {
-
- throw new Error('attribute value no end \'' + c + '\' match');
- }
- } else if (s == S_ATTR_NOQUOT_VALUE) {
- value = source.slice(start, p).replace(/&#?\w+;/g, entityReplacer);
- el.add(attrName, value, start);
- errorHandler.warning('attribute "' + attrName + '" missed start quot(' + c + ')!!');
- start = p + 1;
- s = S_ATTR_END;
- } else {
-
- throw new Error('attribute value must after "="');
- }
- break;
- case '/':
- switch (s) {
- case S_TAG:
- el.setTagName(source.slice(start, p));
- case S_ATTR_END:
- case S_TAG_SPACE:
- case S_TAG_CLOSE:
- s = S_TAG_CLOSE;
- el.closed = true;
- case S_ATTR_NOQUOT_VALUE:
- case S_ATTR:
- case S_ATTR_SPACE:
- break;
-
- default:
- throw new Error("attribute invalid close char('/')");
- }
- break;
- case '':
-
-
- errorHandler.error('unexpected end of input');
- if (s == S_TAG) {
- el.setTagName(source.slice(start, p));
- }
- return p;
- case '>':
- switch (s) {
- case S_TAG:
- el.setTagName(source.slice(start, p));
- case S_ATTR_END:
- case S_TAG_SPACE:
- case S_TAG_CLOSE:
- break;
-
- case S_ATTR_NOQUOT_VALUE:
- case S_ATTR:
- value = source.slice(start, p);
- if (value.slice(-1) === '/') {
- el.closed = true;
- value = value.slice(0, -1);
- }
- case S_ATTR_SPACE:
- if (s === S_ATTR_SPACE) {
- value = attrName;
- }
- if (s == S_ATTR_NOQUOT_VALUE) {
- errorHandler.warning('attribute "' + value + '" missed quot(")!!');
- el.add(attrName, value.replace(/&#?\w+;/g, entityReplacer), start);
- } else {
- if (currentNSMap[''] !== 'http://www.w3.org/1999/xhtml' || !value.match(/^(?:disabled|checked|selected)$/i)) {
- errorHandler.warning('attribute "' + value + '" missed value!! "' + value + '" instead!!');
- }
- el.add(value, value, start);
- }
- break;
- case S_EQ:
- throw new Error('attribute value missed!!');
- }
- return p;
-
- case "\x80":
- c = ' ';
- default:
- if (c <= ' ') {
-
- switch (s) {
- case S_TAG:
- el.setTagName(source.slice(start, p));
- s = S_TAG_SPACE;
- break;
- case S_ATTR:
- attrName = source.slice(start, p);
- s = S_ATTR_SPACE;
- break;
- case S_ATTR_NOQUOT_VALUE:
- var value = source.slice(start, p).replace(/&#?\w+;/g, entityReplacer);
- errorHandler.warning('attribute "' + value + '" missed quot(")!!');
- el.add(attrName, value, start);
- case S_ATTR_END:
- s = S_TAG_SPACE;
- break;
-
-
-
-
-
-
- }
- } else {
-
-
-
- switch (s) {
-
-
-
- case S_ATTR_SPACE:
- var tagName = el.tagName;
- if (currentNSMap[''] !== 'http://www.w3.org/1999/xhtml' || !attrName.match(/^(?:disabled|checked|selected)$/i)) {
- errorHandler.warning('attribute "' + attrName + '" missed value!! "' + attrName + '" instead2!!');
- }
- el.add(attrName, attrName, start);
- start = p;
- s = S_ATTR;
- break;
- case S_ATTR_END:
- errorHandler.warning('attribute space is required"' + attrName + '"!!');
- case S_TAG_SPACE:
- s = S_ATTR;
- start = p;
- break;
- case S_EQ:
- s = S_ATTR_NOQUOT_VALUE;
- start = p;
- break;
- case S_TAG_CLOSE:
- throw new Error("elements closed character '/' and '>' must be connected to");
- }
- }
- }
-
- p++;
- }
- }
- function appendElement(el, domBuilder, currentNSMap) {
- var tagName = el.tagName;
- var localNSMap = null;
- var i = el.length;
- while (i--) {
- var a = el[i];
- var qName = a.qName;
- var value = a.value;
- var nsp = qName.indexOf(':');
- if (nsp > 0) {
- var prefix = a.prefix = qName.slice(0, nsp);
- var localName = qName.slice(nsp + 1);
- var nsPrefix = prefix === 'xmlns' && localName;
- } else {
- localName = qName;
- prefix = null;
- nsPrefix = qName === 'xmlns' && '';
- }
- a.localName = localName;
- if (nsPrefix !== false) {
-
- if (localNSMap == null) {
- localNSMap = {};
- _copy(currentNSMap, currentNSMap = {});
- }
- currentNSMap[nsPrefix] = localNSMap[nsPrefix] = value;
- a.uri = 'http://www.w3.org/2000/xmlns/';
- domBuilder.startPrefixMapping(nsPrefix, value);
- }
- }
- var i = el.length;
- while (i--) {
- a = el[i];
- var prefix = a.prefix;
- if (prefix) {
-
- if (prefix === 'xml') {
- a.uri = 'http://www.w3.org/XML/1998/namespace';
- }
- if (prefix !== 'xmlns') {
- a.uri = currentNSMap[prefix || ''];
- }
- }
- }
- var nsp = tagName.indexOf(':');
- if (nsp > 0) {
- prefix = el.prefix = tagName.slice(0, nsp);
- localName = el.localName = tagName.slice(nsp + 1);
- } else {
- prefix = null;
- localName = el.localName = tagName;
- }
- var ns = el.uri = currentNSMap[prefix || ''];
- domBuilder.startElement(ns, localName, tagName, el);
-
- if (el.closed) {
- domBuilder.endElement(ns, localName, tagName);
- if (localNSMap) {
- for (prefix in localNSMap) {
- domBuilder.endPrefixMapping(prefix);
- }
- }
- } else {
- el.currentNSMap = currentNSMap;
- el.localNSMap = localNSMap;
- return true;
- }
- }
- function parseHtmlSpecialContent(source, elStartEnd, tagName, entityReplacer, domBuilder) {
- if (/^(?:script|textarea)$/i.test(tagName)) {
- var elEndStart = source.indexOf('</' + tagName + '>', elStartEnd);
- var text = source.substring(elStartEnd + 1, elEndStart);
- if (/[&<]/.test(text)) {
- if (/^script$/i.test(tagName)) {
-
-
- domBuilder.characters(text, 0, text.length);
- return elEndStart;
- }
- text = text.replace(/&#?\w+;/g, entityReplacer);
- domBuilder.characters(text, 0, text.length);
- return elEndStart;
- }
- }
- return elStartEnd + 1;
- }
- function fixSelfClosed(source, elStartEnd, tagName, closeMap) {
-
- var pos = closeMap[tagName];
- if (pos == null) {
-
- pos = source.lastIndexOf('</' + tagName + '>');
- if (pos < elStartEnd) {
-
- pos = source.lastIndexOf('</' + tagName);
- }
- closeMap[tagName] = pos;
- }
- return pos < elStartEnd;
- }
- function _copy(source, target) {
- for (var n in source) {
- target[n] = source[n];
- }
- }
- function parseDCC(source, start, domBuilder, errorHandler) {
-
- var next = source.charAt(start + 2);
- switch (next) {
- case '-':
- if (source.charAt(start + 3) === '-') {
- var end = source.indexOf('-->', start + 4);
- if (end > start) {
- domBuilder.comment(source, start + 4, end - start - 4);
- return end + 3;
- } else {
- errorHandler.error("Unclosed comment");
- return -1;
- }
- } else {
-
- return -1;
- }
- default:
- if (source.substr(start + 3, 6) == 'CDATA[') {
- var end = source.indexOf(']]>', start + 9);
- domBuilder.startCDATA();
- domBuilder.characters(source, start + 9, end - start - 9);
- domBuilder.endCDATA();
- return end + 3;
- }
-
- var matchs = split(source, start);
- var len = matchs.length;
- if (len > 1 && /!doctype/i.test(matchs[0][0])) {
- var name = matchs[1][0];
- var pubid = len > 3 && /^public$/i.test(matchs[2][0]) && matchs[3][0];
- var sysid = len > 4 && matchs[4][0];
- var lastMatch = matchs[len - 1];
- domBuilder.startDTD(name, pubid && pubid.replace(/^(['"])(.*?)\1$/, '$2'), sysid && sysid.replace(/^(['"])(.*?)\1$/, '$2'));
- domBuilder.endDTD();
- return lastMatch.index + lastMatch[0].length;
- }
- }
- return -1;
- }
- function parseInstruction(source, start, domBuilder) {
- var end = source.indexOf('?>', start);
- if (end) {
- var match = source.substring(start, end).match(/^<\?(\S*)\s*([\s\S]*?)\s*$/);
- if (match) {
- var len = match[0].length;
- domBuilder.processingInstruction(match[1], match[2]);
- return end + 2;
- } else {
-
- return -1;
- }
- }
- return -1;
- }
- function ElementAttributes(source) {}
- ElementAttributes.prototype = {
- setTagName: function setTagName(tagName) {
- if (!tagNamePattern.test(tagName)) {
- throw new Error('invalid tagName:' + tagName);
- }
- this.tagName = tagName;
- },
- add: function add(qName, value, offset) {
- if (!tagNamePattern.test(qName)) {
- throw new Error('invalid attribute:' + qName);
- }
- this[this.length++] = {
- qName: qName,
- value: value,
- offset: offset
- };
- },
- length: 0,
- getLocalName: function getLocalName(i) {
- return this[i].localName;
- },
- getLocator: function getLocator(i) {
- return this[i].locator;
- },
- getQName: function getQName(i) {
- return this[i].qName;
- },
- getURI: function getURI(i) {
- return this[i].uri;
- },
- getValue: function getValue(i) {
- return this[i].value;
- }
-
-
-
-
-
-
-
-
-
- };
- function split(source, start) {
- var match;
- var buf = [];
- var reg = /'[^']+'|"[^"]+"|[^\s<>\/=]+=?|(\/?\s*>|<)/g;
- reg.lastIndex = start;
- reg.exec(source);
- while (match = reg.exec(source)) {
- buf.push(match);
- if (match[1]) return buf;
- }
- }
- exports.XMLReader = XMLReader;
- },{}]},{},[4]);
|