From 0ea93ddbc8396f93b813a4b4421df3cfee1d7d46 Mon Sep 17 00:00:00 2001 From: iGor milhit Date: Wed, 23 Oct 2024 16:26:51 +0200 Subject: [PATCH] =?UTF-8?q?polycopi=C3=A9:=20prepare=20la=20version=20d'au?= =?UTF-8?q?tomne=202024?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Mets à jour les captures d'écran pour Zotero 7 et pour harmoniser les couleurs. - Mets à jour la mise en forme et le modèle depuis le projet bunige-pagedjs-template. - Ajoute les scripts JS qu'utilise le modèle. - Remplace la base de donnée bibliographique au format BibLaTeX par celle au format CSL (JSON). - Ajoute le dossier static qui était manquant, depuis le projet bunige-pagedjs-template. Co-Authored-by: iGor milhit --- .gitignore | 3 +- README.md | 25 +- déroulé.md | 10 +- sources/medias/better-bibtex-a-jour.png | Bin 234520 -> 26655 bytes sources/medias/install-add-on.png | Bin 32717 -> 21542 bytes sources/medias/menu-outils.png | Bin 36898 -> 20348 bytes sources/medias/texmaker-biber.png | Bin 35416 -> 53374 bytes sources/polycopié/paged.polyfill.js | 33251 ++++++++++++++++ sources/polycopié/polycopié.css | 154 - sources/polycopié/polycopié.md | 205 +- sources/polycopié/references-support.bib | 150 - sources/polycopié/references.json | 13 + sources/polycopié/reload-in-place.js | 117 + .../polycopié/static/bibliotheque-logo.svg | 210 + sources/polycopié/static/by-sa.svg | 199 + sources/polycopié/style.css | 239 + sources/polycopié/template.html | 14 +- 17 files changed, 34112 insertions(+), 478 deletions(-) create mode 100644 sources/polycopié/paged.polyfill.js delete mode 100644 sources/polycopié/polycopié.css delete mode 100644 sources/polycopié/references-support.bib create mode 100644 sources/polycopié/references.json create mode 100644 sources/polycopié/reload-in-place.js create mode 100644 sources/polycopié/static/bibliotheque-logo.svg create mode 100644 sources/polycopié/static/by-sa.svg create mode 100644 sources/polycopié/style.css diff --git a/.gitignore b/.gitignore index b4c43ee..50ebc3e 100644 --- a/.gitignore +++ b/.gitignore @@ -1,6 +1,7 @@ *.pdf -policopié.html +polycopié.html test.html +watched-files.txt # Created by https://www.toptal.com/developers/gitignore/api/latex # Edit at https://www.toptal.com/developers/gitignore?templates=latex diff --git a/README.md b/README.md index 79ad9b0..6be838e 100644 --- a/README.md +++ b/README.md @@ -10,7 +10,7 @@ tags: [README, documentation, latex, rdv-info] Ce répertoire contient les sources pour le *Rendez-vous de l'info* sur les citations et les références bibliographiques avec LaTeX. Il contient : -- La source en markdown pour le support de cours (`sources/policopié/`). +- La source en markdown pour le support de cours (`sources/polycopié/`). - Des exemples de fichiers `.tex` (`exercice/exercice.tex`). - Un export de collection Zotero au format biblatex (`exercice/references-exercices.bib`). @@ -42,8 +42,8 @@ Avec cet outil, il est possible de définir les styles des éléments dans le PD au moyen de règles CSS (voir [paged.js][6]). Dans le dossier `sources/polycopié/` se trouvent un `template.html` utilisé par `pandoc` pour produire un fichier HTML avec les classes et les identifiants désirés. Le -fichier `polycopié.css` contient pour sa part la mise en forme permettant -d'obtenir un fichier suivant en bonne partie la charte de l'UNIGE. +fichier `style.css` contient pour sa part la mise en forme permettant d'obtenir +un fichier suivant en bonne partie la charte de l'UNIGE. Pour pouvoir utiliser `pagedjs`, il faut avoir installé sur sa machine les paquets `npm` suivants : @@ -52,35 +52,36 @@ paquets `npm` suivants : npm install -g puppeteer pagedjs pagedjs-cli ``` - Pour obtenir un fichier HTML, qui peut être ensuite imprimé au format PDF : ```bash cd sources/polycopié/ pandoc --citeproc --to=html \ - --template=template.html --css=polycopié.css \ + --template=template.html --css=style.css \ --output=polycopié.html polycopié.md ``` Puis, lancer un server web local depuis la racine du projet, par exemple avec `python -m http.server` et charger le fichier `polycopié.html` dans un navigateur web, de préférence Chromium (ou Google Chrome), car la gestion des -liens est mieux supportée. +liens est mieux supportée. Un fois le fichier chargé, il faut utiliser la +fonction d'impression du navigateur, au format PDF. ### Avec LaTeX L'usage de LaTeX suppose une distribution LaTeX. Le résultat obtenu n'est pas -adapté à la charte de l'UNIGE. +adapté à la charte de l'UNIGE, et n'est pas même optimal. Pour convertir le support de cours (`polycopié.md`) au format PDF, il faut utiliser la commande suivante : diff --git a/déroulé.md b/déroulé.md index 6c0a1a9..ab37025 100644 --- a/déroulé.md +++ b/déroulé.md @@ -7,12 +7,12 @@ tags: [latex, déroulé, rdv-info] ## Vérifier -- Avoir un dossier de travail avec les fichiers : +- [ ] Avoir un dossier de travail avec les fichiers : - `exercice.tex`. - `references-exercice.bib` -- Que la compilation rapide fonctionne soit avec PdfLaTeX ou XeLaTeX. -- Que BibLaTeX soit sur `bibtex %`. -- Imprimer le polycopié et la *cheatsheet*. +- [ ] Que la compilation rapide fonctionne soit avec PdfLaTeX ou XeLaTeX. +- [ ] Que BibLaTeX soit sur `bibtex %`. +- [ ] Imprimer le polycopié et la *cheatsheet*. ## Déroulé @@ -45,7 +45,7 @@ tags: [latex, déroulé, rdv-info] 1. Soit, avec l'assistant XeLaTeX, Biber, XeLaTeX 2x et affichage du PDF. 1. Ouvrir le fichier `exercice.tex` avec Texmaker. -1. Monter : +1. Montrer : 1. Commentaires, dont l'insertion de la bibliographie. 1. Préambule avec les paquets et les options utilisés. 1. Dont biblatex, ses options et la base de donnée de références. diff --git a/sources/medias/better-bibtex-a-jour.png b/sources/medias/better-bibtex-a-jour.png index ef97b830bc90a66895ca9e3d36a431430a4d9de3..4a118d37543a78b87f1e5e90006f9c48494853c5 100644 GIT binary patch literal 26655 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 literal 234520 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 z%0A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

iocLuDK%8Tr!%7p#{tt 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%0DY)1U6fjq=1b^#RJDoYt#c$W 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 z zwY+}=>j=Sob`;8Jxl`bOT)TJA9SBlg#SLO-N8SxfSo0S_Xrq*p6?K5{8U28W3mbC9_o1bY0ootPWCK{q`Ghd1MZPxbq z$QbYnh0e!goyFe#z36-6emyq3QBZ5!!=WY+c(2Q`W@Clx9ZGcT_`-nEC3&;J*iae~ z8mP5}G8D)r>^QVxv%44tBQ&jX#YJGW-_Pi6zPBrmfL)yQjokSBEYu=3PZ>7)!WUk| ze+V_Uu28(Kk)0im!lmrQe5^8o&N2o z8+jrh>;EU{&-DF|V>Uq&|7HZc{gi^Z1rYqBO*f!X?*7H^maz;pqwffR(K{Q*dh5rj zC3OvZ#ngN{@*p6STMp@u7DQ2dd@$B_-YRc;S~ul4lFj1ai9YKhEjT|P&bB^?6Zc?> zf_f0(EUTh(2}W=+2@r6>JV}|Jda0X^2Gvf#w&9Q?n&}VNiGkvhi>Xle5!pf!<3g$8 z96iawxpiMH+kYtv`ooVtg{`=;JUo@VUr#96kNb&l?!95|rAuu8)lo*?8|01}1%Kr~ zfRFC&&a5l6>%3HVgVMCuIJ;h=#kF?Egt@R8;ipcpq!VqhX|uc0*FCfL%UiDB!3x%| zGUmJgy?*YQL-*)9cCXxbZ>M;*eqiw4IwbZnFljdt7IPh#Hd z{StaS^H^&69d+|C$+EkHg|%AUVRA4On-kt?xk4{PR(Rr%O9uPW4}nE1ySl%t+8vfUk{_Vg$&%- zby_v*M7*d2i0{)L2r*jPG2Cnj{U~C-TRRcKp>Z?q{6j^rx5KuXLoP^OThlW?rgT}a zM8b{va^A>g!()Xuu8pF47uw{y#>H16q)#gQH@yw&`nZhvg~FW$E9ciYeLLmbTsR=# zrTSdG-fi-6g~Y*hBFb9G#`J#BGbNlohND$oZ+;__FICMtH0`M+ZVr;H{-)$5=ls6I(go)l@X+dO z?Sv<8ictM4{?E_OGvfekC{8`6T zKo*aiWjDKb0F&+nx?zL31M$CC2*f8mn2paz1l-%?n4Kx)IuTB`n!)!!Hs_KM`%o`H zsNqQlhUx&2>{vewCLhl7dyuJZmr_4j5Zbee9qFT8|3*)}+*E*eP=7B`NV`;SbK!vM97 zcBRoCc*is4XxlBy(zPY?3aL!4P#clY3|)1u&ER?9FUfDH1~sibvO*E8zn2iDmu=jy zdnoM(I!*#}pCKQ-A4HmV-UD?nN3yuy{pxW8(Rc7mHg_6RC!lSA;biA6Xxv+8eZ+%3 z!f~~qm%Z&bgq~75&&{-NzXCs!rF?UGdx~rNMLiWOn*10t73a@v4r zHIK#D;d8cyOehv+hBpQi?*l@b%UxU3$$%=qU04=7>pMBypenWbThm>Gni;M>c?!`$ zlrNj7(a9_mE1^%kM5|(#TKo&Q*Gv&G!u}hUK`;r6>hmYvj`g^~TfqZjZLj0frc9Q$ zQLRpSSN6{}MCwdh^D*MTIz_w`aCoI3TX>?7d*gY(n#{5@t< zSq+oin{?A*mMZYTgZ=#szC@*tD^JEi?`vJp$61Xr&(ZnC*n3s!s=dmn6Cq3^Q*tGI z8@FCgT5>nPfj!lvGJ;PEAN5MD1|fz3Db(c_L_WLS_&(!=Cx;KU9e=+{?{aG)0_?Wb zJ}kT_P*>0ly_wEB7lJNI%eb325q8sb?U_q{&h`$b=lr0{2sdYtE8yk&RmXMX;krxT z7_GO~<)Buv;t@I4f}T@yLHj9T$;-^2seE_uS2Y7XotT~PAh+cbyXAytElo+x*nytt z%WBi$iOL6GxV(|K9D6 z538o~$ zs8}xR(>)5zi)qu=qY>%&>^XkuH&gU_}9pek6lNey~s8v+(RbF@-0QiJ0 zc%NvLFPIRh7a?L*#WTck;&5srm{Gz9juh%(pHHIcZE-Z42;j2CPn%5d9fXPHT(t?_ zp^a7_>M}4X7Kwp{#VQCW5?vh?q=QF))1@7h$OKx}uD?xYe%k_S?_zWe16X3vIey zEm13q>+C8uLn#Xpj~itV$%h3p^Ju*8naB`AGmQH;|NY-p@xL4K5`;I54x zE@1L3{5m{yHT&)rcyO~X^5yhzP%akwJpy>jPPqNyWc7b%`MPGb*0p7eH}gA<8xBVE z&TsXT>*!EKJu;7(ue5kN9D_mQfA5{bB|9Ka&x;S&YM}9wIvqfDLEUqrmnOAOrSb|+ zyu0cNh?CY0keU&Dxr11-h+lKjuR!RpCGsP1u#)lW%}{6Q#hnnOv8Mp#WvR73`k zgM36m%U9@9GI_V*jQ-;C0&02oQq~yXYmKW{KOBv%Rev>@$dm)d_U-zpv%b(Sa-`!P zl0L+|ZhwcBVFyM5GEvJc&?*`V6M;)?wn@tc3 zQ9&y>0w+6l2}~sS;q5fGCg5}~ngFy@Mm+D?y8V_A&2hIgPw&Ez_DKoJF$(s|5bZOO z>`TdcvG4iOGiP+|&le60mNpkRK)w2gEB5mGTd6ab)DGX}f(_}{Hscwnb-p`ptdLdQ z<7cGz5+sboxB1u4_)2%n#BNeTr6u`oywzeVN1RHZ=J~_UKXd8otqz_gE2%$SN$j|A z8UH>HS6`9aQgx-w#yba3h>Kou4DvVD-lU zds~i(hP7+rJKwQHp<2{#fSsN%+UvJ0EyR7=^U0+=9Z&SGTk6{y8hln(Xbg*OqJ++B z83ir&cURdO^fD`#7s{6xjw=`Yv*!LsZ}TMqy#+(;k@W6W=Au%5ow$r_^YJO#KP z=rivTz}1<*1_+_29%t7px}zkPRRtH^&Mk~R=Ht{10yt+y<#FeN;MO?LR>9g7oZP5i%%-D%~I=vvjC z?>iN;J(IX{I{RoF0c}vX@pPs8$0m2d2pT)bfke37S!R#COysTRsM2B{v1gm3;JAGH z-emx$R->={9gS#HO{bhieopcaVq#NP0QZkX;k+IOUG?9sste9Je(Fb8a&cy34)nBKWONDE@pEN~v=k^<&dyc!=u_v5d zc0Ji3VSXP9YbSZmY2VI!k8q9fdwPPIdK7P!0O+Hi4*!cH6{o#EhARAYWBPvnL`AEvX9UN3xt=ZHC`*A*{OtMpcu z$cVm)6DozYS*PZY2qp5RXgY~Q%{xq=){Gmf+|8F_ zi0wng?1CL_mF<93y@fE+SHjg>&ug~6ZHL#34FuY-XfRzAY&|5ji67>-$wg>lP$&3i zRBAdu54HPL-Jr43MbpeqNe-WE(1wLe!9E*)>NH1c0(tAq^DqIi73;Sro z24RC`#n;#sxQw(P06rEYSXb}Md1E~kohNF155#$~LX`Kv<9X(Q#X%r@2F zS_5QPjL=*~AGOfu8+g^f9}ad^(Zbba0N>nto&qv}5b3iAOYuMoQ#lK?={*1_8K=nB zc*|5No9g7XrJnHQLv?XiVZ2{)Ki5&*sfIe_yswsv+r`*h(3$?AK=<9p^#L1Di2@qM zPdcLAeOUFEq+`jexvNFW#udv9`W(u4W`qW!m%lDH6sDU+#DU1n3n76^a`MVMZSX%q z5Xuxn>GJawQJH@a`Kli~lIxEo&;HexmERa7v1wD=t>Un~+ktv*_RmS;hTu zcg#|JTc=1{B-VUt(G<%r^?UX$Sc>)5B8haY3ugKPHm~Yi*FXbFwQe^woIlB<>iCi2 zMHJ~P_R)L82?4;DDDJiIw07vKUE9;Wu#S zO9`Tf{Vvfz2cN3ZB}j-s-@ycf1_T*dpfDU3jmfv*4r)C~-zV3kvN-77X}+{~Z4OQ{ zSM^S`^Em|pJxg&!?R$V$dl4MY4H1FsY!9U*s4>Lj`Ij1#PGc`I@)keyfSxqcy)N^^ zdmNR@Co(QIo@A~}V)x1`H13$7Ym+ZWP%@M>tYJ(zfMh1}sOr~9jow=%#b>HK{AEju z#xTh{ZzT7|n#KVC6EoUX|38{3j~o*CP5{5^&lW?%iNVsS3{4()(rFC4`-x7E;1$-M zZ^dXtyVzcGrb+6d7Snh94>6h`ZB+_*py&iMtI72213zkw)4&kJCoXZ1FZJEgORu?JXcCdCif zp{Wyb-=r?s=>{dJXy}6Cn+P`yb3&t{08$`$M5Nqj3dYo_G{YLyq3s(y`49RVUE>fUz+~8@`<5NGIQeo5XN0!=h2?KS1gi#rrx` z>~-bAIe*y2 zjEq8TuGGR;x1Mq0BqhdT+X=voK0xIx5GuoV8-M=XU2=vpu?_qNJNe$wf=`GtV>r(| zZo?QOo--FWJhs6oG*k}2#F6^z$dC=S)L0g=%Q8IQO9qQjQU5%mGcUAr>pQ+n(ttnR z;=KLQYnoM4N1@!1zwuw<42?{dSgHP)S${)4+lS`uKw@;Xg=25kJmM?9sU%79Cu~U% zZ^xx(P+z1m0S0&&L($K4;>?AZI5jq?0`ltk*)F7MafKk#tR+XD8nNjT3b)b|2;`?T zvm_lq`j2@sIDM zrNh2kY2;uf55=1+ZcyWEa-6QLN-+S;u$hTvz|di}2c=j!8yf})^=qnDLBGXz>LX?H z&=a#9nC{!X3jS`@L@sWzkanf8P?deH%Yq3vgVJ^<OU){qPngfEq#g$j4 zy&D@$a3A|b!;#(^;e1{@`DYXapytU?4@FY(WUc<*5BQLnCab6_NQC5QL&u~B*S&Jj z-+FJdh;Kp~wi?C;{v#PheT4(11n4?5T*Q7}7^9cpk$=6Y`o6Afe@w zRbo}z*w$&{JK7nQsV4i$6APEGd!t&gzwAek5Q@m7_#o2rk{$AI>5bxR*2ARdUb zxLqBH8&g5B%%x0#f(xwv443Lln@Xw7QNh0#)T5@7ZXb+=E54Gt%WfsVPprr`L8S_p zl?sEX4^fD3umCj%LK%4_)tux07Jxx<6BoVY)VKqriP9ao>GAXqnXwE`q|#mY+IhEZ zx_6Mz9W*|}e`v%jumZzALXzb7sgj4C2QsCi7_iC1p9S;5r~?`%Ibi>^vKwAWtaM|k zYeIHtb8V0tqE4UJ#FF?>1`5r0W`kso4O44XFnaVV z_SE-PT0YSuF%4bNF~uY)oi`6_J@gxa`APD(<`L;$LS1bIlwNvYY4oD=hr-9@f4>(? zE1m1`fu2apM_7+p;OnJ@tBC_G1r|+)Jjnn0ZL~l;d9b|$oG-I_348i%nh;E z7)vi*Jo~4T?vsG7&gy6}54*;^Lu+SVb?27LOTK7RRarW(Q_)rT3z6d!OQR>E_Ql%o zWi!OLG*~H0vX14Qrsc0pd_E&#`B1rM?hXV#F7a9qVQG;}yV9$w&YW8WKPH!^Ir;io zNidBmSxPb#DS0n0{gp?*DpuZU1MFYvAlRnu48FFCQr9v7n%X$M0xs67!`wEv@(JAe zrFYVC%{?L!vRxGClu;vkf=*9_U&&Rhbi+2@Kcq9QA3OSys4>|;%yD3lU#z7~N}qH< zRw0IbxdmZe#3lv=ukrjOO`h93kN}l=oFyyC!{wG)&}>9v_9Ea95z8VPxs$ZbI|`C0 z$;@Nr#|E%ZW|w6Ld;h4wZ;nqD7I9MkeEQxee24l1sMC9aj8=FIKbO`i&~nqJ)p z)9D?q#W$p`t-T(VA5H>y&gjd7;=71dVha~w6<4ErsR{8nl)#dBJ`Y7?R4RRH=!yP_ftJOj)Iwto*uBB*In;`@`6>wpM9nGgCrLz5{DtG)K-1_(gA-57 zJDJ~kljsSf>SL~FyR5#xqe7=^{+kw~a|;gN`|zxgO^6;gV;3=IjsKw{$2-P&8%BIUV?0cOM^_UuS{sVGPm zcdC+#j$?+{^Y*s2wQ#qapm|{90Z?n>1q`CiL9Aoj{$oo4QPDycwVi0Y6 z+5`WL3G>(>#~pbY*>f%q|Ik~^AF2!plz0hu`$~&t~m~-;9&PN zJ~iOIC+$4>gM^`bwq0aLWjj9q9d}DYm|Rq&gh0|K*rAc#6xPbR=L{RDS`BUQAo*Pt z8lD7Q2%-*7n|Hh->L(Z5AW!|ClLMP-qH-#S$OIlnBZD@^mi za>&9u<_sbhOLi4A`!UhpmAjLU4~Q|RZjjrPvNt)n^XWc1eY37sh>3!Tf6V&(lBlGL zz!eAel!}RxO6*tD4XqWp(8j(@DE!dP<9L5GwbPT|$2~lCR?cbf?^D9H^>KBz(C>BN z4L6J=Ox*qDC=g?O)$G=H+Deqwsx-6UF5~l@kKi?@(A`7~`}+{a{v*LrvKdl-mr!=w zF?%1#Ky9Ao#)XMB!baxGp$Zh7zqM^S?LmAHW?m*+K=p{kDwlo+-Rlf|;1>vg=xfE4PoU5Qhpp_Et zbgW*-REfvmwO|+1!bJBx18QzOF55^M!lA#=vbLwBsb0da#Xg_SXF%S^p zFSQ}ecQQEg;ZzhQumhEkQlu@b(9XbG0v^Y?&|EWwrW2fQa1X-70ewt_ zn2ig%hl5XRn=jHV&O09J3(v22#zu^+=ANX$7LvKl%gvbpWL>KK4~fk3_~e~h9fyc3 z&>j&?I|SX{3pQw+`oI_u^)&hZcMojp@a6~eL9p(J$Iq|EJbiM&Un_*XMskbnb0)e% zBHhJKAMX*h3DTPo&u>LZDJ*(>5|v|fmniUA%1Q?DI@Q|wktx{L{CXyIyed664{?TT z|A4wKN+cOe@jfYUG{zSMfh?uF{vdaZIn7=;dRKP~_szta*_c?

=CCYz-To@JFn> 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

(y)dysZ?nCM^qmWR_E%?+o}D*1mqzb{)=! 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 XDU|n(GTjMrj`9OGu{5qWbdLQ$V~gm= diff --git a/sources/medias/install-add-on.png b/sources/medias/install-add-on.png index dcb7d07b286f5a7112bdcadd0f9f941d6f1c72a2..2bad8a9fd5017cafb78d4cd2b06a98b0e321e936 100644 GIT binary patch literal 21542 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

!t;#@I~O#Ld8 oD?c;LJ?)f(7!1~5&+Fv>1B~uAi-+CN+5i9m07*qoM6N<$f-GfP?f?J) diff --git a/sources/medias/menu-outils.png b/sources/medias/menu-outils.png index 87c214a8fc0c127fc5282f3be13304a56190659a..3cac20b583135cd00141c73194aee7a60f038abb 100644 GIT binary patch literal 20348 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 R^Z%@RCJ!FpuQhOt{tqSQlSlvn literal 36898 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 QQUCw|07*qoM6N<$f{tZ^xc~qF diff --git a/sources/medias/texmaker-biber.png b/sources/medias/texmaker-biber.png index 549780ca32e2aaa64e247784918078a187a6bcc3..3acbcb87c67e9c3ed293a9e01d089ea88db8fa63 100644 GIT binary patch literal 53374 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 E080y{Q2+n{ literal 35416 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�f4zAxq2BReZF6 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 -1; + }; + return shim$3; + } + + var contains$1 = isImplemented$4() + ? String.prototype.contains + : requireShim$3(); + + var assign$1 = assign$2 + , normalizeOpts = normalizeOptions + , isCallable = isCallable$1 + , contains = contains$1 + + , d$1; + + d$1 = d$2.exports = function (dscr, value/*, options*/) { + var c, e, w, options, desc; + if ((arguments.length < 2) || (typeof dscr !== 'string')) { + options = value; + value = dscr; + dscr = null; + } else { + options = arguments[2]; + } + if (dscr == null) { + c = w = true; + e = false; + } else { + c = contains.call(dscr, 'c'); + e = contains.call(dscr, 'e'); + w = contains.call(dscr, 'w'); + } + + desc = { value: value, configurable: c, enumerable: e, writable: w }; + return !options ? desc : assign$1(normalizeOpts(options), desc); + }; + + d$1.gs = function (dscr, get, set/*, options*/) { + var c, e, options, desc; + if (typeof dscr !== 'string') { + options = set; + set = get; + get = dscr; + dscr = null; + } else { + options = arguments[3]; + } + if (get == null) { + get = undefined; + } else if (!isCallable(get)) { + options = get; + get = set = undefined; + } else if (set == null) { + set = undefined; + } else if (!isCallable(set)) { + options = set; + set = undefined; + } + if (dscr == null) { + c = true; + e = false; + } else { + c = contains.call(dscr, 'c'); + e = contains.call(dscr, 'e'); + } + + desc = { get: get, set: set, configurable: c, enumerable: e }; + return !options ? desc : assign$1(normalizeOpts(options), desc); + }; + + var dExports = d$2.exports; + + var validCallable = function (fn) { + if (typeof fn !== "function") throw new TypeError(fn + " is not a function"); + return fn; + }; + + (function (module, exports) { + + var d = dExports + , callable = validCallable + + , apply = Function.prototype.apply, call = Function.prototype.call + , create = Object.create, defineProperty = Object.defineProperty + , defineProperties = Object.defineProperties + , hasOwnProperty = Object.prototype.hasOwnProperty + , descriptor = { configurable: true, enumerable: false, writable: true } + + , on, once, off, emit, methods, descriptors, base; + + on = function (type, listener) { + var data; + + callable(listener); + + if (!hasOwnProperty.call(this, '__ee__')) { + data = descriptor.value = create(null); + defineProperty(this, '__ee__', descriptor); + descriptor.value = null; + } else { + data = this.__ee__; + } + if (!data[type]) data[type] = listener; + else if (typeof data[type] === 'object') data[type].push(listener); + else data[type] = [data[type], listener]; + + return this; + }; + + once = function (type, listener) { + var once, self; + + callable(listener); + self = this; + on.call(this, type, once = function () { + off.call(self, type, once); + apply.call(listener, this, arguments); + }); + + once.__eeOnceListener__ = listener; + return this; + }; + + off = function (type, listener) { + var data, listeners, candidate, i; + + callable(listener); + + if (!hasOwnProperty.call(this, '__ee__')) return this; + data = this.__ee__; + if (!data[type]) return this; + listeners = data[type]; + + if (typeof listeners === 'object') { + for (i = 0; (candidate = listeners[i]); ++i) { + if ((candidate === listener) || + (candidate.__eeOnceListener__ === listener)) { + if (listeners.length === 2) data[type] = listeners[i ? 0 : 1]; + else listeners.splice(i, 1); + } + } + } else { + if ((listeners === listener) || + (listeners.__eeOnceListener__ === listener)) { + delete data[type]; + } + } + + return this; + }; + + emit = function (type) { + var i, l, listener, listeners, args; + + if (!hasOwnProperty.call(this, '__ee__')) return; + listeners = this.__ee__[type]; + if (!listeners) return; + + if (typeof listeners === 'object') { + l = arguments.length; + args = new Array(l - 1); + for (i = 1; i < l; ++i) args[i - 1] = arguments[i]; + + listeners = listeners.slice(); + for (i = 0; (listener = listeners[i]); ++i) { + apply.call(listener, this, args); + } + } else { + switch (arguments.length) { + case 1: + call.call(listeners, this); + break; + case 2: + call.call(listeners, this, arguments[1]); + break; + case 3: + call.call(listeners, this, arguments[1], arguments[2]); + break; + default: + l = arguments.length; + args = new Array(l - 1); + for (i = 1; i < l; ++i) { + args[i - 1] = arguments[i]; + } + apply.call(listeners, this, args); + } + } + }; + + methods = { + on: on, + once: once, + off: off, + emit: emit + }; + + descriptors = { + on: d(on), + once: d(once), + off: d(off), + emit: d(emit) + }; + + base = defineProperties({}, descriptors); + + module.exports = exports = function (o) { + return (o == null) ? create(base) : defineProperties(Object(o), descriptors); + }; + exports.methods = methods; + } (eventEmitter, eventEmitter.exports)); + + var eventEmitterExports = eventEmitter.exports; + var EventEmitter = /*@__PURE__*/getDefaultExportFromCjs(eventEmitterExports); + + /** + * Hooks allow for injecting functions that must all complete in order before finishing + * They will execute in parallel but all must finish before continuing + * Functions may return a promise if they are asycn. + * From epubjs/src/utils/hooks + * @param {any} context scope of this + * @example this.content = new Hook(this); + */ + class Hook { + constructor(context){ + this.context = context || this; + this.hooks = []; + } + + /** + * Adds a function to be run before a hook completes + * @example this.content.register(function(){...}); + * @return {undefined} void + */ + register(){ + for(var i = 0; i < arguments.length; ++i) { + if (typeof arguments[i] === "function") { + this.hooks.push(arguments[i]); + } else { + // unpack array + for(var j = 0; j < arguments[i].length; ++j) { + this.hooks.push(arguments[i][j]); + } + } + } + } + + /** + * Triggers a hook to run all functions + * @example this.content.trigger(args).then(function(){...}); + * @return {Promise} results + */ + trigger(){ + var args = arguments; + var context = this.context; + var promises = []; + + this.hooks.forEach(function(task) { + var executing = task.apply(context, args); + + if(executing && typeof executing["then"] === "function") { + // Task is a function that returns a promise + promises.push(executing); + } else { + // Otherwise Task resolves immediately, add resolved promise with result + promises.push(new Promise((resolve, reject) => { + resolve(executing); + })); + } + }); + + + return Promise.all(promises); + } + + /** + * Triggers a hook to run all functions synchronously + * @example this.content.trigger(args).then(function(){...}); + * @return {Array} results + */ + triggerSync(){ + var args = arguments; + var context = this.context; + var results = []; + + this.hooks.forEach(function(task) { + var executing = task.apply(context, args); + + results.push(executing); + }); + + + return results; + } + + // Adds a function to be run before a hook completes + list(){ + return this.hooks; + } + + clear(){ + return this.hooks = []; + } + } + + function getBoundingClientRect(element) { + if (!element) { + return; + } + let rect; + if (typeof element.getBoundingClientRect !== "undefined") { + rect = element.getBoundingClientRect(); + } else { + let range = document.createRange(); + range.selectNode(element); + rect = range.getBoundingClientRect(); + } + return rect; + } + + function getClientRects(element) { + if (!element) { + return; + } + let rect; + if (typeof element.getClientRects !== "undefined") { + rect = element.getClientRects(); + } else { + let range = document.createRange(); + range.selectNode(element); + rect = range.getClientRects(); + } + return rect; + } + + /** + * Generates a UUID + * based on: http://stackoverflow.com/questions/105034/how-to-create-a-guid-uuid-in-javascript + * @returns {string} uuid + */ + function UUID() { + var d = new Date().getTime(); + if (typeof performance !== "undefined" && typeof performance.now === "function") { + d += performance.now(); //use high-precision timer if available + } + return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, function (c) { + var r = (d + Math.random() * 16) % 16 | 0; + d = Math.floor(d / 16); + return (c === "x" ? r : (r & 0x3 | 0x8)).toString(16); + }); + } + + function attr(element, attributes) { + for (var i = 0; i < attributes.length; i++) { + if (element.hasAttribute(attributes[i])) { + return element.getAttribute(attributes[i]); + } + } + } + + /* Based on by https://mths.be/cssescape v1.5.1 by @mathias | MIT license + * Allows # and . + */ + function querySelectorEscape(value) { + if (arguments.length == 0) { + throw new TypeError("`CSS.escape` requires an argument."); + } + var string = String(value); + + var length = string.length; + var index = -1; + var codeUnit; + var result = ""; + var firstCodeUnit = string.charCodeAt(0); + while (++index < length) { + codeUnit = string.charCodeAt(index); + + + + // Note: there’s no need to special-case astral symbols, surrogate + // pairs, or lone surrogates. + + // If the character is NULL (U+0000), then the REPLACEMENT CHARACTER + // (U+FFFD). + if (codeUnit == 0x0000) { + result += "\uFFFD"; + continue; + } + + if ( + // If the character is in the range [\1-\1F] (U+0001 to U+001F) or is + // U+007F, […] + (codeUnit >= 0x0001 && codeUnit <= 0x001F) || codeUnit == 0x007F || + // If the character is the first character and is in the range [0-9] + // (U+0030 to U+0039), […] + (index == 0 && codeUnit >= 0x0030 && codeUnit <= 0x0039) || + // If the character is the second character and is in the range [0-9] + // (U+0030 to U+0039) and the first character is a `-` (U+002D), […] + ( + index == 1 && + codeUnit >= 0x0030 && codeUnit <= 0x0039 && + firstCodeUnit == 0x002D + ) + ) { + // https://drafts.csswg.org/cssom/#escape-a-character-as-code-point + result += "\\" + codeUnit.toString(16) + " "; + continue; + } + + if ( + // If the character is the first character and is a `-` (U+002D), and + // there is no second character, […] + index == 0 && + length == 1 && + codeUnit == 0x002D + ) { + result += "\\" + string.charAt(index); + continue; + } + + // support for period character in id + if (codeUnit == 0x002E) { + if (string.charAt(0) == "#") { + result += "\\."; + continue; + } + } + + + // If the character is not handled by one of the above rules and is + // greater than or equal to U+0080, is `-` (U+002D) or `_` (U+005F), or + // is in one of the ranges [0-9] (U+0030 to U+0039), [A-Z] (U+0041 to + // U+005A), or [a-z] (U+0061 to U+007A), […] + if ( + codeUnit >= 0x0080 || + codeUnit == 0x002D || + codeUnit == 0x005F || + codeUnit == 35 || // Allow # + codeUnit == 46 || // Allow . + codeUnit >= 0x0030 && codeUnit <= 0x0039 || + codeUnit >= 0x0041 && codeUnit <= 0x005A || + codeUnit >= 0x0061 && codeUnit <= 0x007A + ) { + // the character itself + result += string.charAt(index); + continue; + } + + // Otherwise, the escaped character. + // https://drafts.csswg.org/cssom/#escape-a-character + result += "\\" + string.charAt(index); + + } + return result; + } + + /** + * Creates a new pending promise and provides methods to resolve or reject it. + * From: https://developer.mozilla.org/en-US/docs/Mozilla/JavaScript_code_modules/Promise.jsm/Deferred#backwards_forwards_compatible + * @returns {object} defered + */ + function defer() { + this.resolve = null; + + this.reject = null; + + this.id = UUID(); + + this.promise = new Promise((resolve, reject) => { + this.resolve = resolve; + this.reject = reject; + }); + Object.freeze(this); + } + + const requestIdleCallback = typeof window !== "undefined" && ("requestIdleCallback" in window ? window.requestIdleCallback : window.requestAnimationFrame); + + function CSSValueToString(obj) { + return obj.value + (obj.unit || ""); + } + + function isElement(node) { + return node && node.nodeType === 1; + } + + function isText(node) { + return node && node.nodeType === 3; + } + + function* walk$2(start, limiter) { + let node = start; + + while (node) { + + yield node; + + if (node.childNodes.length) { + node = node.firstChild; + } else if (node.nextSibling) { + if (limiter && node === limiter) { + node = undefined; + break; + } + node = node.nextSibling; + } else { + while (node) { + node = node.parentNode; + if (limiter && node === limiter) { + node = undefined; + break; + } + if (node && node.nextSibling) { + node = node.nextSibling; + break; + } + + } + } + } + } + + function nodeAfter(node, limiter) { + if (limiter && node === limiter) { + return; + } + let significantNode = nextSignificantNode(node); + if (significantNode) { + return significantNode; + } + if (node.parentNode) { + while ((node = node.parentNode)) { + if (limiter && node === limiter) { + return; + } + significantNode = nextSignificantNode(node); + if (significantNode) { + return significantNode; + } + } + } + } + + function nodeBefore(node, limiter) { + if (limiter && node === limiter) { + return; + } + let significantNode = previousSignificantNode(node); + if (significantNode) { + return significantNode; + } + if (node.parentNode) { + while ((node = node.parentNode)) { + if (limiter && node === limiter) { + return; + } + significantNode = previousSignificantNode(node); + if (significantNode) { + return significantNode; + } + } + } + } + + function elementAfter(node, limiter) { + let after = nodeAfter(node, limiter); + + while (after && after.nodeType !== 1) { + after = nodeAfter(after, limiter); + } + + return after; + } + + function elementBefore(node, limiter) { + let before = nodeBefore(node, limiter); + + while (before && before.nodeType !== 1) { + before = nodeBefore(before, limiter); + } + + return before; + } + + function displayedElementAfter(node, limiter) { + let after = elementAfter(node, limiter); + + while (after && after.dataset.undisplayed) { + after = elementAfter(after, limiter); + } + + return after; + } + + function displayedElementBefore(node, limiter) { + let before = elementBefore(node, limiter); + + while (before && before.dataset.undisplayed) { + before = elementBefore(before, limiter); + } + + return before; + } + + function rebuildAncestors(node) { + let parent, ancestor; + let ancestors = []; + let added = []; + + let fragment = document.createDocumentFragment(); + + // Handle rowspan on table + if (node.nodeName === "TR") { + let previousRow = node.previousElementSibling; + let previousRowDistance = 1; + while (previousRow) { + // previous row has more columns, might indicate a rowspan. + if (previousRow.childElementCount > node.childElementCount) { + const initialColumns = Array.from(node.children); + while (node.firstChild) { + node.firstChild.remove(); + } + let k = 0; + for (let j = 0; j < previousRow.children.length; j++) { + let column = previousRow.children[j]; + if (column.rowSpan && column.rowSpan > previousRowDistance) { + const duplicatedColumn = column.cloneNode(true); + // Adjust rowspan value + duplicatedColumn.rowSpan = column.rowSpan - previousRowDistance; + // Add the column to the row + node.appendChild(duplicatedColumn); + } else { + // Fill the gap with the initial columns (if exists) + const initialColumn = initialColumns[k++]; + // The initial column can be undefined if the newly created table has less columns than the original table + if (initialColumn) { + node.appendChild(initialColumn); + } + } + } + } + previousRow = previousRow.previousElementSibling; + previousRowDistance++; + } + } + + // Gather all ancestors + let element = node; + while(element.parentNode && element.parentNode.nodeType === 1) { + ancestors.unshift(element.parentNode); + element = element.parentNode; + } + + for (var i = 0; i < ancestors.length; i++) { + ancestor = ancestors[i]; + parent = ancestor.cloneNode(false); + + parent.setAttribute("data-split-from", parent.getAttribute("data-ref")); + // ancestor.setAttribute("data-split-to", parent.getAttribute("data-ref")); + + if (parent.hasAttribute("id")) { + let dataID = parent.getAttribute("id"); + parent.setAttribute("data-id", dataID); + parent.removeAttribute("id"); + } + + // This is handled by css :not, but also tidied up here + if (parent.hasAttribute("data-break-before")) { + parent.removeAttribute("data-break-before"); + } + + if (parent.hasAttribute("data-previous-break-after")) { + parent.removeAttribute("data-previous-break-after"); + } + + if (added.length) { + let container = added[added.length-1]; + container.appendChild(parent); + } else { + fragment.appendChild(parent); + } + added.push(parent); + + // rebuild table rows + if (parent.nodeName === "TD" && ancestor.parentElement.contains(ancestor)) { + let td = ancestor; + let prev = parent; + while ((td = td.previousElementSibling)) { + let sib = td.cloneNode(false); + parent.parentElement.insertBefore(sib, prev); + prev = sib; + } + + } + } + + added = undefined; + return fragment; + } + /* + export function split(bound, cutElement, breakAfter) { + let needsRemoval = []; + let index = indexOf(cutElement); + + if (!breakAfter && index === 0) { + return; + } + + if (breakAfter && index === (cutElement.parentNode.children.length - 1)) { + return; + } + + // Create a fragment with rebuilt ancestors + let fragment = rebuildAncestors(cutElement); + + // Clone cut + if (!breakAfter) { + let clone = cutElement.cloneNode(true); + let ref = cutElement.parentNode.getAttribute('data-ref'); + let parent = fragment.querySelector("[data-ref='" + ref + "']"); + parent.appendChild(clone); + needsRemoval.push(cutElement); + } + + // Remove all after cut + let next = nodeAfter(cutElement, bound); + while (next) { + let clone = next.cloneNode(true); + let ref = next.parentNode.getAttribute('data-ref'); + let parent = fragment.querySelector("[data-ref='" + ref + "']"); + parent.appendChild(clone); + needsRemoval.push(next); + next = nodeAfter(next, bound); + } + + // Remove originals + needsRemoval.forEach((node) => { + if (node) { + node.remove(); + } + }); + + // Insert after bounds + bound.parentNode.insertBefore(fragment, bound.nextSibling); + return [bound, bound.nextSibling]; + } + */ + + function needsBreakBefore(node) { + if( typeof node !== "undefined" && + typeof node.dataset !== "undefined" && + typeof node.dataset.breakBefore !== "undefined" && + (node.dataset.breakBefore === "always" || + node.dataset.breakBefore === "page" || + node.dataset.breakBefore === "left" || + node.dataset.breakBefore === "right" || + node.dataset.breakBefore === "recto" || + node.dataset.breakBefore === "verso") + ) { + return true; + } + + return false; + } + + function needsPreviousBreakAfter(node) { + if( typeof node !== "undefined" && + typeof node.dataset !== "undefined" && + typeof node.dataset.previousBreakAfter !== "undefined" && + (node.dataset.previousBreakAfter === "always" || + node.dataset.previousBreakAfter === "page" || + node.dataset.previousBreakAfter === "left" || + node.dataset.previousBreakAfter === "right" || + node.dataset.previousBreakAfter === "recto" || + node.dataset.previousBreakAfter === "verso") + ) { + return true; + } + + return false; + } + + function needsPageBreak(node, previousSignificantNode) { + if (typeof node === "undefined" || !previousSignificantNode || isIgnorable(node)) { + return false; + } + if (node.dataset && node.dataset.undisplayed) { + return false; + } + let previousSignificantNodePage = previousSignificantNode.dataset ? previousSignificantNode.dataset.page : undefined; + if (typeof previousSignificantNodePage === "undefined") { + const nodeWithNamedPage = getNodeWithNamedPage(previousSignificantNode); + if (nodeWithNamedPage) { + previousSignificantNodePage = nodeWithNamedPage.dataset.page; + } + } + let currentNodePage = node.dataset ? node.dataset.page : undefined; + if (typeof currentNodePage === "undefined") { + const nodeWithNamedPage = getNodeWithNamedPage(node, previousSignificantNode); + if (nodeWithNamedPage) { + currentNodePage = nodeWithNamedPage.dataset.page; + } + } + return currentNodePage !== previousSignificantNodePage; + } + + function *words(node) { + let currentText = node.nodeValue; + let max = currentText.length; + let currentOffset = 0; + let currentLetter; + + let range; + const significantWhitespaces = node.parentElement && node.parentElement.nodeName === "PRE"; + + while (currentOffset < max) { + currentLetter = currentText[currentOffset]; + if (/^[\S\u202F\u00A0]$/.test(currentLetter) || significantWhitespaces) { + if (!range) { + range = document.createRange(); + range.setStart(node, currentOffset); + } + } else { + if (range) { + range.setEnd(node, currentOffset); + yield range; + range = undefined; + } + } + + currentOffset += 1; + } + + if (range) { + range.setEnd(node, currentOffset); + yield range; + } + } + + function *letters(wordRange) { + let currentText = wordRange.startContainer; + let max = currentText.length; + let currentOffset = wordRange.startOffset; + // let currentLetter; + + let range; + + while(currentOffset < max) { + // currentLetter = currentText[currentOffset]; + range = document.createRange(); + range.setStart(currentText, currentOffset); + range.setEnd(currentText, currentOffset+1); + + yield range; + + currentOffset += 1; + } + } + + function isContainer(node) { + let container; + + if (typeof node.tagName === "undefined") { + return true; + } + + if (node.style && node.style.display === "none") { + return false; + } + + switch (node.tagName) { + // Inline + case "A": + case "ABBR": + case "ACRONYM": + case "B": + case "BDO": + case "BIG": + case "BR": + case "BUTTON": + case "CITE": + case "CODE": + case "DFN": + case "EM": + case "I": + case "IMG": + case "INPUT": + case "KBD": + case "LABEL": + case "MAP": + case "OBJECT": + case "Q": + case "SAMP": + case "SCRIPT": + case "SELECT": + case "SMALL": + case "SPAN": + case "STRONG": + case "SUB": + case "SUP": + case "TEXTAREA": + case "TIME": + case "TT": + case "VAR": + case "P": + case "H1": + case "H2": + case "H3": + case "H4": + case "H5": + case "H6": + case "FIGCAPTION": + case "BLOCKQUOTE": + case "PRE": + case "LI": + case "TD": + case "DT": + case "DD": + case "VIDEO": + case "CANVAS": + container = false; + break; + default: + container = true; + } + + return container; + } + + function cloneNode(n, deep=false) { + return n.cloneNode(deep); + } + + function findElement(node, doc, forceQuery) { + const ref = node.getAttribute("data-ref"); + return findRef(ref, doc, forceQuery); + } + + function findRef(ref, doc, forceQuery) { + if (!forceQuery && doc.indexOfRefs && doc.indexOfRefs[ref]) { + return doc.indexOfRefs[ref]; + } else { + return doc.querySelector(`[data-ref='${ref}']`); + } + } + + function validNode(node) { + if (isText(node)) { + return true; + } + + if (isElement(node) && node.dataset.ref) { + return true; + } + + return false; + } + + function prevValidNode(node) { + while (!validNode(node)) { + if (node.previousSibling) { + node = node.previousSibling; + } else { + node = node.parentNode; + } + + if (!node) { + break; + } + } + + return node; + } + + + function indexOf$2(node) { + let parent = node.parentNode; + if (!parent) { + return 0; + } + return Array.prototype.indexOf.call(parent.childNodes, node); + } + + function child(node, index) { + return node.childNodes[index]; + } + + function hasContent(node) { + if (isElement(node)) { + return true; + } else if (isText(node) && + node.textContent.trim().length) { + return true; + } + return false; + } + + function indexOfTextNode(node, parent) { + if (!isText(node)) { + return -1; + } + let nodeTextContent = node.textContent; + let child; + let index = -1; + for (var i = 0; i < parent.childNodes.length; i++) { + child = parent.childNodes[i]; + if (child.nodeType === 3) { + let text = parent.childNodes[i].textContent; + if (text.includes(nodeTextContent)) { + index = i; + break; + } + } + } + + return index; + } + + + /** + * Throughout, whitespace is defined as one of the characters + * "\t" TAB \u0009 + * "\n" LF \u000A + * "\r" CR \u000D + * " " SPC \u0020 + * + * This does not use Javascript's "\s" because that includes non-breaking + * spaces (and also some other characters). + */ + + /** + * Determine if a node should be ignored by the iterator functions. + * taken from https://developer.mozilla.org/en-US/docs/Web/API/Document_Object_Model/Whitespace#Whitespace_helper_functions + * + * @param {Node} node An object implementing the DOM1 |Node| interface. + * @return {boolean} true if the node is: + * 1) A |Text| node that is all whitespace + * 2) A |Comment| node + * and otherwise false. + */ + function isIgnorable(node) { + return (node.nodeType === 8) || // A comment node + ((node.nodeType === 3) && isAllWhitespace(node)); // a text node, all whitespace + } + + /** + * Determine whether a node's text content is entirely whitespace. + * + * @param {Node} node A node implementing the |CharacterData| interface (i.e., a |Text|, |Comment|, or |CDATASection| node + * @return {boolean} true if all of the text content of |nod| is whitespace, otherwise false. + */ + function isAllWhitespace(node) { + return !(/[^\t\n\r ]/.test(node.textContent)); + } + + /** + * Version of |previousSibling| that skips nodes that are entirely + * whitespace or comments. (Normally |previousSibling| is a property + * of all DOM nodes that gives the sibling node, the node that is + * a child of the same parent, that occurs immediately before the + * reference node.) + * + * @param {ChildNode} sib The reference node. + * @return {Node|null} Either: + * 1) The closest previous sibling to |sib| that is not ignorable according to |is_ignorable|, or + * 2) null if no such node exists. + */ + function previousSignificantNode(sib) { + while ((sib = sib.previousSibling)) { + if (!isIgnorable(sib)) return sib; + } + return null; + } + + function getNodeWithNamedPage(node, limiter) { + if (node && node.dataset && node.dataset.page) { + return node; + } + if (node.parentNode) { + while ((node = node.parentNode)) { + if (limiter && node === limiter) { + return; + } + if (node.dataset && node.dataset.page) { + return node; + } + } + } + return null; + } + + function breakInsideAvoidParentNode(node) { + while ((node = node.parentNode)) { + if (node && node.dataset && node.dataset.breakInside === "avoid") { + return node; + } + } + return null; + } + + /** + * Find a parent with a given node name. + * @param {Node} node - initial Node + * @param {string} nodeName - node name (eg. "TD", "TABLE", "STRONG"...) + * @param {Node} limiter - go up to the parent until there's no more parent or the current node is equals to the limiter + * @returns {Node|undefined} - Either: + * 1) The closest parent for a the given node name, or + * 2) undefined if no such node exists. + */ + function parentOf(node, nodeName, limiter) { + if (limiter && node === limiter) { + return; + } + if (node.parentNode) { + while ((node = node.parentNode)) { + if (limiter && node === limiter) { + return; + } + if (node.nodeName === nodeName) { + return node; + } + } + } + } + + /** + * Version of |nextSibling| that skips nodes that are entirely + * whitespace or comments. + * + * @param {ChildNode} sib The reference node. + * @return {Node|null} Either: + * 1) The closest next sibling to |sib| that is not ignorable according to |is_ignorable|, or + * 2) null if no such node exists. + */ + function nextSignificantNode(sib) { + while ((sib = sib.nextSibling)) { + if (!isIgnorable(sib)) return sib; + } + return null; + } + + function filterTree(content, func, what) { + const treeWalker = document.createTreeWalker( + content || this.dom, + what || NodeFilter.SHOW_ALL, + func ? { acceptNode: func } : null, + false + ); + + let node; + let current; + node = treeWalker.nextNode(); + while(node) { + current = node; + node = treeWalker.nextNode(); + current.parentNode.removeChild(current); + } + } + + /** + * BreakToken + * @class + */ + class BreakToken { + + constructor(node, offset) { + this.node = node; + this.offset = offset; + } + + equals(otherBreakToken) { + if (!otherBreakToken) { + return false; + } + if (this["node"] && otherBreakToken["node"] && + this["node"] !== otherBreakToken["node"]) { + return false; + } + if (this["offset"] && otherBreakToken["offset"] && + this["offset"] !== otherBreakToken["offset"]) { + return false; + } + return true; + } + + toJSON(hash) { + let node; + let index = 0; + if (!this.node) { + return {}; + } + if (isElement(this.node) && this.node.dataset.ref) { + node = this.node.dataset.ref; + } else if (hash) { + node = this.node.parentElement.dataset.ref; + } + + if (this.node.parentElement) { + const children = Array.from(this.node.parentElement.childNodes); + index = children.indexOf(this.node); + } + + return JSON.stringify({ + "node": node, + "index" : index, + "offset": this.offset + }); + } + + } + + /** + * Render result. + * @class + */ + class RenderResult { + + constructor(breakToken, error) { + this.breakToken = breakToken; + this.error = error; + } + } + + class OverflowContentError extends Error { + constructor(message, items) { + super(message); + this.items = items; + } + } + + const MAX_CHARS_PER_BREAK = 1500; + + /** + * Layout + * @class + */ + class Layout { + + constructor(element, hooks, options) { + this.element = element; + + this.bounds = this.element.getBoundingClientRect(); + this.parentBounds = this.element.offsetParent.getBoundingClientRect(); + let gap = parseFloat(window.getComputedStyle(this.element).columnGap); + + if (gap) { + let leftMargin = this.bounds.left - this.parentBounds.left; + this.gap = gap - leftMargin; + } else { + this.gap = 0; + } + + if (hooks) { + this.hooks = hooks; + } else { + this.hooks = {}; + this.hooks.onPageLayout = new Hook(); + this.hooks.layout = new Hook(); + this.hooks.renderNode = new Hook(); + this.hooks.layoutNode = new Hook(); + this.hooks.beforeOverflow = new Hook(); + this.hooks.onOverflow = new Hook(); + this.hooks.afterOverflowRemoved = new Hook(); + this.hooks.onBreakToken = new Hook(); + this.hooks.beforeRenderResult = new Hook(); + } + + this.settings = options || {}; + + this.maxChars = this.settings.maxChars || MAX_CHARS_PER_BREAK; + this.forceRenderBreak = false; + } + + async renderTo(wrapper, source, breakToken, bounds = this.bounds) { + let start = this.getStart(source, breakToken); + let walker = walk$2(start, source); + + let node; + let prevNode; + let done; + let next; + + let hasRenderedContent = false; + let newBreakToken; + + let length = 0; + + let prevBreakToken = breakToken || new BreakToken(start); + + this.hooks && this.hooks.onPageLayout.trigger(wrapper, prevBreakToken, this); + + while (!done && !newBreakToken) { + next = walker.next(); + prevNode = node; + node = next.value; + done = next.done; + + if (!node) { + this.hooks && this.hooks.layout.trigger(wrapper, this); + + let imgs = wrapper.querySelectorAll("img"); + if (imgs.length) { + await this.waitForImages(imgs); + } + + newBreakToken = this.findBreakToken(wrapper, source, bounds, prevBreakToken); + + if (newBreakToken && newBreakToken.equals(prevBreakToken)) { + console.warn("Unable to layout item: ", prevNode); + this.hooks && this.hooks.beforeRenderResult.trigger(undefined, wrapper, this); + return new RenderResult(undefined, new OverflowContentError("Unable to layout item", [prevNode])); + } + + this.rebuildTableFromBreakToken(newBreakToken, wrapper); + + this.hooks && this.hooks.beforeRenderResult.trigger(newBreakToken, wrapper, this); + return new RenderResult(newBreakToken); + } + + this.hooks && this.hooks.layoutNode.trigger(node); + + // Check if the rendered element has a break set + if (hasRenderedContent && this.shouldBreak(node, start)) { + this.hooks && this.hooks.layout.trigger(wrapper, this); + + let imgs = wrapper.querySelectorAll("img"); + if (imgs.length) { + await this.waitForImages(imgs); + } + + newBreakToken = this.findBreakToken(wrapper, source, bounds, prevBreakToken); + + if (!newBreakToken) { + newBreakToken = this.breakAt(node); + } else { + this.rebuildTableFromBreakToken(newBreakToken, wrapper); + } + + if (newBreakToken && newBreakToken.equals(prevBreakToken)) { + console.warn("Unable to layout item: ", node); + let after = newBreakToken.node && nodeAfter(newBreakToken.node); + if (after) { + newBreakToken = new BreakToken(after); + } else { + return new RenderResult(undefined, new OverflowContentError("Unable to layout item", [node])); + } + } + + length = 0; + + break; + } + + if (node.dataset && node.dataset.page) { + let named = node.dataset.page; + let page = this.element.closest(".pagedjs_page"); + page.classList.add("pagedjs_named_page"); + page.classList.add("pagedjs_" + named + "_page"); + + if (!node.dataset.splitFrom) { + page.classList.add("pagedjs_" + named + "_first_page"); + } + } + + // Should the Node be a shallow or deep clone + let shallow = isContainer(node); + + let rendered = this.append(node, wrapper, breakToken, shallow); + + length += rendered.textContent.length; + + // Check if layout has content yet + if (!hasRenderedContent) { + hasRenderedContent = hasContent(node); + } + + // Skip to the next node if a deep clone was rendered + if (!shallow) { + walker = walk$2(nodeAfter(node, source), source); + } + + if (this.forceRenderBreak) { + this.hooks && this.hooks.layout.trigger(wrapper, this); + + newBreakToken = this.findBreakToken(wrapper, source, bounds, prevBreakToken); + + if (!newBreakToken) { + newBreakToken = this.breakAt(node); + } else { + this.rebuildTableFromBreakToken(newBreakToken, wrapper); + } + + length = 0; + this.forceRenderBreak = false; + + break; + } + + // Only check x characters + if (length >= this.maxChars) { + + this.hooks && this.hooks.layout.trigger(wrapper, this); + + let imgs = wrapper.querySelectorAll("img"); + if (imgs.length) { + await this.waitForImages(imgs); + } + + newBreakToken = this.findBreakToken(wrapper, source, bounds, prevBreakToken); + + if (newBreakToken) { + length = 0; + this.rebuildTableFromBreakToken(newBreakToken, wrapper); + } + + if (newBreakToken && newBreakToken.equals(prevBreakToken)) { + console.warn("Unable to layout item: ", node); + let after = newBreakToken.node && nodeAfter(newBreakToken.node); + if (after) { + newBreakToken = new BreakToken(after); + } else { + this.hooks && this.hooks.beforeRenderResult.trigger(undefined, wrapper, this); + return new RenderResult(undefined, new OverflowContentError("Unable to layout item", [node])); + } + } + } + + } + + this.hooks && this.hooks.beforeRenderResult.trigger(newBreakToken, wrapper, this); + return new RenderResult(newBreakToken); + } + + breakAt(node, offset = 0) { + let newBreakToken = new BreakToken( + node, + offset + ); + let breakHooks = this.hooks.onBreakToken.triggerSync(newBreakToken, undefined, node, this); + breakHooks.forEach((newToken) => { + if (typeof newToken != "undefined") { + newBreakToken = newToken; + } + }); + + return newBreakToken; + } + + shouldBreak(node, limiter) { + let previousNode = nodeBefore(node, limiter); + let parentNode = node.parentNode; + let parentBreakBefore = needsBreakBefore(node) && parentNode && !previousNode && needsBreakBefore(parentNode); + let doubleBreakBefore; + + if (parentBreakBefore) { + doubleBreakBefore = node.dataset.breakBefore === parentNode.dataset.breakBefore; + } + + return !doubleBreakBefore && needsBreakBefore(node) || needsPreviousBreakAfter(node) || needsPageBreak(node, previousNode); + } + + forceBreak() { + this.forceRenderBreak = true; + } + + getStart(source, breakToken) { + let start; + let node = breakToken && breakToken.node; + + if (node) { + start = node; + } else { + start = source.firstChild; + } + + return start; + } + + append(node, dest, breakToken, shallow = true, rebuild = true) { + + let clone = cloneNode(node, !shallow); + + if (node.parentNode && isElement(node.parentNode)) { + let parent = findElement(node.parentNode, dest); + // Rebuild chain + if (parent) { + parent.appendChild(clone); + } else if (rebuild) { + let fragment = rebuildAncestors(node); + parent = findElement(node.parentNode, fragment); + if (!parent) { + dest.appendChild(clone); + } else if (breakToken && isText(breakToken.node) && breakToken.offset > 0) { + clone.textContent = clone.textContent.substring(breakToken.offset); + parent.appendChild(clone); + } else { + parent.appendChild(clone); + } + + dest.appendChild(fragment); + } else { + dest.appendChild(clone); + } + + + } else { + dest.appendChild(clone); + } + + if (clone.dataset && clone.dataset.ref) { + if (!dest.indexOfRefs) { + dest.indexOfRefs = {}; + } + dest.indexOfRefs[clone.dataset.ref] = clone; + } + + let nodeHooks = this.hooks.renderNode.triggerSync(clone, node, this); + nodeHooks.forEach((newNode) => { + if (typeof newNode != "undefined") { + clone = newNode; + } + }); + + return clone; + } + + rebuildTableFromBreakToken(breakToken, dest) { + if (!breakToken || !breakToken.node) { + return; + } + let node = breakToken.node; + let td = isElement(node) ? node.closest("td") : node.parentElement.closest("td"); + if (td) { + let rendered = findElement(td, dest, true); + if (!rendered) { + return; + } + while ((td = td.nextElementSibling)) { + this.append(td, dest, null, true); + } + } + } + + async waitForImages(imgs) { + let results = Array.from(imgs).map(async (img) => { + return this.awaitImageLoaded(img); + }); + await Promise.all(results); + } + + async awaitImageLoaded(image) { + return new Promise(resolve => { + if (image.complete !== true) { + image.onload = function () { + let {width, height} = window.getComputedStyle(image); + resolve(width, height); + }; + image.onerror = function (e) { + let {width, height} = window.getComputedStyle(image); + resolve(width, height, e); + }; + } else { + let {width, height} = window.getComputedStyle(image); + resolve(width, height); + } + }); + } + + avoidBreakInside(node, limiter) { + let breakNode; + + if (node === limiter) { + return; + } + + while (node.parentNode) { + node = node.parentNode; + + if (node === limiter) { + break; + } + + if (window.getComputedStyle(node)["break-inside"] === "avoid") { + breakNode = node; + break; + } + + } + return breakNode; + } + + createBreakToken(overflow, rendered, source) { + let container = overflow.startContainer; + let offset = overflow.startOffset; + let node, renderedNode, parent, index, temp; + + if (isElement(container)) { + temp = child(container, offset); + + if (isElement(temp)) { + renderedNode = findElement(temp, rendered); + + if (!renderedNode) { + // Find closest element with data-ref + let prevNode = prevValidNode(temp); + if (!isElement(prevNode)) { + prevNode = prevNode.parentElement; + } + renderedNode = findElement(prevNode, rendered); + // Check if temp is the last rendered node at its level. + if (!temp.nextSibling) { + // We need to ensure that the previous sibling of temp is fully rendered. + const renderedNodeFromSource = findElement(renderedNode, source); + const walker = document.createTreeWalker(renderedNodeFromSource, NodeFilter.SHOW_ELEMENT); + const lastChildOfRenderedNodeFromSource = walker.lastChild(); + const lastChildOfRenderedNodeMatchingFromRendered = findElement(lastChildOfRenderedNodeFromSource, rendered); + // Check if we found that the last child in source + if (!lastChildOfRenderedNodeMatchingFromRendered) { + // Pending content to be rendered before virtual break token + return; + } + // Otherwise we will return a break token as per below + } + // renderedNode is actually the last unbroken box that does not overflow. + // Break Token is therefore the next sibling of renderedNode within source node. + node = findElement(renderedNode, source).nextSibling; + offset = 0; + } else { + node = findElement(renderedNode, source); + offset = 0; + } + } else { + renderedNode = findElement(container, rendered); + + if (!renderedNode) { + renderedNode = findElement(prevValidNode(container), rendered); + } + + parent = findElement(renderedNode, source); + index = indexOfTextNode(temp, parent); + // No seperatation for the first textNode of an element + if(index === 0) { + node = parent; + offset = 0; + } else { + node = child(parent, index); + offset = 0; + } + } + } else { + renderedNode = findElement(container.parentNode, rendered); + + if (!renderedNode) { + renderedNode = findElement(prevValidNode(container.parentNode), rendered); + } + + parent = findElement(renderedNode, source); + index = indexOfTextNode(container, parent); + + if (index === -1) { + return; + } + + node = child(parent, index); + + offset += node.textContent.indexOf(container.textContent); + } + + if (!node) { + return; + } + + return new BreakToken( + node, + offset + ); + + } + + findBreakToken(rendered, source, bounds = this.bounds, prevBreakToken, extract = true) { + let overflow = this.findOverflow(rendered, bounds); + let breakToken, breakLetter; + + let overflowHooks = this.hooks.onOverflow.triggerSync(overflow, rendered, bounds, this); + overflowHooks.forEach((newOverflow) => { + if (typeof newOverflow != "undefined") { + overflow = newOverflow; + } + }); + + if (overflow) { + breakToken = this.createBreakToken(overflow, rendered, source); + // breakToken is nullable + let breakHooks = this.hooks.onBreakToken.triggerSync(breakToken, overflow, rendered, this); + breakHooks.forEach((newToken) => { + if (typeof newToken != "undefined") { + breakToken = newToken; + } + }); + + // Stop removal if we are in a loop + if (breakToken && breakToken.equals(prevBreakToken)) { + return breakToken; + } + + if (breakToken && breakToken["node"] && breakToken["offset"] && breakToken["node"].textContent) { + breakLetter = breakToken["node"].textContent.charAt(breakToken["offset"]); + } else { + breakLetter = undefined; + } + + if (breakToken && breakToken.node && extract) { + let removed = this.removeOverflow(overflow, breakLetter); + this.hooks && this.hooks.afterOverflowRemoved.trigger(removed, rendered, this); + } + + } + return breakToken; + } + + hasOverflow(element, bounds = this.bounds) { + let constrainingElement = element && element.parentNode; // this gets the element, instead of the wrapper for the width workaround + let {width, height} = element.getBoundingClientRect(); + let scrollWidth = constrainingElement ? constrainingElement.scrollWidth : 0; + let scrollHeight = constrainingElement ? constrainingElement.scrollHeight : 0; + return Math.max(Math.floor(width), scrollWidth) > Math.round(bounds.width) || + Math.max(Math.floor(height), scrollHeight) > Math.round(bounds.height); + } + + findOverflow(rendered, bounds = this.bounds, gap = this.gap) { + if (!this.hasOverflow(rendered, bounds)) return; + + let start = Math.floor(bounds.left); + let end = Math.round(bounds.right + gap); + let vStart = Math.round(bounds.top); + let vEnd = Math.round(bounds.bottom); + let range; + + let walker = walk$2(rendered.firstChild, rendered); + + // Find Start + let next, done, node, offset, skip, breakAvoid, prev, br; + while (!done) { + next = walker.next(); + done = next.done; + node = next.value; + skip = false; + breakAvoid = false; + prev = undefined; + br = undefined; + + if (node) { + let pos = getBoundingClientRect(node); + let left = Math.round(pos.left); + let right = Math.floor(pos.right); + let top = Math.round(pos.top); + let bottom = Math.floor(pos.bottom); + + if (!range && (left >= end || top >= vEnd)) { + // Check if it is a float + let isFloat = false; + + // Check if the node is inside a break-inside: avoid table cell + const insideTableCell = parentOf(node, "TD", rendered); + if (insideTableCell && window.getComputedStyle(insideTableCell)["break-inside"] === "avoid") { + // breaking inside a table cell produces unexpected result, as a workaround, we forcibly avoid break inside in a cell. + // But we take the whole row, not just the cell that is causing the break. + prev = insideTableCell.parentElement; + } else if (isElement(node)) { + let styles = window.getComputedStyle(node); + isFloat = styles.getPropertyValue("float") !== "none"; + skip = styles.getPropertyValue("break-inside") === "avoid"; + breakAvoid = node.dataset.breakBefore === "avoid" || node.dataset.previousBreakAfter === "avoid"; + prev = breakAvoid && nodeBefore(node, rendered); + br = node.tagName === "BR" || node.tagName === "WBR"; + } + + let tableRow; + if (node.nodeName === "TR") { + tableRow = node; + } else { + tableRow = parentOf(node, "TR", rendered); + } + if (tableRow) { + // honor break-inside="avoid" in parent tbody/thead + let container = tableRow.parentElement; + if (["TBODY", "THEAD"].includes(container.nodeName)) { + let styles = window.getComputedStyle(container); + if (styles.getPropertyValue("break-inside") === "avoid") prev = container; + } + + // Check if the node is inside a row with a rowspan + const table = parentOf(tableRow, "TABLE", rendered); + const rowspan = table.querySelector("[colspan]"); + if (table && rowspan) { + let columnCount = 0; + for (const cell of Array.from(table.rows[0].cells)) { + columnCount += parseInt(cell.getAttribute("colspan") || "1"); + } + if (tableRow.cells.length !== columnCount) { + let previousRow = tableRow.previousElementSibling; + let previousRowColumnCount; + while (previousRow !== null) { + previousRowColumnCount = 0; + for (const cell of Array.from(previousRow.cells)) { + previousRowColumnCount += parseInt(cell.getAttribute("colspan") || "1"); + } + if (previousRowColumnCount === columnCount) { + break; + } + previousRow = previousRow.previousElementSibling; + } + if (previousRowColumnCount === columnCount) { + prev = previousRow; + } + } + } + } + + if (prev) { + range = document.createRange(); + range.selectNode(prev); + break; + } + + if (!br && !isFloat && isElement(node)) { + range = document.createRange(); + range.selectNode(node); + break; + } + + if (isText(node) && node.textContent.trim().length) { + range = document.createRange(); + range.selectNode(node); + break; + } + + } + + if (!range && isText(node) && + node.textContent.trim().length && + !breakInsideAvoidParentNode(node.parentNode)) { + + let rects = getClientRects(node); + let rect; + left = 0; + top = 0; + for (var i = 0; i != rects.length; i++) { + rect = rects[i]; + if (rect.width > 0 && (!left || rect.left > left)) { + left = rect.left; + } + if (rect.height > 0 && (!top || rect.top > top)) { + top = rect.top; + } + } + + if (left >= end || top >= vEnd) { + range = document.createRange(); + offset = this.textBreak(node, start, end, vStart, vEnd); + if (!offset) { + range = undefined; + } else { + range.setStart(node, offset); + } + break; + } + } + + // Skip children + if (skip || (right <= end && bottom <= vEnd)) { + next = nodeAfter(node, rendered); + if (next) { + walker = walk$2(next, rendered); + } + + } + + } + } + + // Find End + if (range) { + range.setEndAfter(rendered.lastChild); + return range; + } + + } + + findEndToken(rendered, source) { + if (rendered.childNodes.length === 0) { + return; + } + + let lastChild = rendered.lastChild; + + let lastNodeIndex; + while (lastChild && lastChild.lastChild) { + if (!validNode(lastChild)) { + // Only get elements with refs + lastChild = lastChild.previousSibling; + } else if (!validNode(lastChild.lastChild)) { + // Deal with invalid dom items + lastChild = prevValidNode(lastChild.lastChild); + break; + } else { + lastChild = lastChild.lastChild; + } + } + + if (isText(lastChild)) { + + if (lastChild.parentNode.dataset.ref) { + lastNodeIndex = indexOf$2(lastChild); + lastChild = lastChild.parentNode; + } else { + lastChild = lastChild.previousSibling; + } + } + + let original = findElement(lastChild, source); + + if (lastNodeIndex) { + original = original.childNodes[lastNodeIndex]; + } + + let after = nodeAfter(original); + + return this.breakAt(after); + } + + textBreak(node, start, end, vStart, vEnd) { + let wordwalker = words(node); + let left = 0; + let right = 0; + let top = 0; + let bottom = 0; + let word, next, done, pos; + let offset; + while (!done) { + next = wordwalker.next(); + word = next.value; + done = next.done; + + if (!word) { + break; + } + + pos = getBoundingClientRect(word); + + left = Math.floor(pos.left); + right = Math.floor(pos.right); + top = Math.floor(pos.top); + bottom = Math.floor(pos.bottom); + + if (left >= end || top >= vEnd) { + offset = word.startOffset; + break; + } + + if (right > end || bottom > vEnd) { + let letterwalker = letters(word); + let letter, nextLetter, doneLetter; + + while (!doneLetter) { + nextLetter = letterwalker.next(); + letter = nextLetter.value; + doneLetter = nextLetter.done; + + if (!letter) { + break; + } + + pos = getBoundingClientRect(letter); + left = Math.floor(pos.left); + top = Math.floor(pos.top); + + if (left >= end || top >= vEnd) { + offset = letter.startOffset; + done = true; + + break; + } + } + } + + } + + return offset; + } + + removeOverflow(overflow, breakLetter) { + let {startContainer} = overflow; + let extracted = overflow.extractContents(); + + this.hyphenateAtBreak(startContainer, breakLetter); + + return extracted; + } + + hyphenateAtBreak(startContainer, breakLetter) { + if (isText(startContainer)) { + let startText = startContainer.textContent; + let prevLetter = startText[startText.length - 1]; + + // Add a hyphen if previous character is a letter or soft hyphen + if ( + (breakLetter && /^\w|\u00AD$/.test(prevLetter) && /^\w|\u00AD$/.test(breakLetter)) || + (!breakLetter && /^\w|\u00AD$/.test(prevLetter)) + ) { + startContainer.parentNode.classList.add("pagedjs_hyphen"); + startContainer.textContent += this.settings.hyphenGlyph || "\u2011"; + } + } + } + + equalTokens(a, b) { + if (!a || !b) { + return false; + } + if (a["node"] && b["node"] && a["node"] !== b["node"]) { + return false; + } + if (a["offset"] && b["offset"] && a["offset"] !== b["offset"]) { + return false; + } + return true; + } + } + + EventEmitter(Layout.prototype); + + /** + * Render a page + * @class + */ + class Page { + constructor(pagesArea, pageTemplate, blank, hooks, options) { + this.pagesArea = pagesArea; + this.pageTemplate = pageTemplate; + this.blank = blank; + + this.width = undefined; + this.height = undefined; + + this.hooks = hooks; + + this.settings = options || {}; + + // this.element = this.create(this.pageTemplate); + } + + create(template, after) { + //let documentFragment = document.createRange().createContextualFragment( TEMPLATE ); + //let page = documentFragment.children[0]; + let clone = document.importNode(this.pageTemplate.content, true); + + let page, index; + if (after) { + this.pagesArea.insertBefore(clone, after.nextElementSibling); + index = Array.prototype.indexOf.call(this.pagesArea.children, after.nextElementSibling); + page = this.pagesArea.children[index]; + } else { + this.pagesArea.appendChild(clone); + page = this.pagesArea.lastChild; + } + + let pagebox = page.querySelector(".pagedjs_pagebox"); + let area = page.querySelector(".pagedjs_page_content"); + let footnotesArea = page.querySelector(".pagedjs_footnote_area"); + + + let size = area.getBoundingClientRect(); + + + area.style.columnWidth = Math.round(size.width) + "px"; + area.style.columnGap = "calc(var(--pagedjs-margin-right) + var(--pagedjs-margin-left) + var(--pagedjs-bleed-right) + var(--pagedjs-bleed-left) + var(--pagedjs-column-gap-offset))"; + // area.style.overflow = "scroll"; + + this.width = Math.round(size.width); + this.height = Math.round(size.height); + + this.element = page; + this.pagebox = pagebox; + this.area = area; + this.footnotesArea = footnotesArea; + + return page; + } + + createWrapper() { + let wrapper = document.createElement("div"); + + this.area.appendChild(wrapper); + + this.wrapper = wrapper; + + return wrapper; + } + + index(pgnum) { + this.position = pgnum; + + let page = this.element; + // let pagebox = this.pagebox; + + let index = pgnum + 1; + + let id = `page-${index}`; + + this.id = id; + + // page.dataset.pageNumber = index; + + page.dataset.pageNumber = index; + page.setAttribute("id", id); + + if (this.name) { + page.classList.add("pagedjs_" + this.name + "_page"); + } + + if (this.blank) { + page.classList.add("pagedjs_blank_page"); + } + + if (pgnum === 0) { + page.classList.add("pagedjs_first_page"); + } + + if (pgnum % 2 !== 1) { + page.classList.remove("pagedjs_left_page"); + page.classList.add("pagedjs_right_page"); + } else { + page.classList.remove("pagedjs_right_page"); + page.classList.add("pagedjs_left_page"); + } + } + + /* + size(width, height) { + if (width === this.width && height === this.height) { + return; + } + this.width = width; + this.height = height; + + this.element.style.width = Math.round(width) + "px"; + this.element.style.height = Math.round(height) + "px"; + this.element.style.columnWidth = Math.round(width) + "px"; + } + */ + + async layout(contents, breakToken, maxChars) { + + this.clear(); + + this.startToken = breakToken; + + let settings = this.settings; + if (!settings.maxChars && maxChars) { + settings.maxChars = maxChars; + } + + this.layoutMethod = new Layout(this.area, this.hooks, settings); + + let renderResult = await this.layoutMethod.renderTo(this.wrapper, contents, breakToken); + let newBreakToken = renderResult.breakToken; + + this.addListeners(contents); + + this.endToken = newBreakToken; + + return newBreakToken; + } + + async append(contents, breakToken) { + + if (!this.layoutMethod) { + return this.layout(contents, breakToken); + } + + let renderResult = await this.layoutMethod.renderTo(this.wrapper, contents, breakToken); + let newBreakToken = renderResult.breakToken; + + this.endToken = newBreakToken; + + return newBreakToken; + } + + getByParent(ref, entries) { + let e; + for (var i = 0; i < entries.length; i++) { + e = entries[i]; + if (e.dataset.ref === ref) { + return e; + } + } + } + + onOverflow(func) { + this._onOverflow = func; + } + + onUnderflow(func) { + this._onUnderflow = func; + } + + clear() { + this.removeListeners(); + this.wrapper && this.wrapper.remove(); + this.createWrapper(); + } + + addListeners(contents) { + if (typeof ResizeObserver !== "undefined") { + this.addResizeObserver(contents); + } else { + this._checkOverflowAfterResize = this.checkOverflowAfterResize.bind(this, contents); + this.element.addEventListener("overflow", this._checkOverflowAfterResize, false); + this.element.addEventListener("underflow", this._checkOverflowAfterResize, false); + } + // TODO: fall back to mutation observer? + + this._onScroll = function () { + if (this.listening) { + this.element.scrollLeft = 0; + } + }.bind(this); + + // Keep scroll left from changing + this.element.addEventListener("scroll", this._onScroll); + + this.listening = true; + + return true; + } + + removeListeners() { + this.listening = false; + + if (typeof ResizeObserver !== "undefined" && this.ro) { + this.ro.disconnect(); + } else if (this.element) { + this.element.removeEventListener("overflow", this._checkOverflowAfterResize, false); + this.element.removeEventListener("underflow", this._checkOverflowAfterResize, false); + } + + this.element && this.element.removeEventListener("scroll", this._onScroll); + + } + + addResizeObserver(contents) { + let wrapper = this.wrapper; + let prevHeight = wrapper.getBoundingClientRect().height; + this.ro = new ResizeObserver(entries => { + + if (!this.listening) { + return; + } + requestAnimationFrame(() => { + for (let entry of entries) { + const cr = entry.contentRect; + + if (cr.height > prevHeight) { + this.checkOverflowAfterResize(contents); + prevHeight = wrapper.getBoundingClientRect().height; + } else if (cr.height < prevHeight) { // TODO: calc line height && (prevHeight - cr.height) >= 22 + this.checkUnderflowAfterResize(contents); + prevHeight = cr.height; + } + } + }); + }); + + this.ro.observe(wrapper); + } + + checkOverflowAfterResize(contents) { + if (!this.listening || !this.layoutMethod) { + return; + } + + let newBreakToken = this.layoutMethod.findBreakToken(this.wrapper, contents, this.startToken); + + if (newBreakToken) { + this.endToken = newBreakToken; + this._onOverflow && this._onOverflow(newBreakToken); + } + } + + checkUnderflowAfterResize(contents) { + if (!this.listening || !this.layoutMethod) { + return; + } + + let endToken = this.layoutMethod.findEndToken(this.wrapper, contents); + + if (endToken) { + this._onUnderflow && this._onUnderflow(endToken); + } + } + + + destroy() { + this.removeListeners(); + + this.element.remove(); + + this.element = undefined; + this.wrapper = undefined; + } + } + + EventEmitter(Page.prototype); + + /** + * Render a flow of text offscreen + * @class + */ + class ContentParser { + + constructor(content, cb) { + if (content && content.nodeType) { + // handle dom + this.dom = this.add(content); + } else if (typeof content === "string") { + this.dom = this.parse(content); + } + + return this.dom; + } + + parse(markup, mime) { + let range = document.createRange(); + let fragment = range.createContextualFragment(markup); + + this.addRefs(fragment); + + return fragment; + } + + add(contents) { + // let fragment = document.createDocumentFragment(); + // + // let children = [...contents.childNodes]; + // for (let child of children) { + // let clone = child.cloneNode(true); + // fragment.appendChild(clone); + // } + + this.addRefs(contents); + + return contents; + } + + addRefs(content) { + var treeWalker = document.createTreeWalker( + content, + NodeFilter.SHOW_ELEMENT, + null, + false + ); + + let node = treeWalker.nextNode(); + while(node) { + + if (!node.hasAttribute("data-ref")) { + let uuid = UUID(); + node.setAttribute("data-ref", uuid); + } + + if (node.id) { + node.setAttribute("data-id", node.id); + } + + // node.setAttribute("data-children", node.childNodes.length); + + // node.setAttribute("data-text", node.textContent.trim().length); + node = treeWalker.nextNode(); + } + } + + find(ref) { + return this.refs[ref]; + } + + destroy() { + this.refs = undefined; + this.dom = undefined; + } + } + + /** + * Queue for handling tasks one at a time + * @class + * @param {scope} context what this will resolve to in the tasks + */ + class Queue { + constructor(context){ + this._q = []; + this.context = context; + this.tick = requestAnimationFrame; + this.running = false; + this.paused = false; + } + + /** + * Add an item to the queue + * @return {Promise} enqueued + */ + enqueue() { + var deferred, promise; + var queued; + var task = [].shift.call(arguments); + var args = arguments; + + // Handle single args without context + // if(args && !Array.isArray(args)) { + // args = [args]; + // } + if(!task) { + throw new Error("No Task Provided"); + } + + if(typeof task === "function"){ + + deferred = new defer(); + promise = deferred.promise; + + queued = { + "task" : task, + "args" : args, + //"context" : context, + "deferred" : deferred, + "promise" : promise + }; + + } else { + // Task is a promise + queued = { + "promise" : task + }; + + } + + this._q.push(queued); + + // Wait to start queue flush + if (this.paused == false && !this.running) { + this.run(); + } + + return queued.promise; + } + + /** + * Run one item + * @return {Promise} dequeued + */ + dequeue(){ + var inwait, task, result; + + if(this._q.length && !this.paused) { + inwait = this._q.shift(); + task = inwait.task; + if(task){ + // console.log(task) + + result = task.apply(this.context, inwait.args); + + if(result && typeof result["then"] === "function") { + // Task is a function that returns a promise + return result.then(function(){ + inwait.deferred.resolve.apply(this.context, arguments); + }.bind(this), function() { + inwait.deferred.reject.apply(this.context, arguments); + }.bind(this)); + } else { + // Task resolves immediately + inwait.deferred.resolve.apply(this.context, result); + return inwait.promise; + } + + + + } else if(inwait.promise) { + // Task is a promise + return inwait.promise; + } + + } else { + inwait = new defer(); + inwait.deferred.resolve(); + return inwait.promise; + } + + } + + // Run All Immediately + dump(){ + while(this._q.length) { + this.dequeue(); + } + } + + /** + * Run all tasks sequentially, at convince + * @return {Promise} all run + */ + run(){ + + if(!this.running){ + this.running = true; + this.defered = new defer(); + } + + this.tick.call(window, () => { + + if(this._q.length) { + + this.dequeue() + .then(function(){ + this.run(); + }.bind(this)); + + } else { + this.defered.resolve(); + this.running = undefined; + } + + }); + + // Unpause + if(this.paused == true) { + this.paused = false; + } + + return this.defered.promise; + } + + /** + * Flush all, as quickly as possible + * @return {Promise} ran + */ + flush(){ + + if(this.running){ + return this.running; + } + + if(this._q.length) { + this.running = this.dequeue() + .then(function(){ + this.running = undefined; + return this.flush(); + }.bind(this)); + + return this.running; + } + + } + + /** + * Clear all items in wait + * @return {void} + */ + clear(){ + this._q = []; + } + + /** + * Get the number of tasks in the queue + * @return {number} tasks + */ + length(){ + return this._q.length; + } + + /** + * Pause a running queue + * @return {void} + */ + pause(){ + this.paused = true; + } + + /** + * End the queue + * @return {void} + */ + stop(){ + this._q = []; + this.running = false; + this.paused = true; + } + } + + const TEMPLATE = ` +

`; + + /** + * Chop up text into flows + * @class + */ + class Chunker { + constructor(content, renderTo, options) { + // this.preview = preview; + + this.settings = options || {}; + + this.hooks = {}; + this.hooks.beforeParsed = new Hook(this); + this.hooks.filter = new Hook(this); + this.hooks.afterParsed = new Hook(this); + this.hooks.beforePageLayout = new Hook(this); + this.hooks.onPageLayout = new Hook(this); + this.hooks.layout = new Hook(this); + this.hooks.renderNode = new Hook(this); + this.hooks.layoutNode = new Hook(this); + this.hooks.onOverflow = new Hook(this); + this.hooks.afterOverflowRemoved = new Hook(this); + this.hooks.onBreakToken = new Hook(); + this.hooks.beforeRenderResult = new Hook(this); + this.hooks.afterPageLayout = new Hook(this); + this.hooks.finalizePage = new Hook(this); + this.hooks.afterRendered = new Hook(this); + + this.pages = []; + this.total = 0; + + this.q = new Queue(this); + this.stopped = false; + this.rendered = false; + + this.content = content; + + this.charsPerBreak = []; + this.maxChars; + + if (content) { + this.flow(content, renderTo); + } + } + + setup(renderTo) { + this.pagesArea = document.createElement("div"); + this.pagesArea.classList.add("pagedjs_pages"); + + if (renderTo) { + renderTo.appendChild(this.pagesArea); + } else { + document.querySelector("body").appendChild(this.pagesArea); + } + + this.pageTemplate = document.createElement("template"); + this.pageTemplate.innerHTML = TEMPLATE; + + } + + async flow(content, renderTo) { + let parsed; + + await this.hooks.beforeParsed.trigger(content, this); + + parsed = new ContentParser(content); + + this.hooks.filter.triggerSync(parsed); + + this.source = parsed; + this.breakToken = undefined; + + if (this.pagesArea && this.pageTemplate) { + this.q.clear(); + this.removePages(); + } else { + this.setup(renderTo); + } + + this.emit("rendering", parsed); + + await this.hooks.afterParsed.trigger(parsed, this); + + await this.loadFonts(); + + let rendered = await this.render(parsed, this.breakToken); + while (rendered.canceled) { + this.start(); + rendered = await this.render(parsed, this.breakToken); + } + + this.rendered = true; + this.pagesArea.style.setProperty("--pagedjs-page-count", this.total); + + await this.hooks.afterRendered.trigger(this.pages, this); + + this.emit("rendered", this.pages); + + + + return this; + } + + // oversetPages() { + // let overset = []; + // for (let i = 0; i < this.pages.length; i++) { + // let page = this.pages[i]; + // if (page.overset) { + // overset.push(page); + // // page.overset = false; + // } + // } + // return overset; + // } + // + // async handleOverset(parsed) { + // let overset = this.oversetPages(); + // if (overset.length) { + // console.log("overset", overset); + // let index = this.pages.indexOf(overset[0]) + 1; + // console.log("INDEX", index); + // + // // Remove pages + // // this.removePages(index); + // + // // await this.render(parsed, overset[0].overset); + // + // // return this.handleOverset(parsed); + // } + // } + + async render(parsed, startAt) { + let renderer = this.layout(parsed, startAt); + + let done = false; + let result; + while (!done) { + result = await this.q.enqueue(() => { return this.renderAsync(renderer); }); + done = result.done; + } + + return result; + } + + start() { + this.rendered = false; + this.stopped = false; + } + + stop() { + this.stopped = true; + // this.q.clear(); + } + + renderOnIdle(renderer) { + return new Promise(resolve => { + requestIdleCallback(async () => { + if (this.stopped) { + return resolve({ done: true, canceled: true }); + } + let result = await renderer.next(); + if (this.stopped) { + resolve({ done: true, canceled: true }); + } else { + resolve(result); + } + }); + }); + } + + async renderAsync(renderer) { + if (this.stopped) { + return { done: true, canceled: true }; + } + let result = await renderer.next(); + if (this.stopped) { + return { done: true, canceled: true }; + } else { + return result; + } + } + + async handleBreaks(node, force) { + let currentPage = this.total + 1; + let currentPosition = currentPage % 2 === 0 ? "left" : "right"; + // TODO: Recto and Verso should reverse for rtl languages + let currentSide = currentPage % 2 === 0 ? "verso" : "recto"; + let previousBreakAfter; + let breakBefore; + let page; + + if (currentPage === 1) { + return; + } + + if (node && + typeof node.dataset !== "undefined" && + typeof node.dataset.previousBreakAfter !== "undefined") { + previousBreakAfter = node.dataset.previousBreakAfter; + } + + if (node && + typeof node.dataset !== "undefined" && + typeof node.dataset.breakBefore !== "undefined") { + breakBefore = node.dataset.breakBefore; + } + + if (force) { + page = this.addPage(true); + } else if( previousBreakAfter && + (previousBreakAfter === "left" || previousBreakAfter === "right") && + previousBreakAfter !== currentPosition) { + page = this.addPage(true); + } else if( previousBreakAfter && + (previousBreakAfter === "verso" || previousBreakAfter === "recto") && + previousBreakAfter !== currentSide) { + page = this.addPage(true); + } else if( breakBefore && + (breakBefore === "left" || breakBefore === "right") && + breakBefore !== currentPosition) { + page = this.addPage(true); + } else if( breakBefore && + (breakBefore === "verso" || breakBefore === "recto") && + breakBefore !== currentSide) { + page = this.addPage(true); + } + + if (page) { + await this.hooks.beforePageLayout.trigger(page, undefined, undefined, this); + this.emit("page", page); + // await this.hooks.layout.trigger(page.element, page, undefined, this); + await this.hooks.afterPageLayout.trigger(page.element, page, undefined, this); + await this.hooks.finalizePage.trigger(page.element, page, undefined, this); + this.emit("renderedPage", page); + } + } + + async *layout(content, startAt) { + let breakToken = startAt || false; + let tokens = []; + + while (breakToken !== undefined && (true)) { + + if (breakToken && breakToken.node) { + await this.handleBreaks(breakToken.node); + } else { + await this.handleBreaks(content.firstChild); + } + + let page = this.addPage(); + + await this.hooks.beforePageLayout.trigger(page, content, breakToken, this); + this.emit("page", page); + + // Layout content in the page, starting from the breakToken + breakToken = await page.layout(content, breakToken, this.maxChars); + + if (breakToken) { + let newToken = breakToken.toJSON(true); + if (tokens.lastIndexOf(newToken) > -1) { + // loop + let err = new OverflowContentError("Layout repeated", [breakToken.node]); + console.error("Layout repeated at: ", breakToken.node); + return err; + } else { + tokens.push(newToken); + } + } + + await this.hooks.afterPageLayout.trigger(page.element, page, breakToken, this); + await this.hooks.finalizePage.trigger(page.element, page, undefined, this); + this.emit("renderedPage", page); + + this.recoredCharLength(page.wrapper.textContent.length); + + yield breakToken; + + // Stop if we get undefined, showing we have reached the end of the content + } + + + } + + recoredCharLength(length) { + if (length === 0) { + return; + } + + this.charsPerBreak.push(length); + + // Keep the length of the last few breaks + if (this.charsPerBreak.length > 4) { + this.charsPerBreak.shift(); + } + + this.maxChars = this.charsPerBreak.reduce((a, b) => a + b, 0) / (this.charsPerBreak.length); + } + + removePages(fromIndex=0) { + + if (fromIndex >= this.pages.length) { + return; + } + + // Remove pages + for (let i = fromIndex; i < this.pages.length; i++) { + this.pages[i].destroy(); + } + + if (fromIndex > 0) { + this.pages.splice(fromIndex); + } else { + this.pages = []; + } + + this.total = this.pages.length; + } + + addPage(blank) { + let lastPage = this.pages[this.pages.length - 1]; + // Create a new page from the template + let page = new Page(this.pagesArea, this.pageTemplate, blank, this.hooks, this.settings); + + this.pages.push(page); + + // Create the pages + page.create(undefined, lastPage && lastPage.element); + + page.index(this.total); + + if (!blank) { + // Listen for page overflow + page.onOverflow((overflowToken) => { + console.warn("overflow on", page.id, overflowToken); + + // Only reflow while rendering + if (this.rendered) { + return; + } + + let index = this.pages.indexOf(page) + 1; + + // Stop the rendering + this.stop(); + + // Set the breakToken to resume at + this.breakToken = overflowToken; + + // Remove pages + this.removePages(index); + + if (this.rendered === true) { + this.rendered = false; + + this.q.enqueue(async () => { + + this.start(); + + await this.render(this.source, this.breakToken); + + this.rendered = true; + + }); + } + + + }); + + page.onUnderflow((overflowToken) => { + // console.log("underflow on", page.id, overflowToken); + + // page.append(this.source, overflowToken); + + }); + } + + this.total = this.pages.length; + + return page; + } + /* + insertPage(index, blank) { + let lastPage = this.pages[index]; + // Create a new page from the template + let page = new Page(this.pagesArea, this.pageTemplate, blank, this.hooks); + + let total = this.pages.splice(index, 0, page); + + // Create the pages + page.create(undefined, lastPage && lastPage.element); + + page.index(index + 1); + + for (let i = index + 2; i < this.pages.length; i++) { + this.pages[i].index(i); + } + + if (!blank) { + // Listen for page overflow + page.onOverflow((overflowToken) => { + if (total < this.pages.length) { + this.pages[total].layout(this.source, overflowToken); + } else { + let newPage = this.addPage(); + newPage.layout(this.source, overflowToken); + } + }); + + page.onUnderflow(() => { + // console.log("underflow on", page.id); + }); + } + + this.total += 1; + + return page; + } + */ + + async clonePage(originalPage) { + let lastPage = this.pages[this.pages.length - 1]; + + let page = new Page(this.pagesArea, this.pageTemplate, false, this.hooks); + + this.pages.push(page); + + // Create the pages + page.create(undefined, lastPage && lastPage.element); + + page.index(this.total); + + await this.hooks.beforePageLayout.trigger(page, undefined, undefined, this); + this.emit("page", page); + + for (const className of originalPage.element.classList) { + if (className !== "pagedjs_left_page" && className !== "pagedjs_right_page") { + page.element.classList.add(className); + } + } + + await this.hooks.afterPageLayout.trigger(page.element, page, undefined, this); + await this.hooks.finalizePage.trigger(page.element, page, undefined, this); + this.emit("renderedPage", page); + } + + loadFonts() { + let fontPromises = []; + (document.fonts || []).forEach((fontFace) => { + if (fontFace.status !== "loaded") { + let fontLoaded = fontFace.load().then((r) => { + return fontFace.family; + }, (r) => { + console.warn("Failed to preload font-family:", fontFace.family); + return fontFace.family; + }); + fontPromises.push(fontLoaded); + } + }); + return Promise.all(fontPromises).catch((err) => { + console.warn(err); + }); + } + + destroy() { + this.pagesArea.remove(); + this.pageTemplate.remove(); + } + + } + + EventEmitter(Chunker.prototype); + + var syntax = {exports: {}}; + + var create$4 = {}; + + // + // list + // ┌──────┐ + // ┌──────────────┼─head │ + // │ │ tail─┼──────────────┐ + // │ └──────┘ │ + // ▼ ▼ + // item item item item + // ┌──────┐ ┌──────┐ ┌──────┐ ┌──────┐ + // null ◀──┼─prev │◀───┼─prev │◀───┼─prev │◀───┼─prev │ + // │ next─┼───▶│ next─┼───▶│ next─┼───▶│ next─┼──▶ null + // ├──────┤ ├──────┤ ├──────┤ ├──────┤ + // │ data │ │ data │ │ data │ │ data │ + // └──────┘ └──────┘ └──────┘ └──────┘ + // + + function createItem(data) { + return { + prev: null, + next: null, + data: data + }; + } + + function allocateCursor(node, prev, next) { + var cursor; + + if (cursors !== null) { + cursor = cursors; + cursors = cursors.cursor; + cursor.prev = prev; + cursor.next = next; + cursor.cursor = node.cursor; + } else { + cursor = { + prev: prev, + next: next, + cursor: node.cursor + }; + } + + node.cursor = cursor; + + return cursor; + } + + function releaseCursor(node) { + var cursor = node.cursor; + + node.cursor = cursor.cursor; + cursor.prev = null; + cursor.next = null; + cursor.cursor = cursors; + cursors = cursor; + } + + var cursors = null; + var List$6 = function() { + this.cursor = null; + this.head = null; + this.tail = null; + }; + + List$6.createItem = createItem; + List$6.prototype.createItem = createItem; + + List$6.prototype.updateCursors = function(prevOld, prevNew, nextOld, nextNew) { + var cursor = this.cursor; + + while (cursor !== null) { + if (cursor.prev === prevOld) { + cursor.prev = prevNew; + } + + if (cursor.next === nextOld) { + cursor.next = nextNew; + } + + cursor = cursor.cursor; + } + }; + + List$6.prototype.getSize = function() { + var size = 0; + var cursor = this.head; + + while (cursor) { + size++; + cursor = cursor.next; + } + + return size; + }; + + List$6.prototype.fromArray = function(array) { + var cursor = null; + + this.head = null; + + for (var i = 0; i < array.length; i++) { + var item = createItem(array[i]); + + if (cursor !== null) { + cursor.next = item; + } else { + this.head = item; + } + + item.prev = cursor; + cursor = item; + } + + this.tail = cursor; + + return this; + }; + + List$6.prototype.toArray = function() { + var cursor = this.head; + var result = []; + + while (cursor) { + result.push(cursor.data); + cursor = cursor.next; + } + + return result; + }; + + List$6.prototype.toJSON = List$6.prototype.toArray; + + List$6.prototype.isEmpty = function() { + return this.head === null; + }; + + List$6.prototype.first = function() { + return this.head && this.head.data; + }; + + List$6.prototype.last = function() { + return this.tail && this.tail.data; + }; + + List$6.prototype.each = function(fn, context) { + var item; + + if (context === undefined) { + context = this; + } + + // push cursor + var cursor = allocateCursor(this, null, this.head); + + while (cursor.next !== null) { + item = cursor.next; + cursor.next = item.next; + + fn.call(context, item.data, item, this); + } + + // pop cursor + releaseCursor(this); + }; + + List$6.prototype.forEach = List$6.prototype.each; + + List$6.prototype.eachRight = function(fn, context) { + var item; + + if (context === undefined) { + context = this; + } + + // push cursor + var cursor = allocateCursor(this, this.tail, null); + + while (cursor.prev !== null) { + item = cursor.prev; + cursor.prev = item.prev; + + fn.call(context, item.data, item, this); + } + + // pop cursor + releaseCursor(this); + }; + + List$6.prototype.forEachRight = List$6.prototype.eachRight; + + List$6.prototype.reduce = function(fn, initialValue, context) { + var item; + + if (context === undefined) { + context = this; + } + + // push cursor + var cursor = allocateCursor(this, null, this.head); + var acc = initialValue; + + while (cursor.next !== null) { + item = cursor.next; + cursor.next = item.next; + + acc = fn.call(context, acc, item.data, item, this); + } + + // pop cursor + releaseCursor(this); + + return acc; + }; + + List$6.prototype.reduceRight = function(fn, initialValue, context) { + var item; + + if (context === undefined) { + context = this; + } + + // push cursor + var cursor = allocateCursor(this, this.tail, null); + var acc = initialValue; + + while (cursor.prev !== null) { + item = cursor.prev; + cursor.prev = item.prev; + + acc = fn.call(context, acc, item.data, item, this); + } + + // pop cursor + releaseCursor(this); + + return acc; + }; + + List$6.prototype.nextUntil = function(start, fn, context) { + if (start === null) { + return; + } + + var item; + + if (context === undefined) { + context = this; + } + + // push cursor + var cursor = allocateCursor(this, null, start); + + while (cursor.next !== null) { + item = cursor.next; + cursor.next = item.next; + + if (fn.call(context, item.data, item, this)) { + break; + } + } + + // pop cursor + releaseCursor(this); + }; + + List$6.prototype.prevUntil = function(start, fn, context) { + if (start === null) { + return; + } + + var item; + + if (context === undefined) { + context = this; + } + + // push cursor + var cursor = allocateCursor(this, start, null); + + while (cursor.prev !== null) { + item = cursor.prev; + cursor.prev = item.prev; + + if (fn.call(context, item.data, item, this)) { + break; + } + } + + // pop cursor + releaseCursor(this); + }; + + List$6.prototype.some = function(fn, context) { + var cursor = this.head; + + if (context === undefined) { + context = this; + } + + while (cursor !== null) { + if (fn.call(context, cursor.data, cursor, this)) { + return true; + } + + cursor = cursor.next; + } + + return false; + }; + + List$6.prototype.map = function(fn, context) { + var result = new List$6(); + var cursor = this.head; + + if (context === undefined) { + context = this; + } + + while (cursor !== null) { + result.appendData(fn.call(context, cursor.data, cursor, this)); + cursor = cursor.next; + } + + return result; + }; + + List$6.prototype.filter = function(fn, context) { + var result = new List$6(); + var cursor = this.head; + + if (context === undefined) { + context = this; + } + + while (cursor !== null) { + if (fn.call(context, cursor.data, cursor, this)) { + result.appendData(cursor.data); + } + cursor = cursor.next; + } + + return result; + }; + + List$6.prototype.clear = function() { + this.head = null; + this.tail = null; + }; + + List$6.prototype.copy = function() { + var result = new List$6(); + var cursor = this.head; + + while (cursor !== null) { + result.insert(createItem(cursor.data)); + cursor = cursor.next; + } + + return result; + }; + + List$6.prototype.prepend = function(item) { + // head + // ^ + // item + this.updateCursors(null, item, this.head, item); + + // insert to the beginning of the list + if (this.head !== null) { + // new item <- first item + this.head.prev = item; + + // new item -> first item + item.next = this.head; + } else { + // if list has no head, then it also has no tail + // in this case tail points to the new item + this.tail = item; + } + + // head always points to new item + this.head = item; + + return this; + }; + + List$6.prototype.prependData = function(data) { + return this.prepend(createItem(data)); + }; + + List$6.prototype.append = function(item) { + return this.insert(item); + }; + + List$6.prototype.appendData = function(data) { + return this.insert(createItem(data)); + }; + + List$6.prototype.insert = function(item, before) { + if (before !== undefined && before !== null) { + // prev before + // ^ + // item + this.updateCursors(before.prev, item, before, item); + + if (before.prev === null) { + // insert to the beginning of list + if (this.head !== before) { + throw new Error('before doesn\'t belong to list'); + } + + // since head points to before therefore list doesn't empty + // no need to check tail + this.head = item; + before.prev = item; + item.next = before; + + this.updateCursors(null, item); + } else { + + // insert between two items + before.prev.next = item; + item.prev = before.prev; + + before.prev = item; + item.next = before; + } + } else { + // tail + // ^ + // item + this.updateCursors(this.tail, item, null, item); + + // insert to the ending of the list + if (this.tail !== null) { + // last item -> new item + this.tail.next = item; + + // last item <- new item + item.prev = this.tail; + } else { + // if list has no tail, then it also has no head + // in this case head points to new item + this.head = item; + } + + // tail always points to new item + this.tail = item; + } + + return this; + }; + + List$6.prototype.insertData = function(data, before) { + return this.insert(createItem(data), before); + }; + + List$6.prototype.remove = function(item) { + // item + // ^ + // prev next + this.updateCursors(item, item.prev, item, item.next); + + if (item.prev !== null) { + item.prev.next = item.next; + } else { + if (this.head !== item) { + throw new Error('item doesn\'t belong to list'); + } + + this.head = item.next; + } + + if (item.next !== null) { + item.next.prev = item.prev; + } else { + if (this.tail !== item) { + throw new Error('item doesn\'t belong to list'); + } + + this.tail = item.prev; + } + + item.prev = null; + item.next = null; + + return item; + }; + + List$6.prototype.push = function(data) { + this.insert(createItem(data)); + }; + + List$6.prototype.pop = function() { + if (this.tail !== null) { + return this.remove(this.tail); + } + }; + + List$6.prototype.unshift = function(data) { + this.prepend(createItem(data)); + }; + + List$6.prototype.shift = function() { + if (this.head !== null) { + return this.remove(this.head); + } + }; + + List$6.prototype.prependList = function(list) { + return this.insertList(list, this.head); + }; + + List$6.prototype.appendList = function(list) { + return this.insertList(list); + }; + + List$6.prototype.insertList = function(list, before) { + // ignore empty lists + if (list.head === null) { + return this; + } + + if (before !== undefined && before !== null) { + this.updateCursors(before.prev, list.tail, before, list.head); + + // insert in the middle of dist list + if (before.prev !== null) { + // before.prev <-> list.head + before.prev.next = list.head; + list.head.prev = before.prev; + } else { + this.head = list.head; + } + + before.prev = list.tail; + list.tail.next = before; + } else { + this.updateCursors(this.tail, list.tail, null, list.head); + + // insert to end of the list + if (this.tail !== null) { + // if destination list has a tail, then it also has a head, + // but head doesn't change + + // dest tail -> source head + this.tail.next = list.head; + + // dest tail <- source head + list.head.prev = this.tail; + } else { + // if list has no a tail, then it also has no a head + // in this case points head to new item + this.head = list.head; + } + + // tail always start point to new item + this.tail = list.tail; + } + + list.head = null; + list.tail = null; + + return this; + }; + + List$6.prototype.replace = function(oldItem, newItemOrList) { + if ('head' in newItemOrList) { + this.insertList(newItemOrList, oldItem); + } else { + this.insert(newItemOrList, oldItem); + } + + this.remove(oldItem); + }; + + var List_1 = List$6; + + var createCustomError$3 = function createCustomError(name, message) { + // use Object.create(), because some VMs prevent setting line/column otherwise + // (iOS Safari 10 even throws an exception) + var error = Object.create(SyntaxError.prototype); + var errorStack = new Error(); + + error.name = name; + error.message = message; + + Object.defineProperty(error, 'stack', { + get: function() { + return (errorStack.stack || '').replace(/^(.+\n){1,3}/, name + ': ' + message + '\n'); + } + }); + + return error; + }; + + var createCustomError$2 = createCustomError$3; + var MAX_LINE_LENGTH = 100; + var OFFSET_CORRECTION = 60; + var TAB_REPLACEMENT = ' '; + + function sourceFragment(error, extraLines) { + function processLines(start, end) { + return lines.slice(start, end).map(function(line, idx) { + var num = String(start + idx + 1); + + while (num.length < maxNumLength) { + num = ' ' + num; + } + + return num + ' |' + line; + }).join('\n'); + } + + var lines = error.source.split(/\r\n?|\n|\f/); + var line = error.line; + var column = error.column; + var startLine = Math.max(1, line - extraLines) - 1; + var endLine = Math.min(line + extraLines, lines.length + 1); + var maxNumLength = Math.max(4, String(endLine).length) + 1; + var cutLeft = 0; + + // column correction according to replaced tab before column + column += (TAB_REPLACEMENT.length - 1) * (lines[line - 1].substr(0, column - 1).match(/\t/g) || []).length; + + if (column > MAX_LINE_LENGTH) { + cutLeft = column - OFFSET_CORRECTION + 3; + column = OFFSET_CORRECTION - 2; + } + + for (var i = startLine; i <= endLine; i++) { + if (i >= 0 && i < lines.length) { + lines[i] = lines[i].replace(/\t/g, TAB_REPLACEMENT); + lines[i] = + (cutLeft > 0 && lines[i].length > cutLeft ? '\u2026' : '') + + lines[i].substr(cutLeft, MAX_LINE_LENGTH - 2) + + (lines[i].length > cutLeft + MAX_LINE_LENGTH - 1 ? '\u2026' : ''); + } + } + + return [ + processLines(startLine, line), + new Array(column + maxNumLength + 2).join('-') + '^', + processLines(line, endLine) + ].filter(Boolean).join('\n'); + } + + var SyntaxError$4 = function(message, source, offset, line, column) { + var error = createCustomError$2('SyntaxError', message); + + error.source = source; + error.offset = offset; + error.line = line; + error.column = column; + + error.sourceFragment = function(extraLines) { + return sourceFragment(error, isNaN(extraLines) ? 0 : extraLines); + }; + Object.defineProperty(error, 'formattedMessage', { + get: function() { + return ( + 'Parse error: ' + error.message + '\n' + + sourceFragment(error, 2) + ); + } + }); + + // for backward capability + error.parseError = { + offset: offset, + line: line, + column: column + }; + + return error; + }; + + var _SyntaxError$1 = SyntaxError$4; + + // CSS Syntax Module Level 3 + // https://www.w3.org/TR/css-syntax-3/ + var TYPE$H = { + EOF: 0, // + Ident: 1, // + Function: 2, // + AtKeyword: 3, // + Hash: 4, // + String: 5, // + BadString: 6, // + Url: 7, // + BadUrl: 8, // + Delim: 9, // + Number: 10, // + Percentage: 11, // + Dimension: 12, // + WhiteSpace: 13, // + CDO: 14, // + CDC: 15, // + Colon: 16, // : + Semicolon: 17, // ; + Comma: 18, // , + LeftSquareBracket: 19, // <[-token> + RightSquareBracket: 20, // <]-token> + LeftParenthesis: 21, // <(-token> + RightParenthesis: 22, // <)-token> + LeftCurlyBracket: 23, // <{-token> + RightCurlyBracket: 24, // <}-token> + Comment: 25 + }; + + var NAME$3 = Object.keys(TYPE$H).reduce(function(result, key) { + result[TYPE$H[key]] = key; + return result; + }, {}); + + var _const = { + TYPE: TYPE$H, + NAME: NAME$3 + }; + + var EOF$1 = 0; + + // https://drafts.csswg.org/css-syntax-3/ + // § 4.2. Definitions + + // digit + // A code point between U+0030 DIGIT ZERO (0) and U+0039 DIGIT NINE (9). + function isDigit$5(code) { + return code >= 0x0030 && code <= 0x0039; + } + + // hex digit + // A digit, or a code point between U+0041 LATIN CAPITAL LETTER A (A) and U+0046 LATIN CAPITAL LETTER F (F), + // or a code point between U+0061 LATIN SMALL LETTER A (a) and U+0066 LATIN SMALL LETTER F (f). + function isHexDigit$4(code) { + return ( + isDigit$5(code) || // 0 .. 9 + (code >= 0x0041 && code <= 0x0046) || // A .. F + (code >= 0x0061 && code <= 0x0066) // a .. f + ); + } + + // uppercase letter + // A code point between U+0041 LATIN CAPITAL LETTER A (A) and U+005A LATIN CAPITAL LETTER Z (Z). + function isUppercaseLetter$1(code) { + return code >= 0x0041 && code <= 0x005A; + } + + // lowercase letter + // A code point between U+0061 LATIN SMALL LETTER A (a) and U+007A LATIN SMALL LETTER Z (z). + function isLowercaseLetter(code) { + return code >= 0x0061 && code <= 0x007A; + } + + // letter + // An uppercase letter or a lowercase letter. + function isLetter(code) { + return isUppercaseLetter$1(code) || isLowercaseLetter(code); + } + + // non-ASCII code point + // A code point with a value equal to or greater than U+0080 . + function isNonAscii(code) { + return code >= 0x0080; + } + + // name-start code point + // A letter, a non-ASCII code point, or U+005F LOW LINE (_). + function isNameStart(code) { + return isLetter(code) || isNonAscii(code) || code === 0x005F; + } + + // name code point + // A name-start code point, a digit, or U+002D HYPHEN-MINUS (-). + function isName$2(code) { + return isNameStart(code) || isDigit$5(code) || code === 0x002D; + } + + // non-printable code point + // A code point between U+0000 NULL and U+0008 BACKSPACE, or U+000B LINE TABULATION, + // or a code point between U+000E SHIFT OUT and U+001F INFORMATION SEPARATOR ONE, or U+007F DELETE. + function isNonPrintable(code) { + return ( + (code >= 0x0000 && code <= 0x0008) || + (code === 0x000B) || + (code >= 0x000E && code <= 0x001F) || + (code === 0x007F) + ); + } + + // newline + // U+000A LINE FEED. Note that U+000D CARRIAGE RETURN and U+000C FORM FEED are not included in this definition, + // as they are converted to U+000A LINE FEED during preprocessing. + // TODO: we doesn't do a preprocessing, so check a code point for U+000D CARRIAGE RETURN and U+000C FORM FEED + function isNewline$1(code) { + return code === 0x000A || code === 0x000D || code === 0x000C; + } + + // whitespace + // A newline, U+0009 CHARACTER TABULATION, or U+0020 SPACE. + function isWhiteSpace$2(code) { + return isNewline$1(code) || code === 0x0020 || code === 0x0009; + } + + // § 4.3.8. Check if two code points are a valid escape + function isValidEscape$2(first, second) { + // If the first code point is not U+005C REVERSE SOLIDUS (\), return false. + if (first !== 0x005C) { + return false; + } + + // Otherwise, if the second code point is a newline or EOF, return false. + if (isNewline$1(second) || second === EOF$1) { + return false; + } + + // Otherwise, return true. + return true; + } + + // § 4.3.9. Check if three code points would start an identifier + function isIdentifierStart$2(first, second, third) { + // Look at the first code point: + + // U+002D HYPHEN-MINUS + if (first === 0x002D) { + // If the second code point is a name-start code point or a U+002D HYPHEN-MINUS, + // or the second and third code points are a valid escape, return true. Otherwise, return false. + return ( + isNameStart(second) || + second === 0x002D || + isValidEscape$2(second, third) + ); + } + + // name-start code point + if (isNameStart(first)) { + // Return true. + return true; + } + + // U+005C REVERSE SOLIDUS (\) + if (first === 0x005C) { + // If the first and second code points are a valid escape, return true. Otherwise, return false. + return isValidEscape$2(first, second); + } + + // anything else + // Return false. + return false; + } + + // § 4.3.10. Check if three code points would start a number + function isNumberStart$1(first, second, third) { + // Look at the first code point: + + // U+002B PLUS SIGN (+) + // U+002D HYPHEN-MINUS (-) + if (first === 0x002B || first === 0x002D) { + // If the second code point is a digit, return true. + if (isDigit$5(second)) { + return 2; + } + + // Otherwise, if the second code point is a U+002E FULL STOP (.) + // and the third code point is a digit, return true. + // Otherwise, return false. + return second === 0x002E && isDigit$5(third) ? 3 : 0; + } + + // U+002E FULL STOP (.) + if (first === 0x002E) { + // If the second code point is a digit, return true. Otherwise, return false. + return isDigit$5(second) ? 2 : 0; + } + + // digit + if (isDigit$5(first)) { + // Return true. + return 1; + } + + // anything else + // Return false. + return 0; + } + + // + // Misc + // + + // detect BOM (https://en.wikipedia.org/wiki/Byte_order_mark) + function isBOM$2(code) { + // UTF-16BE + if (code === 0xFEFF) { + return 1; + } + + // UTF-16LE + if (code === 0xFFFE) { + return 1; + } + + return 0; + } + + // Fast code category + // + // https://drafts.csswg.org/css-syntax/#tokenizer-definitions + // > non-ASCII code point + // > A code point with a value equal to or greater than U+0080 + // > name-start code point + // > A letter, a non-ASCII code point, or U+005F LOW LINE (_). + // > name code point + // > A name-start code point, a digit, or U+002D HYPHEN-MINUS (-) + // That means only ASCII code points has a special meaning and we define a maps for 0..127 codes only + var CATEGORY = new Array(0x80); + charCodeCategory$1.Eof = 0x80; + charCodeCategory$1.WhiteSpace = 0x82; + charCodeCategory$1.Digit = 0x83; + charCodeCategory$1.NameStart = 0x84; + charCodeCategory$1.NonPrintable = 0x85; + + for (var i = 0; i < CATEGORY.length; i++) { + switch (true) { + case isWhiteSpace$2(i): + CATEGORY[i] = charCodeCategory$1.WhiteSpace; + break; + + case isDigit$5(i): + CATEGORY[i] = charCodeCategory$1.Digit; + break; + + case isNameStart(i): + CATEGORY[i] = charCodeCategory$1.NameStart; + break; + + case isNonPrintable(i): + CATEGORY[i] = charCodeCategory$1.NonPrintable; + break; + + default: + CATEGORY[i] = i || charCodeCategory$1.Eof; + } + } + + function charCodeCategory$1(code) { + return code < 0x80 ? CATEGORY[code] : charCodeCategory$1.NameStart; + } + var charCodeDefinitions$1 = { + isDigit: isDigit$5, + isHexDigit: isHexDigit$4, + isUppercaseLetter: isUppercaseLetter$1, + isLowercaseLetter: isLowercaseLetter, + isLetter: isLetter, + isNonAscii: isNonAscii, + isNameStart: isNameStart, + isName: isName$2, + isNonPrintable: isNonPrintable, + isNewline: isNewline$1, + isWhiteSpace: isWhiteSpace$2, + isValidEscape: isValidEscape$2, + isIdentifierStart: isIdentifierStart$2, + isNumberStart: isNumberStart$1, + + isBOM: isBOM$2, + charCodeCategory: charCodeCategory$1 + }; + + var charCodeDef = charCodeDefinitions$1; + var isDigit$4 = charCodeDef.isDigit; + var isHexDigit$3 = charCodeDef.isHexDigit; + var isUppercaseLetter = charCodeDef.isUppercaseLetter; + var isName$1 = charCodeDef.isName; + var isWhiteSpace$1 = charCodeDef.isWhiteSpace; + var isValidEscape$1 = charCodeDef.isValidEscape; + + function getCharCode(source, offset) { + return offset < source.length ? source.charCodeAt(offset) : 0; + } + + function getNewlineLength$1(source, offset, code) { + if (code === 13 /* \r */ && getCharCode(source, offset + 1) === 10 /* \n */) { + return 2; + } + + return 1; + } + + function cmpChar$5(testStr, offset, referenceCode) { + var code = testStr.charCodeAt(offset); + + // code.toLowerCase() for A..Z + if (isUppercaseLetter(code)) { + code = code | 32; + } + + return code === referenceCode; + } + + function cmpStr$6(testStr, start, end, referenceStr) { + if (end - start !== referenceStr.length) { + return false; + } + + if (start < 0 || end > testStr.length) { + return false; + } + + for (var i = start; i < end; i++) { + var testCode = testStr.charCodeAt(i); + var referenceCode = referenceStr.charCodeAt(i - start); + + // testCode.toLowerCase() for A..Z + if (isUppercaseLetter(testCode)) { + testCode = testCode | 32; + } + + if (testCode !== referenceCode) { + return false; + } + } + + return true; + } + + function findWhiteSpaceStart$1(source, offset) { + for (; offset >= 0; offset--) { + if (!isWhiteSpace$1(source.charCodeAt(offset))) { + break; + } + } + + return offset + 1; + } + + function findWhiteSpaceEnd$1(source, offset) { + for (; offset < source.length; offset++) { + if (!isWhiteSpace$1(source.charCodeAt(offset))) { + break; + } + } + + return offset; + } + + function findDecimalNumberEnd(source, offset) { + for (; offset < source.length; offset++) { + if (!isDigit$4(source.charCodeAt(offset))) { + break; + } + } + + return offset; + } + + // § 4.3.7. Consume an escaped code point + function consumeEscaped$1(source, offset) { + // It assumes that the U+005C REVERSE SOLIDUS (\) has already been consumed and + // that the next input code point has already been verified to be part of a valid escape. + offset += 2; + + // hex digit + if (isHexDigit$3(getCharCode(source, offset - 1))) { + // Consume as many hex digits as possible, but no more than 5. + // Note that this means 1-6 hex digits have been consumed in total. + for (var maxOffset = Math.min(source.length, offset + 5); offset < maxOffset; offset++) { + if (!isHexDigit$3(getCharCode(source, offset))) { + break; + } + } + + // If the next input code point is whitespace, consume it as well. + var code = getCharCode(source, offset); + if (isWhiteSpace$1(code)) { + offset += getNewlineLength$1(source, offset, code); + } + } + + return offset; + } + + // §4.3.11. Consume a name + // Note: This algorithm does not do the verification of the first few code points that are necessary + // to ensure the returned code points would constitute an . If that is the intended use, + // ensure that the stream starts with an identifier before calling this algorithm. + function consumeName$1(source, offset) { + // Let result initially be an empty string. + // Repeatedly consume the next input code point from the stream: + for (; offset < source.length; offset++) { + var code = source.charCodeAt(offset); + + // name code point + if (isName$1(code)) { + // Append the code point to result. + continue; + } + + // the stream starts with a valid escape + if (isValidEscape$1(code, getCharCode(source, offset + 1))) { + // Consume an escaped code point. Append the returned code point to result. + offset = consumeEscaped$1(source, offset) - 1; + continue; + } + + // anything else + // Reconsume the current input code point. Return result. + break; + } + + return offset; + } + + // §4.3.12. Consume a number + function consumeNumber$5(source, offset) { + var code = source.charCodeAt(offset); + + // 2. If the next input code point is U+002B PLUS SIGN (+) or U+002D HYPHEN-MINUS (-), + // consume it and append it to repr. + if (code === 0x002B || code === 0x002D) { + code = source.charCodeAt(offset += 1); + } + + // 3. While the next input code point is a digit, consume it and append it to repr. + if (isDigit$4(code)) { + offset = findDecimalNumberEnd(source, offset + 1); + code = source.charCodeAt(offset); + } + + // 4. If the next 2 input code points are U+002E FULL STOP (.) followed by a digit, then: + if (code === 0x002E && isDigit$4(source.charCodeAt(offset + 1))) { + // 4.1 Consume them. + // 4.2 Append them to repr. + code = source.charCodeAt(offset += 2); + + // 4.3 Set type to "number". + // TODO + + // 4.4 While the next input code point is a digit, consume it and append it to repr. + + offset = findDecimalNumberEnd(source, offset); + } + + // 5. If the next 2 or 3 input code points are U+0045 LATIN CAPITAL LETTER E (E) + // or U+0065 LATIN SMALL LETTER E (e), ... , followed by a digit, then: + if (cmpChar$5(source, offset, 101 /* e */)) { + var sign = 0; + code = source.charCodeAt(offset + 1); + + // ... optionally followed by U+002D HYPHEN-MINUS (-) or U+002B PLUS SIGN (+) ... + if (code === 0x002D || code === 0x002B) { + sign = 1; + code = source.charCodeAt(offset + 2); + } + + // ... followed by a digit + if (isDigit$4(code)) { + // 5.1 Consume them. + // 5.2 Append them to repr. + + // 5.3 Set type to "number". + // TODO + + // 5.4 While the next input code point is a digit, consume it and append it to repr. + offset = findDecimalNumberEnd(source, offset + 1 + sign + 1); + } + } + + return offset; + } + + // § 4.3.14. Consume the remnants of a bad url + // ... its sole use is to consume enough of the input stream to reach a recovery point + // where normal tokenizing can resume. + function consumeBadUrlRemnants$1(source, offset) { + // Repeatedly consume the next input code point from the stream: + for (; offset < source.length; offset++) { + var code = source.charCodeAt(offset); + + // U+0029 RIGHT PARENTHESIS ()) + // EOF + if (code === 0x0029) { + // Return. + offset++; + break; + } + + if (isValidEscape$1(code, getCharCode(source, offset + 1))) { + // Consume an escaped code point. + // Note: This allows an escaped right parenthesis ("\)") to be encountered + // without ending the . This is otherwise identical to + // the "anything else" clause. + offset = consumeEscaped$1(source, offset); + } + } + + return offset; + } + + var utils$2 = { + consumeEscaped: consumeEscaped$1, + consumeName: consumeName$1, + consumeNumber: consumeNumber$5, + consumeBadUrlRemnants: consumeBadUrlRemnants$1, + + cmpChar: cmpChar$5, + cmpStr: cmpStr$6, + + getNewlineLength: getNewlineLength$1, + findWhiteSpaceStart: findWhiteSpaceStart$1, + findWhiteSpaceEnd: findWhiteSpaceEnd$1 + }; + + var constants$2 = _const; + var TYPE$G = constants$2.TYPE; + var NAME$2 = constants$2.NAME; + + var utils$1 = utils$2; + var cmpStr$5 = utils$1.cmpStr; + + var EOF = TYPE$G.EOF; + var WHITESPACE$c = TYPE$G.WhiteSpace; + var COMMENT$a = TYPE$G.Comment; + + var OFFSET_MASK$1 = 0x00FFFFFF; + var TYPE_SHIFT$1 = 24; + + var TokenStream$4 = function() { + this.offsetAndType = null; + this.balance = null; + + this.reset(); + }; + + TokenStream$4.prototype = { + reset: function() { + this.eof = false; + this.tokenIndex = -1; + this.tokenType = 0; + this.tokenStart = this.firstCharOffset; + this.tokenEnd = this.firstCharOffset; + }, + + lookupType: function(offset) { + offset += this.tokenIndex; + + if (offset < this.tokenCount) { + return this.offsetAndType[offset] >> TYPE_SHIFT$1; + } + + return EOF; + }, + lookupOffset: function(offset) { + offset += this.tokenIndex; + + if (offset < this.tokenCount) { + return this.offsetAndType[offset - 1] & OFFSET_MASK$1; + } + + return this.source.length; + }, + lookupValue: function(offset, referenceStr) { + offset += this.tokenIndex; + + if (offset < this.tokenCount) { + return cmpStr$5( + this.source, + this.offsetAndType[offset - 1] & OFFSET_MASK$1, + this.offsetAndType[offset] & OFFSET_MASK$1, + referenceStr + ); + } + + return false; + }, + getTokenStart: function(tokenIndex) { + if (tokenIndex === this.tokenIndex) { + return this.tokenStart; + } + + if (tokenIndex > 0) { + return tokenIndex < this.tokenCount + ? this.offsetAndType[tokenIndex - 1] & OFFSET_MASK$1 + : this.offsetAndType[this.tokenCount] & OFFSET_MASK$1; + } + + return this.firstCharOffset; + }, + + // TODO: -> skipUntilBalanced + getRawLength: function(startToken, mode) { + var cursor = startToken; + var balanceEnd; + var offset = this.offsetAndType[Math.max(cursor - 1, 0)] & OFFSET_MASK$1; + var type; + + loop: + for (; cursor < this.tokenCount; cursor++) { + balanceEnd = this.balance[cursor]; + + // stop scanning on balance edge that points to offset before start token + if (balanceEnd < startToken) { + break loop; + } + + type = this.offsetAndType[cursor] >> TYPE_SHIFT$1; + + // check token is stop type + switch (mode(type, this.source, offset)) { + case 1: + break loop; + + case 2: + cursor++; + break loop; + + default: + // fast forward to the end of balanced block + if (this.balance[balanceEnd] === cursor) { + cursor = balanceEnd; + } + + offset = this.offsetAndType[cursor] & OFFSET_MASK$1; + } + } + + return cursor - this.tokenIndex; + }, + isBalanceEdge: function(pos) { + return this.balance[this.tokenIndex] < pos; + }, + isDelim: function(code, offset) { + if (offset) { + return ( + this.lookupType(offset) === TYPE$G.Delim && + this.source.charCodeAt(this.lookupOffset(offset)) === code + ); + } + + return ( + this.tokenType === TYPE$G.Delim && + this.source.charCodeAt(this.tokenStart) === code + ); + }, + + getTokenValue: function() { + return this.source.substring(this.tokenStart, this.tokenEnd); + }, + getTokenLength: function() { + return this.tokenEnd - this.tokenStart; + }, + substrToCursor: function(start) { + return this.source.substring(start, this.tokenStart); + }, + + skipWS: function() { + for (var i = this.tokenIndex, skipTokenCount = 0; i < this.tokenCount; i++, skipTokenCount++) { + if ((this.offsetAndType[i] >> TYPE_SHIFT$1) !== WHITESPACE$c) { + break; + } + } + + if (skipTokenCount > 0) { + this.skip(skipTokenCount); + } + }, + skipSC: function() { + while (this.tokenType === WHITESPACE$c || this.tokenType === COMMENT$a) { + this.next(); + } + }, + skip: function(tokenCount) { + var next = this.tokenIndex + tokenCount; + + if (next < this.tokenCount) { + this.tokenIndex = next; + this.tokenStart = this.offsetAndType[next - 1] & OFFSET_MASK$1; + next = this.offsetAndType[next]; + this.tokenType = next >> TYPE_SHIFT$1; + this.tokenEnd = next & OFFSET_MASK$1; + } else { + this.tokenIndex = this.tokenCount; + this.next(); + } + }, + next: function() { + var next = this.tokenIndex + 1; + + if (next < this.tokenCount) { + this.tokenIndex = next; + this.tokenStart = this.tokenEnd; + next = this.offsetAndType[next]; + this.tokenType = next >> TYPE_SHIFT$1; + this.tokenEnd = next & OFFSET_MASK$1; + } else { + this.tokenIndex = this.tokenCount; + this.eof = true; + this.tokenType = EOF; + this.tokenStart = this.tokenEnd = this.source.length; + } + }, + + forEachToken(fn) { + for (var i = 0, offset = this.firstCharOffset; i < this.tokenCount; i++) { + var start = offset; + var item = this.offsetAndType[i]; + var end = item & OFFSET_MASK$1; + var type = item >> TYPE_SHIFT$1; + + offset = end; + + fn(type, start, end, i); + } + }, + + dump() { + var tokens = new Array(this.tokenCount); + + this.forEachToken((type, start, end, index) => { + tokens[index] = { + idx: index, + type: NAME$2[type], + chunk: this.source.substring(start, end), + balance: this.balance[index] + }; + }); + + return tokens; + } + }; + + var TokenStream_1 = TokenStream$4; + + function noop$3(value) { + return value; + } + + function generateMultiplier(multiplier) { + if (multiplier.min === 0 && multiplier.max === 0) { + return '*'; + } + + if (multiplier.min === 0 && multiplier.max === 1) { + return '?'; + } + + if (multiplier.min === 1 && multiplier.max === 0) { + return multiplier.comma ? '#' : '+'; + } + + if (multiplier.min === 1 && multiplier.max === 1) { + return ''; + } + + return ( + (multiplier.comma ? '#' : '') + + (multiplier.min === multiplier.max + ? '{' + multiplier.min + '}' + : '{' + multiplier.min + ',' + (multiplier.max !== 0 ? multiplier.max : '') + '}' + ) + ); + } + + function generateTypeOpts(node) { + switch (node.type) { + case 'Range': + return ( + ' [' + + (node.min === null ? '-∞' : node.min) + + ',' + + (node.max === null ? '∞' : node.max) + + ']' + ); + + default: + throw new Error('Unknown node type `' + node.type + '`'); + } + } + + function generateSequence(node, decorate, forceBraces, compact) { + var combinator = node.combinator === ' ' || compact ? node.combinator : ' ' + node.combinator + ' '; + var result = node.terms.map(function(term) { + return generate$2(term, decorate, forceBraces, compact); + }).join(combinator); + + if (node.explicit || forceBraces) { + result = (compact || result[0] === ',' ? '[' : '[ ') + result + (compact ? ']' : ' ]'); + } + + return result; + } + + function generate$2(node, decorate, forceBraces, compact) { + var result; + + switch (node.type) { + case 'Group': + result = + generateSequence(node, decorate, forceBraces, compact) + + (node.disallowEmpty ? '!' : ''); + break; + + case 'Multiplier': + // return since node is a composition + return ( + generate$2(node.term, decorate, forceBraces, compact) + + decorate(generateMultiplier(node), node) + ); + + case 'Type': + result = '<' + node.name + (node.opts ? decorate(generateTypeOpts(node.opts), node.opts) : '') + '>'; + break; + + case 'Property': + result = '<\'' + node.name + '\'>'; + break; + + case 'Keyword': + result = node.name; + break; + + case 'AtKeyword': + result = '@' + node.name; + break; + + case 'Function': + result = node.name + '('; + break; + + case 'String': + case 'Token': + result = node.value; + break; + + case 'Comma': + result = ','; + break; + + default: + throw new Error('Unknown node type `' + node.type + '`'); + } + + return decorate(result, node); + } + + var generate_1 = function(node, options) { + var decorate = noop$3; + var forceBraces = false; + var compact = false; + + if (typeof options === 'function') { + decorate = options; + } else if (options) { + forceBraces = Boolean(options.forceBraces); + compact = Boolean(options.compact); + if (typeof options.decorate === 'function') { + decorate = options.decorate; + } + } + + return generate$2(node, decorate, forceBraces, compact); + }; + + const createCustomError$1 = createCustomError$3; + const generate$1 = generate_1; + const defaultLoc = { offset: 0, line: 1, column: 1 }; + + function locateMismatch(matchResult, node) { + const tokens = matchResult.tokens; + const longestMatch = matchResult.longestMatch; + const mismatchNode = longestMatch < tokens.length ? tokens[longestMatch].node || null : null; + const badNode = mismatchNode !== node ? mismatchNode : null; + let mismatchOffset = 0; + let mismatchLength = 0; + let entries = 0; + let css = ''; + let start; + let end; + + for (let i = 0; i < tokens.length; i++) { + const token = tokens[i].value; + + if (i === longestMatch) { + mismatchLength = token.length; + mismatchOffset = css.length; + } + + if (badNode !== null && tokens[i].node === badNode) { + if (i <= longestMatch) { + entries++; + } else { + entries = 0; + } + } + + css += token; + } + + if (longestMatch === tokens.length || entries > 1) { // last + start = fromLoc(badNode || node, 'end') || buildLoc(defaultLoc, css); + end = buildLoc(start); + } else { + start = fromLoc(badNode, 'start') || + buildLoc(fromLoc(node, 'start') || defaultLoc, css.slice(0, mismatchOffset)); + end = fromLoc(badNode, 'end') || + buildLoc(start, css.substr(mismatchOffset, mismatchLength)); + } + + return { + css, + mismatchOffset, + mismatchLength, + start, + end + }; + } + + function fromLoc(node, point) { + const value = node && node.loc && node.loc[point]; + + if (value) { + return 'line' in value ? buildLoc(value) : value; + } + + return null; + } + + function buildLoc({ offset, line, column }, extra) { + const loc = { + offset, + line, + column + }; + + if (extra) { + const lines = extra.split(/\n|\r\n?|\f/); + + loc.offset += extra.length; + loc.line += lines.length - 1; + loc.column = lines.length === 1 ? loc.column + extra.length : lines.pop().length + 1; + } + + return loc; + } + + const SyntaxReferenceError$1 = function(type, referenceName) { + const error = createCustomError$1( + 'SyntaxReferenceError', + type + (referenceName ? ' `' + referenceName + '`' : '') + ); + + error.reference = referenceName; + + return error; + }; + + const SyntaxMatchError$1 = function(message, syntax, node, matchResult) { + const error = createCustomError$1('SyntaxMatchError', message); + const { + css, + mismatchOffset, + mismatchLength, + start, + end + } = locateMismatch(matchResult, node); + + error.rawMessage = message; + error.syntax = syntax ? generate$1(syntax) : ''; + error.css = css; + error.mismatchOffset = mismatchOffset; + error.mismatchLength = mismatchLength; + error.message = message + '\n' + + ' syntax: ' + error.syntax + '\n' + + ' value: ' + (css || '') + '\n' + + ' --------' + new Array(error.mismatchOffset + 1).join('-') + '^'; + + Object.assign(error, start); + error.loc = { + source: (node && node.loc && node.loc.source) || '', + start, + end + }; + + return error; + }; + + var error = { + SyntaxReferenceError: SyntaxReferenceError$1, + SyntaxMatchError: SyntaxMatchError$1 + }; + + var hasOwnProperty$7 = Object.prototype.hasOwnProperty; + var keywords$1 = Object.create(null); + var properties$1 = Object.create(null); + var HYPHENMINUS$5 = 45; // '-'.charCodeAt() + + function isCustomProperty$1(str, offset) { + offset = offset || 0; + + return str.length - offset >= 2 && + str.charCodeAt(offset) === HYPHENMINUS$5 && + str.charCodeAt(offset + 1) === HYPHENMINUS$5; + } + + function getVendorPrefix(str, offset) { + offset = offset || 0; + + // verdor prefix should be at least 3 chars length + if (str.length - offset >= 3) { + // vendor prefix starts with hyper minus following non-hyper minus + if (str.charCodeAt(offset) === HYPHENMINUS$5 && + str.charCodeAt(offset + 1) !== HYPHENMINUS$5) { + // vendor prefix should contain a hyper minus at the ending + var secondDashIndex = str.indexOf('-', offset + 2); + + if (secondDashIndex !== -1) { + return str.substring(offset, secondDashIndex + 1); + } + } + } + + return ''; + } + + function getKeywordDescriptor(keyword) { + if (hasOwnProperty$7.call(keywords$1, keyword)) { + return keywords$1[keyword]; + } + + var name = keyword.toLowerCase(); + + if (hasOwnProperty$7.call(keywords$1, name)) { + return keywords$1[keyword] = keywords$1[name]; + } + + var custom = isCustomProperty$1(name, 0); + var vendor = !custom ? getVendorPrefix(name, 0) : ''; + + return keywords$1[keyword] = Object.freeze({ + basename: name.substr(vendor.length), + name: name, + vendor: vendor, + prefix: vendor, + custom: custom + }); + } + + function getPropertyDescriptor(property) { + if (hasOwnProperty$7.call(properties$1, property)) { + return properties$1[property]; + } + + var name = property; + var hack = property[0]; + + if (hack === '/') { + hack = property[1] === '/' ? '//' : '/'; + } else if (hack !== '_' && + hack !== '*' && + hack !== '$' && + hack !== '#' && + hack !== '+' && + hack !== '&') { + hack = ''; + } + + var custom = isCustomProperty$1(name, hack.length); + + // re-use result when possible (the same as for lower case) + if (!custom) { + name = name.toLowerCase(); + if (hasOwnProperty$7.call(properties$1, name)) { + return properties$1[property] = properties$1[name]; + } + } + + var vendor = !custom ? getVendorPrefix(name, hack.length) : ''; + var prefix = name.substr(0, hack.length + vendor.length); + + return properties$1[property] = Object.freeze({ + basename: name.substr(prefix.length), + name: name.substr(hack.length), + hack: hack, + vendor: vendor, + prefix: prefix, + custom: custom + }); + } + + var names$2 = { + keyword: getKeywordDescriptor, + property: getPropertyDescriptor, + isCustomProperty: isCustomProperty$1, + vendorPrefix: getVendorPrefix + }; + + var MIN_SIZE = 16 * 1024; + var SafeUint32Array = typeof Uint32Array !== 'undefined' ? Uint32Array : Array; // fallback on Array when TypedArray is not supported + + var adoptBuffer$2 = function adoptBuffer(buffer, size) { + if (buffer === null || buffer.length < size) { + return new SafeUint32Array(Math.max(size + 1024, MIN_SIZE)); + } + + return buffer; + }; + + var TokenStream$3 = TokenStream_1; + var adoptBuffer$1 = adoptBuffer$2; + + var constants$1 = _const; + var TYPE$F = constants$1.TYPE; + + var charCodeDefinitions = charCodeDefinitions$1; + var isNewline = charCodeDefinitions.isNewline; + var isName = charCodeDefinitions.isName; + var isValidEscape = charCodeDefinitions.isValidEscape; + var isNumberStart = charCodeDefinitions.isNumberStart; + var isIdentifierStart$1 = charCodeDefinitions.isIdentifierStart; + var charCodeCategory = charCodeDefinitions.charCodeCategory; + var isBOM$1 = charCodeDefinitions.isBOM; + + var utils = utils$2; + var cmpStr$4 = utils.cmpStr; + var getNewlineLength = utils.getNewlineLength; + var findWhiteSpaceEnd = utils.findWhiteSpaceEnd; + var consumeEscaped = utils.consumeEscaped; + var consumeName = utils.consumeName; + var consumeNumber$4 = utils.consumeNumber; + var consumeBadUrlRemnants = utils.consumeBadUrlRemnants; + + var OFFSET_MASK = 0x00FFFFFF; + var TYPE_SHIFT = 24; + + function tokenize$3(source, stream) { + function getCharCode(offset) { + return offset < sourceLength ? source.charCodeAt(offset) : 0; + } + + // § 4.3.3. Consume a numeric token + function consumeNumericToken() { + // Consume a number and let number be the result. + offset = consumeNumber$4(source, offset); + + // If the next 3 input code points would start an identifier, then: + if (isIdentifierStart$1(getCharCode(offset), getCharCode(offset + 1), getCharCode(offset + 2))) { + // Create a with the same value and type flag as number, and a unit set initially to the empty string. + // Consume a name. Set the ’s unit to the returned value. + // Return the . + type = TYPE$F.Dimension; + offset = consumeName(source, offset); + return; + } + + // Otherwise, if the next input code point is U+0025 PERCENTAGE SIGN (%), consume it. + if (getCharCode(offset) === 0x0025) { + // Create a with the same value as number, and return it. + type = TYPE$F.Percentage; + offset++; + return; + } + + // Otherwise, create a with the same value and type flag as number, and return it. + type = TYPE$F.Number; + } + + // § 4.3.4. Consume an ident-like token + function consumeIdentLikeToken() { + const nameStartOffset = offset; + + // Consume a name, and let string be the result. + offset = consumeName(source, offset); + + // If string’s value is an ASCII case-insensitive match for "url", + // and the next input code point is U+0028 LEFT PARENTHESIS ((), consume it. + if (cmpStr$4(source, nameStartOffset, offset, 'url') && getCharCode(offset) === 0x0028) { + // While the next two input code points are whitespace, consume the next input code point. + offset = findWhiteSpaceEnd(source, offset + 1); + + // If the next one or two input code points are U+0022 QUOTATION MARK ("), U+0027 APOSTROPHE ('), + // or whitespace followed by U+0022 QUOTATION MARK (") or U+0027 APOSTROPHE ('), + // then create a with its value set to string and return it. + if (getCharCode(offset) === 0x0022 || + getCharCode(offset) === 0x0027) { + type = TYPE$F.Function; + offset = nameStartOffset + 4; + return; + } + + // Otherwise, consume a url token, and return it. + consumeUrlToken(); + return; + } + + // Otherwise, if the next input code point is U+0028 LEFT PARENTHESIS ((), consume it. + // Create a with its value set to string and return it. + if (getCharCode(offset) === 0x0028) { + type = TYPE$F.Function; + offset++; + return; + } + + // Otherwise, create an with its value set to string and return it. + type = TYPE$F.Ident; + } + + // § 4.3.5. Consume a string token + function consumeStringToken(endingCodePoint) { + // This algorithm may be called with an ending code point, which denotes the code point + // that ends the string. If an ending code point is not specified, + // the current input code point is used. + if (!endingCodePoint) { + endingCodePoint = getCharCode(offset++); + } + + // Initially create a with its value set to the empty string. + type = TYPE$F.String; + + // Repeatedly consume the next input code point from the stream: + for (; offset < source.length; offset++) { + var code = source.charCodeAt(offset); + + switch (charCodeCategory(code)) { + // ending code point + case endingCodePoint: + // Return the . + offset++; + return; + + // EOF + case charCodeCategory.Eof: + // This is a parse error. Return the . + return; + + // newline + case charCodeCategory.WhiteSpace: + if (isNewline(code)) { + // This is a parse error. Reconsume the current input code point, + // create a , and return it. + offset += getNewlineLength(source, offset, code); + type = TYPE$F.BadString; + return; + } + break; + + // U+005C REVERSE SOLIDUS (\) + case 0x005C: + // If the next input code point is EOF, do nothing. + if (offset === source.length - 1) { + break; + } + + var nextCode = getCharCode(offset + 1); + + // Otherwise, if the next input code point is a newline, consume it. + if (isNewline(nextCode)) { + offset += getNewlineLength(source, offset + 1, nextCode); + } else if (isValidEscape(code, nextCode)) { + // Otherwise, (the stream starts with a valid escape) consume + // an escaped code point and append the returned code point to + // the ’s value. + offset = consumeEscaped(source, offset) - 1; + } + break; + + // anything else + // Append the current input code point to the ’s value. + } + } + } + + // § 4.3.6. Consume a url token + // Note: This algorithm assumes that the initial "url(" has already been consumed. + // This algorithm also assumes that it’s being called to consume an "unquoted" value, like url(foo). + // A quoted value, like url("foo"), is parsed as a . Consume an ident-like token + // automatically handles this distinction; this algorithm shouldn’t be called directly otherwise. + function consumeUrlToken() { + // Initially create a with its value set to the empty string. + type = TYPE$F.Url; + + // Consume as much whitespace as possible. + offset = findWhiteSpaceEnd(source, offset); + + // Repeatedly consume the next input code point from the stream: + for (; offset < source.length; offset++) { + var code = source.charCodeAt(offset); + + switch (charCodeCategory(code)) { + // U+0029 RIGHT PARENTHESIS ()) + case 0x0029: + // Return the . + offset++; + return; + + // EOF + case charCodeCategory.Eof: + // This is a parse error. Return the . + return; + + // whitespace + case charCodeCategory.WhiteSpace: + // Consume as much whitespace as possible. + offset = findWhiteSpaceEnd(source, offset); + + // If the next input code point is U+0029 RIGHT PARENTHESIS ()) or EOF, + // consume it and return the + // (if EOF was encountered, this is a parse error); + if (getCharCode(offset) === 0x0029 || offset >= source.length) { + if (offset < source.length) { + offset++; + } + return; + } + + // otherwise, consume the remnants of a bad url, create a , + // and return it. + offset = consumeBadUrlRemnants(source, offset); + type = TYPE$F.BadUrl; + return; + + // U+0022 QUOTATION MARK (") + // U+0027 APOSTROPHE (') + // U+0028 LEFT PARENTHESIS (() + // non-printable code point + case 0x0022: + case 0x0027: + case 0x0028: + case charCodeCategory.NonPrintable: + // This is a parse error. Consume the remnants of a bad url, + // create a , and return it. + offset = consumeBadUrlRemnants(source, offset); + type = TYPE$F.BadUrl; + return; + + // U+005C REVERSE SOLIDUS (\) + case 0x005C: + // If the stream starts with a valid escape, consume an escaped code point and + // append the returned code point to the ’s value. + if (isValidEscape(code, getCharCode(offset + 1))) { + offset = consumeEscaped(source, offset) - 1; + break; + } + + // Otherwise, this is a parse error. Consume the remnants of a bad url, + // create a , and return it. + offset = consumeBadUrlRemnants(source, offset); + type = TYPE$F.BadUrl; + return; + + // anything else + // Append the current input code point to the ’s value. + } + } + } + + if (!stream) { + stream = new TokenStream$3(); + } + + // ensure source is a string + source = String(source || ''); + + var sourceLength = source.length; + var offsetAndType = adoptBuffer$1(stream.offsetAndType, sourceLength + 1); // +1 because of eof-token + var balance = adoptBuffer$1(stream.balance, sourceLength + 1); + var tokenCount = 0; + var start = isBOM$1(getCharCode(0)); + var offset = start; + var balanceCloseType = 0; + var balanceStart = 0; + var balancePrev = 0; + + // https://drafts.csswg.org/css-syntax-3/#consume-token + // § 4.3.1. Consume a token + while (offset < sourceLength) { + var code = source.charCodeAt(offset); + var type = 0; + + balance[tokenCount] = sourceLength; + + switch (charCodeCategory(code)) { + // whitespace + case charCodeCategory.WhiteSpace: + // Consume as much whitespace as possible. Return a . + type = TYPE$F.WhiteSpace; + offset = findWhiteSpaceEnd(source, offset + 1); + break; + + // U+0022 QUOTATION MARK (") + case 0x0022: + // Consume a string token and return it. + consumeStringToken(); + break; + + // U+0023 NUMBER SIGN (#) + case 0x0023: + // If the next input code point is a name code point or the next two input code points are a valid escape, then: + if (isName(getCharCode(offset + 1)) || isValidEscape(getCharCode(offset + 1), getCharCode(offset + 2))) { + // Create a . + type = TYPE$F.Hash; + + // If the next 3 input code points would start an identifier, set the ’s type flag to "id". + // if (isIdentifierStart(getCharCode(offset + 1), getCharCode(offset + 2), getCharCode(offset + 3))) { + // // TODO: set id flag + // } + + // Consume a name, and set the ’s value to the returned string. + offset = consumeName(source, offset + 1); + + // Return the . + } else { + // Otherwise, return a with its value set to the current input code point. + type = TYPE$F.Delim; + offset++; + } + + break; + + // U+0027 APOSTROPHE (') + case 0x0027: + // Consume a string token and return it. + consumeStringToken(); + break; + + // U+0028 LEFT PARENTHESIS (() + case 0x0028: + // Return a <(-token>. + type = TYPE$F.LeftParenthesis; + offset++; + break; + + // U+0029 RIGHT PARENTHESIS ()) + case 0x0029: + // Return a <)-token>. + type = TYPE$F.RightParenthesis; + offset++; + break; + + // U+002B PLUS SIGN (+) + case 0x002B: + // If the input stream starts with a number, ... + if (isNumberStart(code, getCharCode(offset + 1), getCharCode(offset + 2))) { + // ... reconsume the current input code point, consume a numeric token, and return it. + consumeNumericToken(); + } else { + // Otherwise, return a with its value set to the current input code point. + type = TYPE$F.Delim; + offset++; + } + break; + + // U+002C COMMA (,) + case 0x002C: + // Return a . + type = TYPE$F.Comma; + offset++; + break; + + // U+002D HYPHEN-MINUS (-) + case 0x002D: + // If the input stream starts with a number, reconsume the current input code point, consume a numeric token, and return it. + if (isNumberStart(code, getCharCode(offset + 1), getCharCode(offset + 2))) { + consumeNumericToken(); + } else { + // Otherwise, if the next 2 input code points are U+002D HYPHEN-MINUS U+003E GREATER-THAN SIGN (->), consume them and return a . + if (getCharCode(offset + 1) === 0x002D && + getCharCode(offset + 2) === 0x003E) { + type = TYPE$F.CDC; + offset = offset + 3; + } else { + // Otherwise, if the input stream starts with an identifier, ... + if (isIdentifierStart$1(code, getCharCode(offset + 1), getCharCode(offset + 2))) { + // ... reconsume the current input code point, consume an ident-like token, and return it. + consumeIdentLikeToken(); + } else { + // Otherwise, return a with its value set to the current input code point. + type = TYPE$F.Delim; + offset++; + } + } + } + break; + + // U+002E FULL STOP (.) + case 0x002E: + // If the input stream starts with a number, ... + if (isNumberStart(code, getCharCode(offset + 1), getCharCode(offset + 2))) { + // ... reconsume the current input code point, consume a numeric token, and return it. + consumeNumericToken(); + } else { + // Otherwise, return a with its value set to the current input code point. + type = TYPE$F.Delim; + offset++; + } + + break; + + // U+002F SOLIDUS (/) + case 0x002F: + // If the next two input code point are U+002F SOLIDUS (/) followed by a U+002A ASTERISK (*), + if (getCharCode(offset + 1) === 0x002A) { + // ... consume them and all following code points up to and including the first U+002A ASTERISK (*) + // followed by a U+002F SOLIDUS (/), or up to an EOF code point. + type = TYPE$F.Comment; + offset = source.indexOf('*/', offset + 2) + 2; + if (offset === 1) { + offset = source.length; + } + } else { + type = TYPE$F.Delim; + offset++; + } + break; + + // U+003A COLON (:) + case 0x003A: + // Return a . + type = TYPE$F.Colon; + offset++; + break; + + // U+003B SEMICOLON (;) + case 0x003B: + // Return a . + type = TYPE$F.Semicolon; + offset++; + break; + + // U+003C LESS-THAN SIGN (<) + case 0x003C: + // If the next 3 input code points are U+0021 EXCLAMATION MARK U+002D HYPHEN-MINUS U+002D HYPHEN-MINUS (!--), ... + if (getCharCode(offset + 1) === 0x0021 && + getCharCode(offset + 2) === 0x002D && + getCharCode(offset + 3) === 0x002D) { + // ... consume them and return a . + type = TYPE$F.CDO; + offset = offset + 4; + } else { + // Otherwise, return a with its value set to the current input code point. + type = TYPE$F.Delim; + offset++; + } + + break; + + // U+0040 COMMERCIAL AT (@) + case 0x0040: + // If the next 3 input code points would start an identifier, ... + if (isIdentifierStart$1(getCharCode(offset + 1), getCharCode(offset + 2), getCharCode(offset + 3))) { + // ... consume a name, create an with its value set to the returned value, and return it. + type = TYPE$F.AtKeyword; + offset = consumeName(source, offset + 1); + } else { + // Otherwise, return a with its value set to the current input code point. + type = TYPE$F.Delim; + offset++; + } + + break; + + // U+005B LEFT SQUARE BRACKET ([) + case 0x005B: + // Return a <[-token>. + type = TYPE$F.LeftSquareBracket; + offset++; + break; + + // U+005C REVERSE SOLIDUS (\) + case 0x005C: + // If the input stream starts with a valid escape, ... + if (isValidEscape(code, getCharCode(offset + 1))) { + // ... reconsume the current input code point, consume an ident-like token, and return it. + consumeIdentLikeToken(); + } else { + // Otherwise, this is a parse error. Return a with its value set to the current input code point. + type = TYPE$F.Delim; + offset++; + } + break; + + // U+005D RIGHT SQUARE BRACKET (]) + case 0x005D: + // Return a <]-token>. + type = TYPE$F.RightSquareBracket; + offset++; + break; + + // U+007B LEFT CURLY BRACKET ({) + case 0x007B: + // Return a <{-token>. + type = TYPE$F.LeftCurlyBracket; + offset++; + break; + + // U+007D RIGHT CURLY BRACKET (}) + case 0x007D: + // Return a <}-token>. + type = TYPE$F.RightCurlyBracket; + offset++; + break; + + // digit + case charCodeCategory.Digit: + // Reconsume the current input code point, consume a numeric token, and return it. + consumeNumericToken(); + break; + + // name-start code point + case charCodeCategory.NameStart: + // Reconsume the current input code point, consume an ident-like token, and return it. + consumeIdentLikeToken(); + break; + + // EOF + case charCodeCategory.Eof: + // Return an . + break; + + // anything else + default: + // Return a with its value set to the current input code point. + type = TYPE$F.Delim; + offset++; + } + + switch (type) { + case balanceCloseType: + balancePrev = balanceStart & OFFSET_MASK; + balanceStart = balance[balancePrev]; + balanceCloseType = balanceStart >> TYPE_SHIFT; + balance[tokenCount] = balancePrev; + balance[balancePrev++] = tokenCount; + for (; balancePrev < tokenCount; balancePrev++) { + if (balance[balancePrev] === sourceLength) { + balance[balancePrev] = tokenCount; + } + } + break; + + case TYPE$F.LeftParenthesis: + case TYPE$F.Function: + balance[tokenCount] = balanceStart; + balanceCloseType = TYPE$F.RightParenthesis; + balanceStart = (balanceCloseType << TYPE_SHIFT) | tokenCount; + break; + + case TYPE$F.LeftSquareBracket: + balance[tokenCount] = balanceStart; + balanceCloseType = TYPE$F.RightSquareBracket; + balanceStart = (balanceCloseType << TYPE_SHIFT) | tokenCount; + break; + + case TYPE$F.LeftCurlyBracket: + balance[tokenCount] = balanceStart; + balanceCloseType = TYPE$F.RightCurlyBracket; + balanceStart = (balanceCloseType << TYPE_SHIFT) | tokenCount; + break; + } + + offsetAndType[tokenCount++] = (type << TYPE_SHIFT) | offset; + } + + // finalize buffers + offsetAndType[tokenCount] = (TYPE$F.EOF << TYPE_SHIFT) | offset; // + balance[tokenCount] = sourceLength; + balance[sourceLength] = sourceLength; // prevents false positive balance match with any token + while (balanceStart !== 0) { + balancePrev = balanceStart & OFFSET_MASK; + balanceStart = balance[balancePrev]; + balance[balancePrev] = sourceLength; + } + + // update stream + stream.source = source; + stream.firstCharOffset = start; + stream.offsetAndType = offsetAndType; + stream.tokenCount = tokenCount; + stream.balance = balance; + stream.reset(); + stream.next(); + + return stream; + } + + // extend tokenizer with constants + Object.keys(constants$1).forEach(function(key) { + tokenize$3[key] = constants$1[key]; + }); + + // extend tokenizer with static methods from utils + Object.keys(charCodeDefinitions).forEach(function(key) { + tokenize$3[key] = charCodeDefinitions[key]; + }); + Object.keys(utils).forEach(function(key) { + tokenize$3[key] = utils[key]; + }); + + var tokenizer$3 = tokenize$3; + + var isDigit$3 = tokenizer$3.isDigit; + var cmpChar$4 = tokenizer$3.cmpChar; + var TYPE$E = tokenizer$3.TYPE; + + var DELIM$6 = TYPE$E.Delim; + var WHITESPACE$b = TYPE$E.WhiteSpace; + var COMMENT$9 = TYPE$E.Comment; + var IDENT$i = TYPE$E.Ident; + var NUMBER$9 = TYPE$E.Number; + var DIMENSION$7 = TYPE$E.Dimension; + var PLUSSIGN$8 = 0x002B; // U+002B PLUS SIGN (+) + var HYPHENMINUS$4 = 0x002D; // U+002D HYPHEN-MINUS (-) + var N$4 = 0x006E; // U+006E LATIN SMALL LETTER N (n) + var DISALLOW_SIGN$1 = true; + var ALLOW_SIGN$1 = false; + + function isDelim$1(token, code) { + return token !== null && token.type === DELIM$6 && token.value.charCodeAt(0) === code; + } + + function skipSC(token, offset, getNextToken) { + while (token !== null && (token.type === WHITESPACE$b || token.type === COMMENT$9)) { + token = getNextToken(++offset); + } + + return offset; + } + + function checkInteger$1(token, valueOffset, disallowSign, offset) { + if (!token) { + return 0; + } + + var code = token.value.charCodeAt(valueOffset); + + if (code === PLUSSIGN$8 || code === HYPHENMINUS$4) { + if (disallowSign) { + // Number sign is not allowed + return 0; + } + valueOffset++; + } + + for (; valueOffset < token.value.length; valueOffset++) { + if (!isDigit$3(token.value.charCodeAt(valueOffset))) { + // Integer is expected + return 0; + } + } + + return offset + 1; + } + + // ... + // ... ['+' | '-'] + function consumeB$1(token, offset_, getNextToken) { + var sign = false; + var offset = skipSC(token, offset_, getNextToken); + + token = getNextToken(offset); + + if (token === null) { + return offset_; + } + + if (token.type !== NUMBER$9) { + if (isDelim$1(token, PLUSSIGN$8) || isDelim$1(token, HYPHENMINUS$4)) { + sign = true; + offset = skipSC(getNextToken(++offset), offset, getNextToken); + token = getNextToken(offset); + + if (token === null && token.type !== NUMBER$9) { + return 0; + } + } else { + return offset_; + } + } + + if (!sign) { + var code = token.value.charCodeAt(0); + if (code !== PLUSSIGN$8 && code !== HYPHENMINUS$4) { + // Number sign is expected + return 0; + } + } + + return checkInteger$1(token, sign ? 0 : 1, sign, offset); + } + + // An+B microsyntax https://www.w3.org/TR/css-syntax-3/#anb + var genericAnPlusB = function anPlusB(token, getNextToken) { + /* eslint-disable brace-style*/ + var offset = 0; + + if (!token) { + return 0; + } + + // + if (token.type === NUMBER$9) { + return checkInteger$1(token, 0, ALLOW_SIGN$1, offset); // b + } + + // -n + // -n + // -n ['+' | '-'] + // -n- + // + else if (token.type === IDENT$i && token.value.charCodeAt(0) === HYPHENMINUS$4) { + // expect 1st char is N + if (!cmpChar$4(token.value, 1, N$4)) { + return 0; + } + + switch (token.value.length) { + // -n + // -n + // -n ['+' | '-'] + case 2: + return consumeB$1(getNextToken(++offset), offset, getNextToken); + + // -n- + case 3: + if (token.value.charCodeAt(2) !== HYPHENMINUS$4) { + return 0; + } + + offset = skipSC(getNextToken(++offset), offset, getNextToken); + token = getNextToken(offset); + + return checkInteger$1(token, 0, DISALLOW_SIGN$1, offset); + + // + default: + if (token.value.charCodeAt(2) !== HYPHENMINUS$4) { + return 0; + } + + return checkInteger$1(token, 3, DISALLOW_SIGN$1, offset); + } + } + + // '+'? n + // '+'? n + // '+'? n ['+' | '-'] + // '+'? n- + // '+'? + else if (token.type === IDENT$i || (isDelim$1(token, PLUSSIGN$8) && getNextToken(offset + 1).type === IDENT$i)) { + // just ignore a plus + if (token.type !== IDENT$i) { + token = getNextToken(++offset); + } + + if (token === null || !cmpChar$4(token.value, 0, N$4)) { + return 0; + } + + switch (token.value.length) { + // '+'? n + // '+'? n + // '+'? n ['+' | '-'] + case 1: + return consumeB$1(getNextToken(++offset), offset, getNextToken); + + // '+'? n- + case 2: + if (token.value.charCodeAt(1) !== HYPHENMINUS$4) { + return 0; + } + + offset = skipSC(getNextToken(++offset), offset, getNextToken); + token = getNextToken(offset); + + return checkInteger$1(token, 0, DISALLOW_SIGN$1, offset); + + // '+'? + default: + if (token.value.charCodeAt(1) !== HYPHENMINUS$4) { + return 0; + } + + return checkInteger$1(token, 2, DISALLOW_SIGN$1, offset); + } + } + + // + // + // + // + // ['+' | '-'] + else if (token.type === DIMENSION$7) { + var code = token.value.charCodeAt(0); + var sign = code === PLUSSIGN$8 || code === HYPHENMINUS$4 ? 1 : 0; + + for (var i = sign; i < token.value.length; i++) { + if (!isDigit$3(token.value.charCodeAt(i))) { + break; + } + } + + if (i === sign) { + // Integer is expected + return 0; + } + + if (!cmpChar$4(token.value, i, N$4)) { + return 0; + } + + // + // + // ['+' | '-'] + if (i + 1 === token.value.length) { + return consumeB$1(getNextToken(++offset), offset, getNextToken); + } else { + if (token.value.charCodeAt(i + 1) !== HYPHENMINUS$4) { + return 0; + } + + // + if (i + 2 === token.value.length) { + offset = skipSC(getNextToken(++offset), offset, getNextToken); + token = getNextToken(offset); + + return checkInteger$1(token, 0, DISALLOW_SIGN$1, offset); + } + // + else { + return checkInteger$1(token, i + 2, DISALLOW_SIGN$1, offset); + } + } + } + + return 0; + }; + + var isHexDigit$2 = tokenizer$3.isHexDigit; + var cmpChar$3 = tokenizer$3.cmpChar; + var TYPE$D = tokenizer$3.TYPE; + + var IDENT$h = TYPE$D.Ident; + var DELIM$5 = TYPE$D.Delim; + var NUMBER$8 = TYPE$D.Number; + var DIMENSION$6 = TYPE$D.Dimension; + var PLUSSIGN$7 = 0x002B; // U+002B PLUS SIGN (+) + var HYPHENMINUS$3 = 0x002D; // U+002D HYPHEN-MINUS (-) + var QUESTIONMARK$2 = 0x003F; // U+003F QUESTION MARK (?) + var U$2 = 0x0075; // U+0075 LATIN SMALL LETTER U (u) + + function isDelim(token, code) { + return token !== null && token.type === DELIM$5 && token.value.charCodeAt(0) === code; + } + + function startsWith$1(token, code) { + return token.value.charCodeAt(0) === code; + } + + function hexSequence(token, offset, allowDash) { + for (var pos = offset, hexlen = 0; pos < token.value.length; pos++) { + var code = token.value.charCodeAt(pos); + + if (code === HYPHENMINUS$3 && allowDash && hexlen !== 0) { + if (hexSequence(token, offset + hexlen + 1, false) > 0) { + return 6; // dissallow following question marks + } + + return 0; // dash at the ending of a hex sequence is not allowed + } + + if (!isHexDigit$2(code)) { + return 0; // not a hex digit + } + + if (++hexlen > 6) { + return 0; // too many hex digits + } } + + return hexlen; + } + + function withQuestionMarkSequence(consumed, length, getNextToken) { + if (!consumed) { + return 0; // nothing consumed + } + + while (isDelim(getNextToken(length), QUESTIONMARK$2)) { + if (++consumed > 6) { + return 0; // too many question marks + } + + length++; + } + + return length; + } + + // https://drafts.csswg.org/css-syntax/#urange + // Informally, the production has three forms: + // U+0001 + // Defines a range consisting of a single code point, in this case the code point "1". + // U+0001-00ff + // Defines a range of codepoints between the first and the second value, in this case + // the range between "1" and "ff" (255 in decimal) inclusive. + // U+00?? + // Defines a range of codepoints where the "?" characters range over all hex digits, + // in this case defining the same as the value U+0000-00ff. + // In each form, a maximum of 6 digits is allowed for each hexadecimal number (if you treat "?" as a hexadecimal digit). + // + // = + // u '+' '?'* | + // u '?'* | + // u '?'* | + // u | + // u | + // u '+' '?'+ + var genericUrange = function urange(token, getNextToken) { + var length = 0; + + // should start with `u` or `U` + if (token === null || token.type !== IDENT$h || !cmpChar$3(token.value, 0, U$2)) { + return 0; + } + + token = getNextToken(++length); + if (token === null) { + return 0; + } + + // u '+' '?'* + // u '+' '?'+ + if (isDelim(token, PLUSSIGN$7)) { + token = getNextToken(++length); + if (token === null) { + return 0; + } + + if (token.type === IDENT$h) { + // u '+' '?'* + return withQuestionMarkSequence(hexSequence(token, 0, true), ++length, getNextToken); + } + + if (isDelim(token, QUESTIONMARK$2)) { + // u '+' '?'+ + return withQuestionMarkSequence(1, ++length, getNextToken); + } + + // Hex digit or question mark is expected + return 0; + } + + // u '?'* + // u + // u + if (token.type === NUMBER$8) { + if (!startsWith$1(token, PLUSSIGN$7)) { + return 0; + } + + var consumedHexLength = hexSequence(token, 1, true); + if (consumedHexLength === 0) { + return 0; + } + + token = getNextToken(++length); + if (token === null) { + // u + return length; + } + + if (token.type === DIMENSION$6 || token.type === NUMBER$8) { + // u + // u + if (!startsWith$1(token, HYPHENMINUS$3) || !hexSequence(token, 1, false)) { + return 0; + } + + return length + 1; + } + + // u '?'* + return withQuestionMarkSequence(consumedHexLength, length, getNextToken); + } + + // u '?'* + if (token.type === DIMENSION$6) { + if (!startsWith$1(token, PLUSSIGN$7)) { + return 0; + } + + return withQuestionMarkSequence(hexSequence(token, 1, true), ++length, getNextToken); + } + + return 0; + }; + + var tokenizer$2 = tokenizer$3; + var isIdentifierStart = tokenizer$2.isIdentifierStart; + var isHexDigit$1 = tokenizer$2.isHexDigit; + var isDigit$2 = tokenizer$2.isDigit; + var cmpStr$3 = tokenizer$2.cmpStr; + var consumeNumber$3 = tokenizer$2.consumeNumber; + var TYPE$C = tokenizer$2.TYPE; + var anPlusB = genericAnPlusB; + var urange = genericUrange; + + var cssWideKeywords$1 = ['unset', 'initial', 'inherit']; + var calcFunctionNames = ['calc(', '-moz-calc(', '-webkit-calc(']; + + // https://www.w3.org/TR/css-values-3/#lengths + var LENGTH = { + // absolute length units + 'px': true, + 'mm': true, + 'cm': true, + 'in': true, + 'pt': true, + 'pc': true, + 'q': true, + + // relative length units + 'em': true, + 'ex': true, + 'ch': true, + 'rem': true, + + // viewport-percentage lengths + 'vh': true, + 'vw': true, + 'vmin': true, + 'vmax': true, + 'vm': true + }; + + var ANGLE = { + 'deg': true, + 'grad': true, + 'rad': true, + 'turn': true + }; + + var TIME = { + 's': true, + 'ms': true + }; + + var FREQUENCY = { + 'hz': true, + 'khz': true + }; + + // https://www.w3.org/TR/css-values-3/#resolution (https://drafts.csswg.org/css-values/#resolution) + var RESOLUTION = { + 'dpi': true, + 'dpcm': true, + 'dppx': true, + 'x': true // https://github.com/w3c/csswg-drafts/issues/461 + }; + + // https://drafts.csswg.org/css-grid/#fr-unit + var FLEX = { + 'fr': true + }; + + // https://www.w3.org/TR/css3-speech/#mixing-props-voice-volume + var DECIBEL = { + 'db': true + }; + + // https://www.w3.org/TR/css3-speech/#voice-props-voice-pitch + var SEMITONES = { + 'st': true + }; + + // safe char code getter + function charCode(str, index) { + return index < str.length ? str.charCodeAt(index) : 0; + } + + function eqStr(actual, expected) { + return cmpStr$3(actual, 0, actual.length, expected); + } + + function eqStrAny(actual, expected) { + for (var i = 0; i < expected.length; i++) { + if (eqStr(actual, expected[i])) { + return true; + } + } + + return false; + } + + // IE postfix hack, i.e. 123\0 or 123px\9 + function isPostfixIeHack(str, offset) { + if (offset !== str.length - 2) { + return false; + } + + return ( + str.charCodeAt(offset) === 0x005C && // U+005C REVERSE SOLIDUS (\) + isDigit$2(str.charCodeAt(offset + 1)) + ); + } + + function outOfRange(opts, value, numEnd) { + if (opts && opts.type === 'Range') { + var num = Number( + numEnd !== undefined && numEnd !== value.length + ? value.substr(0, numEnd) + : value + ); + + if (isNaN(num)) { + return true; + } + + if (opts.min !== null && num < opts.min) { + return true; + } + + if (opts.max !== null && num > opts.max) { + return true; + } + } + + return false; + } + + function consumeFunction(token, getNextToken) { + var startIdx = token.index; + var length = 0; + + // balanced token consuming + do { + length++; + + if (token.balance <= startIdx) { + break; + } + } while (token = getNextToken(length)); + + return length; + } + + // TODO: implement + // can be used wherever , , ,