New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

lezer-html

Package Overview
Dependencies
Maintainers
1
Versions
23
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

lezer-html - npm Package Compare versions

Comparing version 0.7.0 to 0.8.0

6

CHANGELOG.md

@@ -0,1 +1,7 @@

## 0.8.0 (2020-02-03)
### New features
Follow 0.8.0 release of the library.
## 0.7.0 (2020-01-20)

@@ -2,0 +8,0 @@

31

dist/index.js

@@ -9,11 +9,11 @@ 'use strict';

const
StartTag = 3,
StartCloseTag = 4,
MismatchedStartCloseTag = 5,
missingCloseTag = 39,
SelfCloserEndTag = 6,
Element = 11,
OpenTag = 12,
SelfClosingTag = 22,
RawText = 27;
StartTag = 1,
StartCloseTag = 2,
MismatchedStartCloseTag = 3,
missingCloseTag = 37,
SelfCloserEndTag = 4,
Element = 9,
OpenTag = 10,
SelfClosingTag = 20,
RawText = 25;

@@ -182,10 +182,11 @@ /* Hand-written tokenizers for HTML. */

const parser = lezer.Parser.deserialize({
states: "'bOPOTOOOgOTO'#C}O!QOWO'#ChS!XOTO'#CgOOOS'#Cg'#CgOOOS'#DU'#DUOOOS(3A[(3A[QOOOOOOOOS,59d,59dO!uOWO'#DOOOOW(3A](3A]O#POWO,59SO#TOTO'#DROOOS(3A`(3A`OOOO'#DY'#DYO#qOPO,59ROOOW,59e,59eO#{ObO1G.nOOOS,59h,59hO!QOWO'#CpO$]OpO'#CpOOOS1G.m1G.mO$dObO'#DOO$wObO7+$YO%UOWO,59[O%YOpO'#DOO%aOpO,59[O%eObO'#DPO%rObO'#CjOOO`(3A^(3A^O&VOYO<<GtO&aOWO1G.vOOO`,59f,59fO&hObO,59UOOOSAN=`AN=`OOOSAN=jAN=jO&xOWO7+$bO&|O!bO1G.pOOOS<<G|<<G|O'WO!bO'#DOO'bO!bO7+$[O'iO#tO'#CmO#{ObO<<GvO'vO#tO'#DQOOO#t(3A_(3A_O(TOWO,59XOOO`AN=bAN=bOOO#t,59g,59gOOO`1G.s1G.s",
stateData: "(]~RQOWTOXTOYTOhTOiTOjUO~RQOWTOXTOYTOhTOiTOjUOvqX~yYO]rP~RQOWTOXTOYTOhTOiTOSuPTuPwuP~yYO]rXcrX~]aO~RQOWTOXTOYTOhTOiTOSuXTuXwuX~ScOTdOweO~yYOUrP_rPcrPgrP~yYOerP~yYOUrX_rXcrXgrX`rX~_lOUsPcsPgsP~]oO~yYOerX~eoO~_lOUsXcsXgsX~yYOUrP_rP`rPcrPgrP~UsOcrOgsO~yYOcrP~`uOU^a_^ac^ag^a~cvO~yYObrPzrP~yYObrXzrX~bzOzyO~X|OY|O{|OztP~X|OY|O{|OztX~z!QO~hij~",
goto: "$m}PPPPPPPPPPP!O!UP![PP!`PP!cP!fPPPPP!l!r#Y#`#f#l#o$X$[$_PP$bPPP$jXTOPR[XROPR[TmgkRzxRe_XSOPR[QPORWPUXQcoW`XfiwUfalzQidRwuQkgRpkQ{yR!P{Q[RRb[RVOQZQQgaQhcQjdQqlQtoQxuR!OzRngR}yR^RSUOPT]R[R_R",
nodeNames: "⚠ Document ⚠ StartTag StartCloseTag StartCloseTag SelfCloserEndTag Document Text EntityReference CharacterReference Element OpenTag TagName Attribute AttributeName Is AttributeValue UnquotedAttributeValue EndTag CloseTag MismatchedTagName SelfClosingTag SelfCloseEndTag Comment ProcessingInst DoctypeDecl RawText",
states: "'bOPOTOOOgOTO'#C{O!QOWO'#CfS!XOTO'#CeOOOS'#Ce'#CeOOOS'#DS'#DSOOOS(3AY(3AYQOOOOOOOOS,59b,59bO!uOWO'#C|OOOW(3AZ(3AZO#POWO,59QO#TOTO'#DPOOOS(3A^(3A^OOOO'#DW'#DWO#qOPO,59POOOW,59c,59cO#{ObO1G.lOOOS,59f,59fO!QOWO'#CnO$]OpO'#CnOOOS1G.k1G.kO$dObO'#C|O$wObO7+$WO%UOWO,59YO%YOpO'#C|O%aOpO,59YO%eObO'#C}O%rObO'#ChOOO`(3A[(3A[O&VOYO<<GrO&aOWO1G.tOOO`,59d,59dO&hObO,59SOOOSAN=^AN=^OOOSAN=hAN=hO&xOWO7+$`O&|O!bO1G.nOOOS<<Gz<<GzO'WO!bO'#C|O'bO!bO7+$YO'iO#tO'#CkO#{ObO<<GtO'vO#tO'#DOOOO#t(3A](3A]O(TOWO,59VOOO`AN=`AN=`OOO#t,59e,59eOOO`1G.q1G.q",
stateData: "(]~PQOUTOVTOWTOfTOgTOhUO~PQOUTOVTOWTOfTOgTOhUOtoX~wYOZpP~PQOUTOVTOWTOfTOgTOQsPRsPusP~wYOZpXapX~ZaO~PQOUTOVTOWTOfTOgTOQsXRsXusX~QcORdOueO~wYOSpP]pPapPepP~wYOcpP~wYOSpX]pXapXepX^pX~]lOSqPaqPeqP~ZoO~wYOcpX~coO~]lOSqXaqXeqX~wYOSpP]pP^pPapPepP~SsOarOesO~wYOapP~^uOS[a][aa[ae[a~avO~wYO`pPxpP~wYO`pXxpX~`zOxyO~V|OW|Oy|OxrP~V|OW|Oy|OxrX~x!QO~fgh~",
goto: "$k{PPPPPPPPP|!SP!YPP!^PP!aP!dPPPPP!j!p#W#^#d#j#m$V$Y$]PP$`PPP$hXTOPR[XROPR[TmgkRzxRe_XSOPR[QPORWPUXQcoW`XfiwUfalzQidRwuQkgRpkQ{yR!P{Q[RRb[RVOQZQQgaQhcQjdQqlQtoQxuR!OzRngR}yR^RSUOPT]R[R_R",
nodeNames: "⚠ StartTag StartCloseTag StartCloseTag SelfCloserEndTag Document Text EntityReference CharacterReference Element OpenTag TagName Attribute AttributeName Is AttributeValue UnquotedAttributeValue EndTag CloseTag MismatchedTagName SelfClosingTag SelfCloseEndTag Comment ProcessingInst DoctypeDecl RawText",
repeatNodeCount: 5,
tokenData: "Gh!aR!UOX$eXY'rYZ'rZ]$e]^'r^p$epq'rqr$ers(tsv$evw)Uwx%yx!P$e!P!Q0i!Q![$e![!]1u!]!^$e!^!_7`!_!`Dt!`!aEa!a!c$e!c!}1u!}#R$e#R#S1u#S#T$e#T#o1u#o$f$e$f$g%y$g%W$e%W%o1u%o%p$e%p&a1u&a&b$e&b1p1u1p4U$e4U4d1u4d4e$e4e$IS1u$IS$I`$e$I`$Ib1u$Ib$Kh$e$Kh%#t1u%#t&/x$e&/x&Et1u&Et&FV$e&FV;'S1u;'S;:jE|;:j?&r$e?&r?Ah1u?Ah?BY$e?BY?Mn1u?Mn~$e!R$ncWPb`{pOX$eXZ%yZ]$e]^%y^p$epq%yqr$ers&dsv$evw'Qwx%yx!P$e!P!Q%y!Q!^$e!^!_&r!_!a%y!a$f$e$f$g%y$g~$eq&QUWP{pOr%yrs&dsv%yw!^%y!^!_&r!_~%yP&iRWPOv&dw!^&d!_~&dp&wR{pOr&rsv&rw~&r`'VXb`OX'QZ]'Q^p'Qqr'Qsw'Qx!P'Q!Q!^'Q!a$f'Q$g~'Q!a'{]WP{pynOX%yXY'rYZ'rZ]%y]^'r^p%ypq'rqr%yrs&dsv%yw!^%y!^!_&r!_~%y!T({Rz!SWPOv&dw!^&d!_~&d!R)Zbb`OX*cXZ+pZ]*c]^+p^p*cqr*crs+pst,{tw*cwx+px!P*c!P!Q+p!Q!]*c!]!^'Q!^!a+p!a$f*c$f$g+p$g~*c!R*hbb`OX*cXZ+pZ]*c]^+p^p*cqr*crs+pst'Qtw*cwx+px!P*c!P!Q+p!Q!]*c!]!^,X!^!a+p!a$f*c$f$g+p$g~*cq+sTOp+pqs+pt!]+p!]!^,S!^~+pq,XOXq!R,`XXqb`OX'QZ]'Q^p'Qqr'Qsw'Qx!P'Q!Q!^'Q!a$f'Q$g~'Q!R-Qab`OX.VXZ/aZ].V]^/a^p.Vqr.Vrs/asw.Vwx/ax!P.V!P!Q/a!Q!].V!]!^'Q!^!a/a!a$f.V$f$g/a$g~.V!R.[ab`OX.VXZ/aZ].V]^/a^p.Vqr.Vrs/asw.Vwx/ax!P.V!P!Q/a!Q!].V!]!^/u!^!a/a!a$f.V$f$g/a$g~.Vq/dSOp/aq!]/a!]!^/p!^~/aq/uOYq!R/|XYqb`OX'QZ]'Q^p'Qqr'Qsw'Qx!P'Q!Q!^'Q!a$f'Q$g~'Qw0pWWP{pOr%yrs&dsv%yw!^%y!^!_&r!_!`%y!`!a1Y!a~%yw1cUgUWP{pOr%yrs&dsv%yw!^%y!^!_&r!_~%y!a2U!Y_SeW]QWPb`{pOX$eXZ%yZ]$e]^%y^p$epq%yqr$ers&dsv$evw'Qwx%yx}$e}!O1u!O!P1u!P!Q%y!Q![1u![!]1u!]!^$e!^!_&r!_!a%y!a!c$e!c!}1u!}#R$e#R#S1u#S#T$e#T#o1u#o$f$e$f$g%y$g$}$e$}%O1u%O%W$e%W%o1u%o%p$e%p&a1u&a&b$e&b1p1u1p4U1u4U4d1u4d4e$e4e$IS1u$IS$I`$e$I`$Ib1u$Ib$Je$e$Je$Jg1u$Jg$Kh$e$Kh%#t1u%#t&/x$e&/x&Et1u&Et&FV$e&FV;'S1u;'S;:j5t;:j?&r$e?&r?Ah1u?Ah?BY$e?BY?Mn1u?Mn~$e!a5}eWPb`{pOX$eXZ%yZ]$e]^%y^p$epq%yqr$ers&dsv$evw'Qwx%yx!P$e!P!Q%y!Q!^$e!^!_&r!_!a%y!a$f$e$f$g%y$g;=`$e;=`<%l1u<%l~$eq7eU{pOq&rqr7wsv&rw!a&r!a!bBo!b~&rq7|X{pOr&rsv&rw}&r}!O8i!O!f&r!f!g<W!g#W&r#W#X@R#X~&rq8nT{pOr&rsv&rw}&r}!O8}!O~&rq9SV{pOr8}rs9isv8}vw9iw}8}}!O:j!O~8}P9lRO}9i}!O9u!O~9iP9xRO}9i}!O:R!O~9iP:UTO}9i}!O:R!O!`9i!`!a:e!a~9iP:jOhPq:oV{pOr8}rs9isv8}vw9iw}8}}!O;U!O~8}q;ZX{pOr8}rs9isv8}vw9iw}8}}!O;U!O!`8}!`!a;v!a~8}q;}R{phPOr&rsv&rw~&rq<]T{pOr&rsv&rw!q&r!q!r<l!r~&rq<qT{pOr&rsv&rw!e&r!e!f=Q!f~&rq=VT{pOr&rsv&rw!v&r!v!w=f!w~&rq=kT{pOr&rsv&rw!{&r!{!|=z!|~&rq>PT{pOr&rsv&rw!r&r!r!s>`!s~&rq>eT{pOr&rsv&rw!g&r!g!h>t!h~&rq>yV{pOr>trs?`sv>tvw?`w!`>t!`!a?q!a~>tP?cRO!`?`!`!a?l!a~?`P?qOjPq?xR{pjPOr&rsv&rw~&rq@WT{pOr&rsv&rw#c&r#c#d@g#d~&rq@lT{pOr&rsv&rw#V&r#V#W@{#W~&rqAQT{pOr&rsv&rw#h&r#h#iAa#i~&rqAfT{pOr&rsv&rw#m&r#m#nAu#n~&rqAzT{pOr&rsv&rw#d&r#d#eBZ#e~&rqB`T{pOr&rsv&rw#X&r#X#Y>t#Y~&rqBtV{pOrBorsCZsvBovwCZw!aBo!a!bCx!b~BoPC^RO!aCZ!a!bCg!b~CZPCjRO!`CZ!`!aCs!a~CZPCxOiPqC}V{pOrBorsCZsvBovwCZw!`Bo!`!aDd!a~BoqDkR{piPOr&rsv&rw~&ruD}U`SWP{pOr%yrs&dsv%yw!^%y!^!_&r!_~%ywEjUcUWP{pOr%yrs&dsv%yw!^%y!^!_&r!_~%y!aFVeWPb`{pOX$eXZ%yZ]$e]^%y^p$epq%yqr$ers&dsv$evw'Qwx%yx!P$e!P!Q%y!Q!^$e!^!_&r!_!a%y!a$f$e$f$g%y$g;=`$e;=`<%l1u<%l~$e",
tokenData: "Gh!aR!UOX$eXY'rYZ'rZ]$e]^'r^p$epq'rqr$ers(tsv$evw)Uwx%yx!P$e!P!Q0i!Q![$e![!]1u!]!^$e!^!_7`!_!`Dt!`!aEa!a!c$e!c!}1u!}#R$e#R#S1u#S#T$e#T#o1u#o$f$e$f$g%y$g%W$e%W%o1u%o%p$e%p&a1u&a&b$e&b1p1u1p4U$e4U4d1u4d4e$e4e$IS1u$IS$I`$e$I`$Ib1u$Ib$Kh$e$Kh%#t1u%#t&/x$e&/x&Et1u&Et&FV$e&FV;'S1u;'S;:jE|;:j?&r$e?&r?Ah1u?Ah?BY$e?BY?Mn1u?Mn~$e!R$ncUP``ypOX$eXZ%yZ]$e]^%y^p$epq%yqr$ers&dsv$evw'Qwx%yx!P$e!P!Q%y!Q!^$e!^!_&r!_!a%y!a$f$e$f$g%y$g~$eq&QUUPypOr%yrs&dsv%yw!^%y!^!_&r!_~%yP&iRUPOv&dw!^&d!_~&dp&wRypOr&rsv&rw~&r`'VX``OX'QZ]'Q^p'Qqr'Qsw'Qx!P'Q!Q!^'Q!a$f'Q$g~'Q!a'{]UPypwnOX%yXY'rYZ'rZ]%y]^'r^p%ypq'rqr%yrs&dsv%yw!^%y!^!_&r!_~%y!T({Rx!SUPOv&dw!^&d!_~&d!R)Zb``OX*cXZ+pZ]*c]^+p^p*cqr*crs+pst,{tw*cwx+px!P*c!P!Q+p!Q!]*c!]!^'Q!^!a+p!a$f*c$f$g+p$g~*c!R*hb``OX*cXZ+pZ]*c]^+p^p*cqr*crs+pst'Qtw*cwx+px!P*c!P!Q+p!Q!]*c!]!^,X!^!a+p!a$f*c$f$g+p$g~*cq+sTOp+pqs+pt!]+p!]!^,S!^~+pq,XOVq!R,`XVq``OX'QZ]'Q^p'Qqr'Qsw'Qx!P'Q!Q!^'Q!a$f'Q$g~'Q!R-Qa``OX.VXZ/aZ].V]^/a^p.Vqr.Vrs/asw.Vwx/ax!P.V!P!Q/a!Q!].V!]!^'Q!^!a/a!a$f.V$f$g/a$g~.V!R.[a``OX.VXZ/aZ].V]^/a^p.Vqr.Vrs/asw.Vwx/ax!P.V!P!Q/a!Q!].V!]!^/u!^!a/a!a$f.V$f$g/a$g~.Vq/dSOp/aq!]/a!]!^/p!^~/aq/uOWq!R/|XWq``OX'QZ]'Q^p'Qqr'Qsw'Qx!P'Q!Q!^'Q!a$f'Q$g~'Qw0pWUPypOr%yrs&dsv%yw!^%y!^!_&r!_!`%y!`!a1Y!a~%yw1cUeUUPypOr%yrs&dsv%yw!^%y!^!_&r!_~%y!a2U!Y]ScWZQUP``ypOX$eXZ%yZ]$e]^%y^p$epq%yqr$ers&dsv$evw'Qwx%yx}$e}!O1u!O!P1u!P!Q%y!Q![1u![!]1u!]!^$e!^!_&r!_!a%y!a!c$e!c!}1u!}#R$e#R#S1u#S#T$e#T#o1u#o$f$e$f$g%y$g$}$e$}%O1u%O%W$e%W%o1u%o%p$e%p&a1u&a&b$e&b1p1u1p4U1u4U4d1u4d4e$e4e$IS1u$IS$I`$e$I`$Ib1u$Ib$Je$e$Je$Jg1u$Jg$Kh$e$Kh%#t1u%#t&/x$e&/x&Et1u&Et&FV$e&FV;'S1u;'S;:j5t;:j?&r$e?&r?Ah1u?Ah?BY$e?BY?Mn1u?Mn~$e!a5}eUP``ypOX$eXZ%yZ]$e]^%y^p$epq%yqr$ers&dsv$evw'Qwx%yx!P$e!P!Q%y!Q!^$e!^!_&r!_!a%y!a$f$e$f$g%y$g;=`$e;=`<%l1u<%l~$eq7eUypOq&rqr7wsv&rw!a&r!a!bBo!b~&rq7|XypOr&rsv&rw}&r}!O8i!O!f&r!f!g<W!g#W&r#W#X@R#X~&rq8nTypOr&rsv&rw}&r}!O8}!O~&rq9SVypOr8}rs9isv8}vw9iw}8}}!O:j!O~8}P9lRO}9i}!O9u!O~9iP9xRO}9i}!O:R!O~9iP:UTO}9i}!O:R!O!`9i!`!a:e!a~9iP:jOfPq:oVypOr8}rs9isv8}vw9iw}8}}!O;U!O~8}q;ZXypOr8}rs9isv8}vw9iw}8}}!O;U!O!`8}!`!a;v!a~8}q;}RypfPOr&rsv&rw~&rq<]TypOr&rsv&rw!q&r!q!r<l!r~&rq<qTypOr&rsv&rw!e&r!e!f=Q!f~&rq=VTypOr&rsv&rw!v&r!v!w=f!w~&rq=kTypOr&rsv&rw!{&r!{!|=z!|~&rq>PTypOr&rsv&rw!r&r!r!s>`!s~&rq>eTypOr&rsv&rw!g&r!g!h>t!h~&rq>yVypOr>trs?`sv>tvw?`w!`>t!`!a?q!a~>tP?cRO!`?`!`!a?l!a~?`P?qOhPq?xRyphPOr&rsv&rw~&rq@WTypOr&rsv&rw#c&r#c#d@g#d~&rq@lTypOr&rsv&rw#V&r#V#W@{#W~&rqAQTypOr&rsv&rw#h&r#h#iAa#i~&rqAfTypOr&rsv&rw#m&r#m#nAu#n~&rqAzTypOr&rsv&rw#d&r#d#eBZ#e~&rqB`TypOr&rsv&rw#X&r#X#Y>t#Y~&rqBtVypOrBorsCZsvBovwCZw!aBo!a!bCx!b~BoPC^RO!aCZ!a!bCg!b~CZPCjRO!`CZ!`!aCs!a~CZPCxOgPqC}VypOrBorsCZsvBovwCZw!`Bo!`!aDd!a~BoqDkRypgPOr&rsv&rw~&ruD}U^SUPypOr%yrs&dsv%yw!^%y!^!_&r!_~%ywEjUaUUPypOr%yrs&dsv%yw!^%y!^!_&r!_~%y!aFVeUP``ypOX$eXZ%yZ]$e]^%y^p$epq%yqr$ers&dsv$evw'Qwx%yx!P$e!P!Q%y!Q!^$e!^!_&r!_!a%y!a$f$e$f$g%y$g;=`$e;=`<%l1u<%l~$e",
tokenizers: [tagStart, selfClosed, 0, 1, 2, 3, 4, 5],
nested: [["elementContent", elementContent,"&k~RP!^!_U~XP!P!Q[~_dXY!mYZ!m]^!mpq!m![!]$O!c!}$O#R#S$O#T#o$O%W%o$O%p&a$O&b1p$O4U4d$O4e$IS$O$I`$Ib$O$Kh%#t$O&/x&Et$O&FV;'S$O;'S;:j&e?&r?Ah$O?BY?Mn$O~!pdXY!mYZ!m]^!mpq!m![!]$O!c!}$O#R#S$O#T#o$O%W%o$O%p&a$O&b1p$O4U4d$O4e$IS$O$I`$Ib$O$Kh%#t$O&/x&Et$O&FV;'S$O;'S;:j&e?&r?Ah$O?BY?Mn$O~$RkXY%vYZ%v]^%vpq%v}!O$O!O!P$O!Q![$O![!]$O!`!a&Y!c!}$O#R#S$O#T#o$O$}%O$O%W%o$O%p&a$O&b1p$O1p4U$O4U4d$O4e$IS$O$I`$Ib$O$Je$Jg$O$Kh%#t$O&/x&Et$O&FV;'S$O;'S;:j&_?&r?Ah$O?BY?Mn$O~%yTXY%vYZ%v]^%vpq%v!`!a&Y~&_Ov~~&bP;=`<%l$O~&hP;=`<%l$O", 44]],
topRules: {"Document":[0,5]},
nested: [["elementContent", elementContent,"&k~RP!^!_U~XP!P!Q[~_dXY!mYZ!m]^!mpq!m![!]$O!c!}$O#R#S$O#T#o$O%W%o$O%p&a$O&b1p$O4U4d$O4e$IS$O$I`$Ib$O$Kh%#t$O&/x&Et$O&FV;'S$O;'S;:j&e?&r?Ah$O?BY?Mn$O~!pdXY!mYZ!m]^!mpq!m![!]$O!c!}$O#R#S$O#T#o$O%W%o$O%p&a$O&b1p$O4U4d$O4e$IS$O$I`$Ib$O$Kh%#t$O&/x&Et$O&FV;'S$O;'S;:j&e?&r?Ah$O?BY?Mn$O~$RkXY%vYZ%v]^%vpq%v}!O$O!O!P$O!Q![$O![!]$O!`!a&Y!c!}$O#R#S$O#T#o$O$}%O$O%W%o$O%p&a$O&b1p$O1p4U$O4U4d$O4e$IS$O$I`$Ib$O$Je$Jg$O$Kh%#t$O&/x&Et$O&FV;'S$O;'S;:j&_?&r?Ah$O?BY?Mn$O~%yTXY%vYZ%v]^%vpq%v!`!a&Y~&_Ot~~&bP;=`<%l$O~&hP;=`<%l$O", 42]],
specializeTable: 0,

@@ -192,0 +193,0 @@ tokenPrec: 331

{
"name": "lezer-html",
"version": "0.7.0",
"version": "0.8.0",
"description": "lezer-based HTML grammar",

@@ -9,4 +9,4 @@ "main": "dist/index.js",

"devDependencies": {
"lezer-javascript": "^0.7.0",
"lezer-generator": "^0.7.0",
"lezer-javascript": "^0.8.0",
"lezer-generator": "^0.8.0",
"mocha": "^6.1.3",

@@ -17,4 +17,8 @@ "rollup": "^1.10.0",

"dependencies": {
"lezer": "^0.7.0"
"lezer": "^0.8.0"
},
"repository": {
"type" : "git",
"url" : "https://github.com/lezer-parser/html.git"
},
"scripts": {

@@ -21,0 +25,0 @@ "build": "lezer-generator src/html.grammar -o src/parser && rollup -c",

@@ -6,12 +6,13 @@ // This file was generated by lezer-generator. You probably shouldn't edit it.

export const parser = Parser.deserialize({
states: "'bOPOTOOOgOTO'#C}O!QOWO'#ChS!XOTO'#CgOOOS'#Cg'#CgOOOS'#DU'#DUOOOS(3A[(3A[QOOOOOOOOS,59d,59dO!uOWO'#DOOOOW(3A](3A]O#POWO,59SO#TOTO'#DROOOS(3A`(3A`OOOO'#DY'#DYO#qOPO,59ROOOW,59e,59eO#{ObO1G.nOOOS,59h,59hO!QOWO'#CpO$]OpO'#CpOOOS1G.m1G.mO$dObO'#DOO$wObO7+$YO%UOWO,59[O%YOpO'#DOO%aOpO,59[O%eObO'#DPO%rObO'#CjOOO`(3A^(3A^O&VOYO<<GtO&aOWO1G.vOOO`,59f,59fO&hObO,59UOOOSAN=`AN=`OOOSAN=jAN=jO&xOWO7+$bO&|O!bO1G.pOOOS<<G|<<G|O'WO!bO'#DOO'bO!bO7+$[O'iO#tO'#CmO#{ObO<<GvO'vO#tO'#DQOOO#t(3A_(3A_O(TOWO,59XOOO`AN=bAN=bOOO#t,59g,59gOOO`1G.s1G.s",
stateData: "(]~RQOWTOXTOYTOhTOiTOjUO~RQOWTOXTOYTOhTOiTOjUOvqX~yYO]rP~RQOWTOXTOYTOhTOiTOSuPTuPwuP~yYO]rXcrX~]aO~RQOWTOXTOYTOhTOiTOSuXTuXwuX~ScOTdOweO~yYOUrP_rPcrPgrP~yYOerP~yYOUrX_rXcrXgrX`rX~_lOUsPcsPgsP~]oO~yYOerX~eoO~_lOUsXcsXgsX~yYOUrP_rP`rPcrPgrP~UsOcrOgsO~yYOcrP~`uOU^a_^ac^ag^a~cvO~yYObrPzrP~yYObrXzrX~bzOzyO~X|OY|O{|OztP~X|OY|O{|OztX~z!QO~hij~",
goto: "$m}PPPPPPPPPPP!O!UP![PP!`PP!cP!fPPPPP!l!r#Y#`#f#l#o$X$[$_PP$bPPP$jXTOPR[XROPR[TmgkRzxRe_XSOPR[QPORWPUXQcoW`XfiwUfalzQidRwuQkgRpkQ{yR!P{Q[RRb[RVOQZQQgaQhcQjdQqlQtoQxuR!OzRngR}yR^RSUOPT]R[R_R",
nodeNames: "⚠ Document ⚠ StartTag StartCloseTag StartCloseTag SelfCloserEndTag Document Text EntityReference CharacterReference Element OpenTag TagName Attribute AttributeName Is AttributeValue UnquotedAttributeValue EndTag CloseTag MismatchedTagName SelfClosingTag SelfCloseEndTag Comment ProcessingInst DoctypeDecl RawText",
states: "'bOPOTOOOgOTO'#C{O!QOWO'#CfS!XOTO'#CeOOOS'#Ce'#CeOOOS'#DS'#DSOOOS(3AY(3AYQOOOOOOOOS,59b,59bO!uOWO'#C|OOOW(3AZ(3AZO#POWO,59QO#TOTO'#DPOOOS(3A^(3A^OOOO'#DW'#DWO#qOPO,59POOOW,59c,59cO#{ObO1G.lOOOS,59f,59fO!QOWO'#CnO$]OpO'#CnOOOS1G.k1G.kO$dObO'#C|O$wObO7+$WO%UOWO,59YO%YOpO'#C|O%aOpO,59YO%eObO'#C}O%rObO'#ChOOO`(3A[(3A[O&VOYO<<GrO&aOWO1G.tOOO`,59d,59dO&hObO,59SOOOSAN=^AN=^OOOSAN=hAN=hO&xOWO7+$`O&|O!bO1G.nOOOS<<Gz<<GzO'WO!bO'#C|O'bO!bO7+$YO'iO#tO'#CkO#{ObO<<GtO'vO#tO'#DOOOO#t(3A](3A]O(TOWO,59VOOO`AN=`AN=`OOO#t,59e,59eOOO`1G.q1G.q",
stateData: "(]~PQOUTOVTOWTOfTOgTOhUO~PQOUTOVTOWTOfTOgTOhUOtoX~wYOZpP~PQOUTOVTOWTOfTOgTOQsPRsPusP~wYOZpXapX~ZaO~PQOUTOVTOWTOfTOgTOQsXRsXusX~QcORdOueO~wYOSpP]pPapPepP~wYOcpP~wYOSpX]pXapXepX^pX~]lOSqPaqPeqP~ZoO~wYOcpX~coO~]lOSqXaqXeqX~wYOSpP]pP^pPapPepP~SsOarOesO~wYOapP~^uOS[a][aa[ae[a~avO~wYO`pPxpP~wYO`pXxpX~`zOxyO~V|OW|Oy|OxrP~V|OW|Oy|OxrX~x!QO~fgh~",
goto: "$k{PPPPPPPPP|!SP!YPP!^PP!aP!dPPPPP!j!p#W#^#d#j#m$V$Y$]PP$`PPP$hXTOPR[XROPR[TmgkRzxRe_XSOPR[QPORWPUXQcoW`XfiwUfalzQidRwuQkgRpkQ{yR!P{Q[RRb[RVOQZQQgaQhcQjdQqlQtoQxuR!OzRngR}yR^RSUOPT]R[R_R",
nodeNames: "⚠ StartTag StartCloseTag StartCloseTag SelfCloserEndTag Document Text EntityReference CharacterReference Element OpenTag TagName Attribute AttributeName Is AttributeValue UnquotedAttributeValue EndTag CloseTag MismatchedTagName SelfClosingTag SelfCloseEndTag Comment ProcessingInst DoctypeDecl RawText",
repeatNodeCount: 5,
tokenData: "Gh!aR!UOX$eXY'rYZ'rZ]$e]^'r^p$epq'rqr$ers(tsv$evw)Uwx%yx!P$e!P!Q0i!Q![$e![!]1u!]!^$e!^!_7`!_!`Dt!`!aEa!a!c$e!c!}1u!}#R$e#R#S1u#S#T$e#T#o1u#o$f$e$f$g%y$g%W$e%W%o1u%o%p$e%p&a1u&a&b$e&b1p1u1p4U$e4U4d1u4d4e$e4e$IS1u$IS$I`$e$I`$Ib1u$Ib$Kh$e$Kh%#t1u%#t&/x$e&/x&Et1u&Et&FV$e&FV;'S1u;'S;:jE|;:j?&r$e?&r?Ah1u?Ah?BY$e?BY?Mn1u?Mn~$e!R$ncWPb`{pOX$eXZ%yZ]$e]^%y^p$epq%yqr$ers&dsv$evw'Qwx%yx!P$e!P!Q%y!Q!^$e!^!_&r!_!a%y!a$f$e$f$g%y$g~$eq&QUWP{pOr%yrs&dsv%yw!^%y!^!_&r!_~%yP&iRWPOv&dw!^&d!_~&dp&wR{pOr&rsv&rw~&r`'VXb`OX'QZ]'Q^p'Qqr'Qsw'Qx!P'Q!Q!^'Q!a$f'Q$g~'Q!a'{]WP{pynOX%yXY'rYZ'rZ]%y]^'r^p%ypq'rqr%yrs&dsv%yw!^%y!^!_&r!_~%y!T({Rz!SWPOv&dw!^&d!_~&d!R)Zbb`OX*cXZ+pZ]*c]^+p^p*cqr*crs+pst,{tw*cwx+px!P*c!P!Q+p!Q!]*c!]!^'Q!^!a+p!a$f*c$f$g+p$g~*c!R*hbb`OX*cXZ+pZ]*c]^+p^p*cqr*crs+pst'Qtw*cwx+px!P*c!P!Q+p!Q!]*c!]!^,X!^!a+p!a$f*c$f$g+p$g~*cq+sTOp+pqs+pt!]+p!]!^,S!^~+pq,XOXq!R,`XXqb`OX'QZ]'Q^p'Qqr'Qsw'Qx!P'Q!Q!^'Q!a$f'Q$g~'Q!R-Qab`OX.VXZ/aZ].V]^/a^p.Vqr.Vrs/asw.Vwx/ax!P.V!P!Q/a!Q!].V!]!^'Q!^!a/a!a$f.V$f$g/a$g~.V!R.[ab`OX.VXZ/aZ].V]^/a^p.Vqr.Vrs/asw.Vwx/ax!P.V!P!Q/a!Q!].V!]!^/u!^!a/a!a$f.V$f$g/a$g~.Vq/dSOp/aq!]/a!]!^/p!^~/aq/uOYq!R/|XYqb`OX'QZ]'Q^p'Qqr'Qsw'Qx!P'Q!Q!^'Q!a$f'Q$g~'Qw0pWWP{pOr%yrs&dsv%yw!^%y!^!_&r!_!`%y!`!a1Y!a~%yw1cUgUWP{pOr%yrs&dsv%yw!^%y!^!_&r!_~%y!a2U!Y_SeW]QWPb`{pOX$eXZ%yZ]$e]^%y^p$epq%yqr$ers&dsv$evw'Qwx%yx}$e}!O1u!O!P1u!P!Q%y!Q![1u![!]1u!]!^$e!^!_&r!_!a%y!a!c$e!c!}1u!}#R$e#R#S1u#S#T$e#T#o1u#o$f$e$f$g%y$g$}$e$}%O1u%O%W$e%W%o1u%o%p$e%p&a1u&a&b$e&b1p1u1p4U1u4U4d1u4d4e$e4e$IS1u$IS$I`$e$I`$Ib1u$Ib$Je$e$Je$Jg1u$Jg$Kh$e$Kh%#t1u%#t&/x$e&/x&Et1u&Et&FV$e&FV;'S1u;'S;:j5t;:j?&r$e?&r?Ah1u?Ah?BY$e?BY?Mn1u?Mn~$e!a5}eWPb`{pOX$eXZ%yZ]$e]^%y^p$epq%yqr$ers&dsv$evw'Qwx%yx!P$e!P!Q%y!Q!^$e!^!_&r!_!a%y!a$f$e$f$g%y$g;=`$e;=`<%l1u<%l~$eq7eU{pOq&rqr7wsv&rw!a&r!a!bBo!b~&rq7|X{pOr&rsv&rw}&r}!O8i!O!f&r!f!g<W!g#W&r#W#X@R#X~&rq8nT{pOr&rsv&rw}&r}!O8}!O~&rq9SV{pOr8}rs9isv8}vw9iw}8}}!O:j!O~8}P9lRO}9i}!O9u!O~9iP9xRO}9i}!O:R!O~9iP:UTO}9i}!O:R!O!`9i!`!a:e!a~9iP:jOhPq:oV{pOr8}rs9isv8}vw9iw}8}}!O;U!O~8}q;ZX{pOr8}rs9isv8}vw9iw}8}}!O;U!O!`8}!`!a;v!a~8}q;}R{phPOr&rsv&rw~&rq<]T{pOr&rsv&rw!q&r!q!r<l!r~&rq<qT{pOr&rsv&rw!e&r!e!f=Q!f~&rq=VT{pOr&rsv&rw!v&r!v!w=f!w~&rq=kT{pOr&rsv&rw!{&r!{!|=z!|~&rq>PT{pOr&rsv&rw!r&r!r!s>`!s~&rq>eT{pOr&rsv&rw!g&r!g!h>t!h~&rq>yV{pOr>trs?`sv>tvw?`w!`>t!`!a?q!a~>tP?cRO!`?`!`!a?l!a~?`P?qOjPq?xR{pjPOr&rsv&rw~&rq@WT{pOr&rsv&rw#c&r#c#d@g#d~&rq@lT{pOr&rsv&rw#V&r#V#W@{#W~&rqAQT{pOr&rsv&rw#h&r#h#iAa#i~&rqAfT{pOr&rsv&rw#m&r#m#nAu#n~&rqAzT{pOr&rsv&rw#d&r#d#eBZ#e~&rqB`T{pOr&rsv&rw#X&r#X#Y>t#Y~&rqBtV{pOrBorsCZsvBovwCZw!aBo!a!bCx!b~BoPC^RO!aCZ!a!bCg!b~CZPCjRO!`CZ!`!aCs!a~CZPCxOiPqC}V{pOrBorsCZsvBovwCZw!`Bo!`!aDd!a~BoqDkR{piPOr&rsv&rw~&ruD}U`SWP{pOr%yrs&dsv%yw!^%y!^!_&r!_~%ywEjUcUWP{pOr%yrs&dsv%yw!^%y!^!_&r!_~%y!aFVeWPb`{pOX$eXZ%yZ]$e]^%y^p$epq%yqr$ers&dsv$evw'Qwx%yx!P$e!P!Q%y!Q!^$e!^!_&r!_!a%y!a$f$e$f$g%y$g;=`$e;=`<%l1u<%l~$e",
tokenData: "Gh!aR!UOX$eXY'rYZ'rZ]$e]^'r^p$epq'rqr$ers(tsv$evw)Uwx%yx!P$e!P!Q0i!Q![$e![!]1u!]!^$e!^!_7`!_!`Dt!`!aEa!a!c$e!c!}1u!}#R$e#R#S1u#S#T$e#T#o1u#o$f$e$f$g%y$g%W$e%W%o1u%o%p$e%p&a1u&a&b$e&b1p1u1p4U$e4U4d1u4d4e$e4e$IS1u$IS$I`$e$I`$Ib1u$Ib$Kh$e$Kh%#t1u%#t&/x$e&/x&Et1u&Et&FV$e&FV;'S1u;'S;:jE|;:j?&r$e?&r?Ah1u?Ah?BY$e?BY?Mn1u?Mn~$e!R$ncUP``ypOX$eXZ%yZ]$e]^%y^p$epq%yqr$ers&dsv$evw'Qwx%yx!P$e!P!Q%y!Q!^$e!^!_&r!_!a%y!a$f$e$f$g%y$g~$eq&QUUPypOr%yrs&dsv%yw!^%y!^!_&r!_~%yP&iRUPOv&dw!^&d!_~&dp&wRypOr&rsv&rw~&r`'VX``OX'QZ]'Q^p'Qqr'Qsw'Qx!P'Q!Q!^'Q!a$f'Q$g~'Q!a'{]UPypwnOX%yXY'rYZ'rZ]%y]^'r^p%ypq'rqr%yrs&dsv%yw!^%y!^!_&r!_~%y!T({Rx!SUPOv&dw!^&d!_~&d!R)Zb``OX*cXZ+pZ]*c]^+p^p*cqr*crs+pst,{tw*cwx+px!P*c!P!Q+p!Q!]*c!]!^'Q!^!a+p!a$f*c$f$g+p$g~*c!R*hb``OX*cXZ+pZ]*c]^+p^p*cqr*crs+pst'Qtw*cwx+px!P*c!P!Q+p!Q!]*c!]!^,X!^!a+p!a$f*c$f$g+p$g~*cq+sTOp+pqs+pt!]+p!]!^,S!^~+pq,XOVq!R,`XVq``OX'QZ]'Q^p'Qqr'Qsw'Qx!P'Q!Q!^'Q!a$f'Q$g~'Q!R-Qa``OX.VXZ/aZ].V]^/a^p.Vqr.Vrs/asw.Vwx/ax!P.V!P!Q/a!Q!].V!]!^'Q!^!a/a!a$f.V$f$g/a$g~.V!R.[a``OX.VXZ/aZ].V]^/a^p.Vqr.Vrs/asw.Vwx/ax!P.V!P!Q/a!Q!].V!]!^/u!^!a/a!a$f.V$f$g/a$g~.Vq/dSOp/aq!]/a!]!^/p!^~/aq/uOWq!R/|XWq``OX'QZ]'Q^p'Qqr'Qsw'Qx!P'Q!Q!^'Q!a$f'Q$g~'Qw0pWUPypOr%yrs&dsv%yw!^%y!^!_&r!_!`%y!`!a1Y!a~%yw1cUeUUPypOr%yrs&dsv%yw!^%y!^!_&r!_~%y!a2U!Y]ScWZQUP``ypOX$eXZ%yZ]$e]^%y^p$epq%yqr$ers&dsv$evw'Qwx%yx}$e}!O1u!O!P1u!P!Q%y!Q![1u![!]1u!]!^$e!^!_&r!_!a%y!a!c$e!c!}1u!}#R$e#R#S1u#S#T$e#T#o1u#o$f$e$f$g%y$g$}$e$}%O1u%O%W$e%W%o1u%o%p$e%p&a1u&a&b$e&b1p1u1p4U1u4U4d1u4d4e$e4e$IS1u$IS$I`$e$I`$Ib1u$Ib$Je$e$Je$Jg1u$Jg$Kh$e$Kh%#t1u%#t&/x$e&/x&Et1u&Et&FV$e&FV;'S1u;'S;:j5t;:j?&r$e?&r?Ah1u?Ah?BY$e?BY?Mn1u?Mn~$e!a5}eUP``ypOX$eXZ%yZ]$e]^%y^p$epq%yqr$ers&dsv$evw'Qwx%yx!P$e!P!Q%y!Q!^$e!^!_&r!_!a%y!a$f$e$f$g%y$g;=`$e;=`<%l1u<%l~$eq7eUypOq&rqr7wsv&rw!a&r!a!bBo!b~&rq7|XypOr&rsv&rw}&r}!O8i!O!f&r!f!g<W!g#W&r#W#X@R#X~&rq8nTypOr&rsv&rw}&r}!O8}!O~&rq9SVypOr8}rs9isv8}vw9iw}8}}!O:j!O~8}P9lRO}9i}!O9u!O~9iP9xRO}9i}!O:R!O~9iP:UTO}9i}!O:R!O!`9i!`!a:e!a~9iP:jOfPq:oVypOr8}rs9isv8}vw9iw}8}}!O;U!O~8}q;ZXypOr8}rs9isv8}vw9iw}8}}!O;U!O!`8}!`!a;v!a~8}q;}RypfPOr&rsv&rw~&rq<]TypOr&rsv&rw!q&r!q!r<l!r~&rq<qTypOr&rsv&rw!e&r!e!f=Q!f~&rq=VTypOr&rsv&rw!v&r!v!w=f!w~&rq=kTypOr&rsv&rw!{&r!{!|=z!|~&rq>PTypOr&rsv&rw!r&r!r!s>`!s~&rq>eTypOr&rsv&rw!g&r!g!h>t!h~&rq>yVypOr>trs?`sv>tvw?`w!`>t!`!a?q!a~>tP?cRO!`?`!`!a?l!a~?`P?qOhPq?xRyphPOr&rsv&rw~&rq@WTypOr&rsv&rw#c&r#c#d@g#d~&rq@lTypOr&rsv&rw#V&r#V#W@{#W~&rqAQTypOr&rsv&rw#h&r#h#iAa#i~&rqAfTypOr&rsv&rw#m&r#m#nAu#n~&rqAzTypOr&rsv&rw#d&r#d#eBZ#e~&rqB`TypOr&rsv&rw#X&r#X#Y>t#Y~&rqBtVypOrBorsCZsvBovwCZw!aBo!a!bCx!b~BoPC^RO!aCZ!a!bCg!b~CZPCjRO!`CZ!`!aCs!a~CZPCxOgPqC}VypOrBorsCZsvBovwCZw!`Bo!`!aDd!a~BoqDkRypgPOr&rsv&rw~&ruD}U^SUPypOr%yrs&dsv%yw!^%y!^!_&r!_~%ywEjUaUUPypOr%yrs&dsv%yw!^%y!^!_&r!_~%y!aFVeUP``ypOX$eXZ%yZ]$e]^%y^p$epq%yqr$ers&dsv$evw'Qwx%yx!P$e!P!Q%y!Q!^$e!^!_&r!_!a%y!a$f$e$f$g%y$g;=`$e;=`<%l1u<%l~$e",
tokenizers: [tagStart, selfClosed, 0, 1, 2, 3, 4, 5],
nested: [["elementContent", elementContent,"&k~RP!^!_U~XP!P!Q[~_dXY!mYZ!m]^!mpq!m![!]$O!c!}$O#R#S$O#T#o$O%W%o$O%p&a$O&b1p$O4U4d$O4e$IS$O$I`$Ib$O$Kh%#t$O&/x&Et$O&FV;'S$O;'S;:j&e?&r?Ah$O?BY?Mn$O~!pdXY!mYZ!m]^!mpq!m![!]$O!c!}$O#R#S$O#T#o$O%W%o$O%p&a$O&b1p$O4U4d$O4e$IS$O$I`$Ib$O$Kh%#t$O&/x&Et$O&FV;'S$O;'S;:j&e?&r?Ah$O?BY?Mn$O~$RkXY%vYZ%v]^%vpq%v}!O$O!O!P$O!Q![$O![!]$O!`!a&Y!c!}$O#R#S$O#T#o$O$}%O$O%W%o$O%p&a$O&b1p$O1p4U$O4U4d$O4e$IS$O$I`$Ib$O$Je$Jg$O$Kh%#t$O&/x&Et$O&FV;'S$O;'S;:j&_?&r?Ah$O?BY?Mn$O~%yTXY%vYZ%v]^%vpq%v!`!a&Y~&_Ov~~&bP;=`<%l$O~&hP;=`<%l$O", 44]],
topRules: {"Document":[0,5]},
nested: [["elementContent", elementContent,"&k~RP!^!_U~XP!P!Q[~_dXY!mYZ!m]^!mpq!m![!]$O!c!}$O#R#S$O#T#o$O%W%o$O%p&a$O&b1p$O4U4d$O4e$IS$O$I`$Ib$O$Kh%#t$O&/x&Et$O&FV;'S$O;'S;:j&e?&r?Ah$O?BY?Mn$O~!pdXY!mYZ!m]^!mpq!m![!]$O!c!}$O#R#S$O#T#o$O%W%o$O%p&a$O&b1p$O4U4d$O4e$IS$O$I`$Ib$O$Kh%#t$O&/x&Et$O&FV;'S$O;'S;:j&e?&r?Ah$O?BY?Mn$O~$RkXY%vYZ%v]^%vpq%v}!O$O!O!P$O!Q![$O![!]$O!`!a&Y!c!}$O#R#S$O#T#o$O$}%O$O%W%o$O%p&a$O&b1p$O1p4U$O4U4d$O4e$IS$O$I`$Ib$O$Je$Jg$O$Kh%#t$O&/x&Et$O&FV;'S$O;'S;:j&_?&r?Ah$O?BY?Mn$O~%yTXY%vYZ%v]^%vpq%v!`!a&Y~&_Ot~~&bP;=`<%l$O~&hP;=`<%l$O", 42]],
specializeTable: 0,
tokenPrec: 331
})
// This file was generated by lezer-generator. You probably shouldn't edit it.
export const
StartTag = 3,
StartCloseTag = 4,
MismatchedStartCloseTag = 5,
missingCloseTag = 39,
SelfCloserEndTag = 6,
Text = 8,
EntityReference = 9,
CharacterReference = 10,
Element = 11,
OpenTag = 12,
TagName = 13,
Attribute = 14,
AttributeName = 15,
Is = 16,
AttributeValue = 17,
UnquotedAttributeValue = 18,
EndTag = 19,
CloseTag = 20,
MismatchedTagName = 21,
SelfClosingTag = 22,
SelfCloseEndTag = 23,
Comment = 24,
ProcessingInst = 25,
DoctypeDecl = 26,
RawText = 27
StartTag = 1,
StartCloseTag = 2,
MismatchedStartCloseTag = 3,
missingCloseTag = 37,
SelfCloserEndTag = 4,
Text = 6,
EntityReference = 7,
CharacterReference = 8,
Element = 9,
OpenTag = 10,
TagName = 11,
Attribute = 12,
AttributeName = 13,
Is = 14,
AttributeValue = 15,
UnquotedAttributeValue = 16,
EndTag = 17,
CloseTag = 18,
MismatchedTagName = 19,
SelfClosingTag = 20,
SelfCloseEndTag = 21,
Comment = 22,
ProcessingInst = 23,
DoctypeDecl = 24,
RawText = 25

@@ -40,1 +40,11 @@ # Doesn't parse VB as JS

Script(ExpressionStatement(null)),⚠),⚠))
# Error in JS
<script>a b</script>
==>
Document(Element(OpenTag(StartTag,TagName,EndTag),
Script(...),
CloseTag(StartCloseTag,TagName,EndTag)))
SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc