{"_id":"apg-js","_rev":"11-27455a092b333517bd82d932caa496cf","name":"apg-js","dist-tags":{"latest":"4.4.0"},"versions":{"4.0.0":{"name":"apg-js","version":"4.0.0","description":"JavaScript APG, an ABNF Parser Generator","main":"index.js","scripts":{"test":"cat ./dist/desc.txt","apg":"./bin/apg.sh","apg-conv":"./bin/apg-conv.sh","bundle-apg-conv-api":"./bin/apg-conv-api-bundle.sh","bundle-apg-lib":"./bin/apg-lib-bundle.sh","bundle-apg-api":"./bin/apg-api-bundle.sh","bundle-apg-exp":"./bin/apg-exp-bundle.sh","bundle-apg-lib-css":"./dev/apg-lib-bundle-css.sh"},"repository":{"type":"git","url":"git+https://github.com/ldthomas/apg-js.git"},"keywords":["APG","parser","generator","ABNF","SABNF","pattern-matching","regex","RegExp"],"author":{"name":"Lowell D. Thomas","email":"ldt@sabnf.com","url":"https://sabnf.com/"},"license":"BSD-2-Clause","bugs":{"url":"https://github.com/ldthomas/apg-js/issues"},"homepage":"https://github.com/ldthomas/apg-js#readme","gitHead":"e5b275ec14cc451e974cf7e3e147cdb5d41818ad","_id":"apg-js@4.0.0","_nodeVersion":"15.11.0","_npmVersion":"7.10.0","dist":{"integrity":"sha512-Nrou/7yeI6nenvDoo6+5cOLxd0tLvfdv3C8Juj2OIrpiMbROc+vjXUj2AdhXor+liPae1cACuEqROsShtOJFjg==","shasum":"ac1466f2f599aa58434bb858dea66e8239a218fb","tarball":"https://registry.npmjs.org/apg-js/-/apg-js-4.0.0.tgz","fileCount":114,"unpackedSize":1720251,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJghGSGCRA9TVsSAnZWagAAU3UP/ijJkq5JCU92uOwub7Ej\nkU9jHP4RFyOcugzp6pi4POaD1hySzlQtvcILdUsb29VO6Lh85kSqHoqM/te7\n4ynzDS+cN9xBfc6rmSPU2GXPZlOGHj8DnCJtvxoxmOiVF7jM/kYnw5eeCbch\nR9mCEaatlM19BwPxpOhXQzZeUvcC0yeNtDkzUpm1nG+iVCdwxlyA9IkmRf7n\nAQ795c+NV/OcPurG0WgaliEZAayiCrIQrEEAuRkUaenNxbB7avBdxYcy0p2a\nzpWWJ068pGHJ1X1NTTwjKMHaj9XUg1cmmtL5NvGBzKVNB3bOYYm2vjR64P4W\nowWXIKGjFZ6/4Lz21/XYLeUcvAh6aLZCQV0pIwFfQ/JXYqE4sXs6WwL2L5Fc\nTRpAEI+13VVauXv4iiYk1qsDSD30hBDUalEepQPyKgWGvY9eLcuswX5/+J08\nBF+omj9uNqR3MvknPp63w00afXdrtfVM0gkYLYBDSbRIJxcehkApZHHwhKFW\nEp+MVnSREPBze9oMvow4XhTWbESyDCM9YvqWSm7/zEjkLCC14645eZsJRnSC\ngByvIl09m0L9Pag1Nl+h0yaR5HGoSAWUHgaUE+NYVrS4vhkoW6sbKAGrZibf\nigbMkRCrFCH+KZSHWuuJ4sQfdN8uu5SWm0LloDKuZ6JcdjomWQE2jl9ZC8/R\n30wy\r\n=0FkV\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCEo76ZDb6ZKFU7B7XMa7KIjzBAUBLhRQnMcUj+AaFvdwIgSazaD15hSpwoU5qvaRgce0MCP6bDlqlwz1+FnGujxI8="}]},"_npmUser":{"name":"ldthomas","email":"ldt@sabnf.com"},"directories":{},"maintainers":[{"name":"ldthomas","email":"ldt@sabnf.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/apg-js_4.0.0_1619289222423_0.8610170152067009"},"_hasShrinkwrap":false},"4.0.1":{"name":"apg-js","version":"4.0.1","description":"JavaScript APG, an ABNF Parser Generator","main":"index.js","scripts":{"test":"cat ./dist/desc.txt","apg":"./bin/apg.sh","apg-conv":"./bin/apg-conv.sh","bundle-apg-conv-api":"./bin/apg-conv-api-bundle.sh","bundle-apg-lib":"./bin/apg-lib-bundle.sh","bundle-apg-api":"./bin/apg-api-bundle.sh","bundle-apg-exp":"./bin/apg-exp-bundle.sh","bundle-apg-lib-css":"./dev/apg-lib-bundle-css.sh"},"repository":{"type":"git","url":"git+https://github.com/ldthomas/apg-js.git"},"keywords":["APG","parser","generator","ABNF","SABNF","pattern-matching","regex","RegExp"],"author":{"name":"Lowell D. Thomas","email":"ldt@sabnf.com","url":"https://sabnf.com/"},"license":"BSD-2-Clause","bugs":{"url":"https://github.com/ldthomas/apg-js/issues"},"homepage":"https://github.com/ldthomas/apg-js#readme","gitHead":"c955d519dbda888eaff044a4840041d98d33bf7f","_id":"apg-js@4.0.1","_nodeVersion":"15.11.0","_npmVersion":"7.10.0","dist":{"integrity":"sha512-ugsUbOELh7iHnPFJcgn7awFRN7zEn3VUJLjATE7oGiSOaJv8Z9QVZ+rmCnyyJKRqMS8vr15xX+2tbVoOsORBxg==","shasum":"2510a4d06efcbc9397d0f36b006b209e8673d383","tarball":"https://registry.npmjs.org/apg-js/-/apg-js-4.0.1.tgz","fileCount":114,"unpackedSize":1417505,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJghHv6CRA9TVsSAnZWagAA9nMQAIhXWCRBrm8fcVtvgbW8\n7pO/Z6R818uUM2jJ7G78hMlTyS0i9+820KluPEFBlnrxgLiswBn+VDeh/2+6\nd8ak1W4PfTunFOIpu8dg7zKOTq2IXvMGvaPeDScMKp05Jws1s0AbrR3qnvQx\n0iTABAV0LYvfnikKQcHNDVGdrhuoAxenxDVzrpotqc3DkbunlRDzMaQpDSkO\n+6tEQm2QKUznzUUlBwjWK67H6Fw1bJsIF/uwooyLzWcAILPFChtTBHgGNubz\nGZ9y26QH4MGgkDYp4ngyno3eGCgJgw787eLvtqRsFtNAvzYnHZwXLjXHmvBJ\njGWTi+m9MTAbrUIhmc79z4Afz0LfftTcU2of9f5ATOFyCUKi2+Ls2EYfbvLB\nWHh8QhvGDSNAou4JRKo1Syhc5J/YOraaSgUuuVESQGcxJAizgjSWlW5svHvf\nwVDrmTuAb5OQtUPcqE1CVtyjuNjEvBTZ7hYSwFHCkn791MbBgu/mgeB1Gf03\niyxmApshh34ix1y8bAiCcbkVvIxMfKJYkEpbvwRLTHrCSpfW4n87MLUqItZ2\nSZQX1KS9ds1v/gNRkJJuQy4jodt9IiVz9uMEGULK8isWr0MZamgDBk2nac1M\nCucswIuD3V9wmBZ9gpZEif4wVKOq/PUFp3J4DDTi3v0yExitBDLpRHh6JFMo\nsRWR\r\n=gh5W\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEMCH0axLTY+hIFQoWaVgJGZapW0vytf1Q5B0ymLkbTEPWgCIHLUgyz5Ta2IS+Sb3n2kps2PK9Mh8X7n06ZkgTIkm+Mq"}]},"_npmUser":{"name":"ldthomas","email":"ldt@sabnf.com"},"directories":{},"maintainers":[{"name":"ldthomas","email":"ldt@sabnf.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/apg-js_4.0.1_1619295226067_0.5780612358445585"},"_hasShrinkwrap":false},"4.0.2":{"name":"apg-js","version":"4.0.2","description":"JavaScript APG, an ABNF Parser Generator","main":"index.js","scripts":{"test":"cat ./dist/desc.txt","apg":"./bin/apg.sh","apg-conv":"./bin/apg-conv.sh","bundle-apg-conv-api":"./bin/apg-conv-api-bundle.sh","bundle-apg-lib":"./bin/apg-lib-bundle.sh","bundle-apg-api":"./bin/apg-api-bundle.sh","bundle-apg-exp":"./bin/apg-exp-bundle.sh","bundle-apg-lib-css":"./dev/apg-lib-bundle-css.sh"},"repository":{"type":"git","url":"git+https://github.com/ldthomas/apg-js.git"},"keywords":["APG","parser","generator","ABNF","SABNF","pattern-matching","regex","RegExp"],"author":{"name":"Lowell D. Thomas","email":"ldt@sabnf.com","url":"https://sabnf.com/"},"license":"BSD-2-Clause","bugs":{"url":"https://github.com/ldthomas/apg-js/issues"},"homepage":"https://github.com/ldthomas/apg-js#readme","gitHead":"5492dd4d36c54ce1b49c35da7aea25de3d45b0fe","_id":"apg-js@4.0.2","_nodeVersion":"15.11.0","_npmVersion":"7.10.0","dist":{"integrity":"sha512-X0UZE3IpCrwEtH6NinpQTratwaPr+qXiEcXrndnwy91FeJvNiipneoVk8d3JBIh42MB+X9RIHHvTqwo8EmgMhw==","shasum":"1c47638e3ccda33201a3b817561a740c6006155f","tarball":"https://registry.npmjs.org/apg-js/-/apg-js-4.0.2.tgz","fileCount":114,"unpackedSize":1632432,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJghdOYCRA9TVsSAnZWagAARCkP+gMjziLlQ0q11Gq+mli9\nBh4x0KjZoItV97oPb2+vu7qxdlJRdfQsddevQWuvbKI/P42rufxLmtLbSJNw\nCQF8h41DV1tqQEbb4gF2WJrSnY+UE5OrQxWiSzRBxEUYSEWLL4MMiEXQwFY0\nwlUHocPtzJxcbS3n6YJTKo/ZcbZFOiuAgBmi/2v7ZuJN1xOvckugPEmobzn7\nHKKYIxHw6rNnCHpvMPTDXU8+dm98o5e7QIu0FKV3VI4BddCRexFgIuLW30iR\nLEWocNiORTDnkuLhqdpBbGAYAQvJGRSVaR0rC7nr7xVQW1pgW6j+2KzA1kLv\nXXELEzWwMBLxQjyh0YsuDixHYicOKju/Ffab0f4SImAZ1AJ7DGf1WZ+/vySw\nL22ZoHsJZzBUaMi3v05fKD1k5R+inaz5lM/azNmHsa0XmK7BPwtwLbNeEVWw\nabUyS7VAlVoTVKE6on892Lf15mg41d1ckL01Ez6xzh2BokQstAwJe/bsYzT8\nmh6ONeUB6zmWuBHm877322k5FahfNT+vxDHHxONdPjIRBbfd5BTdX5mJ2zcV\n9HlqrRCRdTvGNd7YoHq+3pCxGkZPLOTthY0MCLzUau1PJWD5mZUTbZ5c52Ry\nvKZJ4/kspyeeGu+FWMIJNWMrYM42pzaeZCrkp9X3SEK+ktUf851qgInW3F0a\nfeAe\r\n=BoEL\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFK9JpEMO4DqcnxFMTHwM39ipEuT+5aR6p3c/iEyeYbxAiEAhkdCv87rHWnUa3KNkITLk6KmMk19qxLorYK9GQLKNno="}]},"_npmUser":{"name":"ldthomas","email":"ldt@sabnf.com"},"directories":{},"maintainers":[{"name":"ldthomas","email":"ldt@sabnf.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/apg-js_4.0.2_1619383191455_0.3646883938273966"},"_hasShrinkwrap":false},"4.1.0":{"name":"apg-js","version":"4.1.0","description":"JavaScript APG, an ABNF Parser Generator","main":"index.js","scripts":{"test":"cat ./dist/desc.txt","apg":"./bin/apg.sh","apg-conv":"./bin/apg-conv.sh","bundle-apg-conv-api":"./bin/apg-conv-api-bundle.sh","bundle-apg-lib":"./bin/apg-lib-bundle.sh","bundle-apg-api":"./bin/apg-api-bundle.sh","bundle-apg-exp":"./bin/apg-exp-bundle.sh","bundle-apg-lib-css":"./dev/apg-lib-bundle-css.sh"},"repository":{"type":"git","url":"git+https://github.com/ldthomas/apg-js.git"},"keywords":["APG","parser","generator","ABNF","SABNF","pattern-matching","regex","RegExp"],"author":{"name":"Lowell D. Thomas","email":"ldt@sabnf.com","url":"https://sabnf.com/"},"license":"BSD-2-Clause","bugs":{"url":"https://github.com/ldthomas/apg-js/issues"},"homepage":"https://github.com/ldthomas/apg-js#readme","devDependencies":{"eslint":"^7.26.0","eslint-config-airbnb":"^18.2.1","eslint-config-prettier":"^8.3.0","eslint-plugin-prettier":"^3.4.0","prettier":"^2.3.0"},"gitHead":"fa7474e6e36690cbfc3eb9be9c3e32dce98a1728","_id":"apg-js@4.1.0","_nodeVersion":"15.11.0","_npmVersion":"7.13.0","dist":{"integrity":"sha512-b8K3MmupxAFyEW1KdwUPo3psmeqtstnxHFnUI0SccxPEVyzvIZfw9MqtWmh4LqXi6FJpg212meWzWuZzr3W1fg==","shasum":"ba1a1df8d177e6b6f1d0a0e3ecd9397481f422ed","tarball":"https://registry.npmjs.org/apg-js/-/apg-js-4.1.0.tgz","fileCount":113,"unpackedSize":1451328,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgqr3SCRA9TVsSAnZWagAAU1AP/AtcZZbh8Z9Y1rSEr3x1\nD9TXAqHibWDqwToKwZ//XtpxJseg/zjJ0u0VH065muVugnhTPHxfkxtg/LQ5\nZcmvmWiqogju3nTF2LLQvZz3tBR8jN0ZHh+25oFX64GL5mcIE+tKncceDFCH\nYF66XDIaF7cZUwsmuyCVxxKRD0vmS+8xtCILJwc6wy99VJKRepFpCvCMBnBL\n80iUDO0o4CaUmxTfkK1Xv29WzW14V58+opPghS80bJ2I+1B+xj3ieeL1aesa\nkdo+zSZ6hGp5jS5BdNZ2yRAzcnVMEPnakdW1CwFMpa3bBnCoGaQXEgpv2DCC\n+MbuPktNv8wkP4qS96K061q0NfcmzcQ0UBDIKZzBeiNJnpBV2CoJPwzqkpgQ\nhUBDexxvIvbnGxA5m1ewr8g4petZNhPx7h9CiJ9p2M5AlWK/tf0TeqCSDeaK\nuaI2G/dBvs5SLrj6pijqdAW9Xkmb/bPW32+AMOyAdqwJF3JnViGV6KCC6BCd\nVceeXJAiiLp4PJECQvVzbSI+PYn5hVX+fHq/vgKcGJUerTtvGCaJSzmNVtWZ\nnPldjE/GrFxeJk3wh3zI5GXWV+6iD4kgvRLxNmyH9s/RNIlRZ5FceoXqCfDW\nwsYPMINK9hLHUV7IyKHk+WdS483tlFvzVwTyDRsWmiNxTr5TIRvLe0kkdvmV\nMA4i\r\n=RzfE\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDUFiDH+k8cUt00/EHF9UTdITdxg09yTDX/9LLWcPo2SAiBfFKGFAyJ8FgsBxFG537yJ6FnrEfa5c1Uv0bFgmAgJnQ=="}]},"_npmUser":{"name":"ldthomas","email":"ldt@sabnf.com"},"directories":{},"maintainers":[{"name":"ldthomas","email":"ldt@sabnf.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/apg-js_4.1.0_1621802450294_0.17649000116171454"},"_hasShrinkwrap":false},"4.1.1":{"name":"apg-js","version":"4.1.1","description":"JavaScript APG, an ABNF Parser Generator","main":"index.js","scripts":{"test":"cat ./dist/desc.txt","apg":"./bin/apg.sh","apg-conv":"./bin/apg-conv.sh","bundle-apg-conv-api":"./bin/apg-conv-api-bundle.sh","bundle-apg-lib":"./bin/apg-lib-bundle.sh","bundle-apg-api":"./bin/apg-api-bundle.sh","bundle-apg-exp":"./bin/apg-exp-bundle.sh","bundle-apg-lib-css":"./dev/apg-lib-bundle-css.sh"},"repository":{"type":"git","url":"git+https://github.com/ldthomas/apg-js.git"},"keywords":["APG","parser","generator","ABNF","SABNF","pattern-matching","regex","RegExp"],"author":{"name":"Lowell D. Thomas","email":"ldt@sabnf.com","url":"https://sabnf.com/"},"license":"BSD-2-Clause","bugs":{"url":"https://github.com/ldthomas/apg-js/issues"},"homepage":"https://github.com/ldthomas/apg-js#readme","devDependencies":{"eslint":"^7.26.0","eslint-config-airbnb":"^18.2.1","eslint-config-prettier":"^8.3.0","eslint-plugin-prettier":"^3.4.0","prettier":"^2.3.0"},"gitHead":"17f648c5ee151b2b8ebfd097d88f5565a5e41071","_id":"apg-js@4.1.1","_nodeVersion":"15.11.0","_npmVersion":"7.17.0","dist":{"integrity":"sha512-DwTfzx1YuCrnEvywiU/AYKiX8Y6JzhY8PwaM9syh54zzBPaHzonN7c4YsAspC6YcdSu/jfBXBJ1S9hj1QsiePA==","shasum":"5ee8a74e26517073e1bda66705eca6fc22b305e2","tarball":"https://registry.npmjs.org/apg-js/-/apg-js-4.1.1.tgz","fileCount":113,"unpackedSize":1451458,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgzNRdCRA9TVsSAnZWagAAPaYP/2rMVjMIu29AQiGEZqwT\nPPsZkbn1AiqDoIpgoi7JcZKSvqB/w/Bni5UwlETQLW3ycNEl5U+dYYSg6XgH\nkfNiZHkgemYEewoqtjfAZi3wCtH/phIKdzDD2g9OoWm7Qc8dqqrs+6RufoQb\nWQdoMA92sI1IP3/df/76AUGM4+v+OwOetqJfO4RSdEB02Dtg5McKjXUzX6mD\nEGunG2ncOxPDsTDe5xlVyxL16gygD9OyTkNQA+BckHXEbqWpb36VIaxz63nj\nro1mJBav0x62t+q/+ePkM2FwZwb2fkM6r96ab8/ZIdG7sZdVZMjsKmkmNyOn\nG1RpW7U8Kyio1av8Loxk3tl5BqugkQ/Dhp9tKbbyDstTxY74moVb6PRT93jq\nzteIlwMISdk9rScgW70696CEpsb+6qYLZaRbgWpgKiIsX9+Yjcr5Ay0h6AsX\nQrZ6ejwZrHDqm5WGrFn64gIAU3Gy2nAsSfmTOg9949GwT7aGAJuDfb9mnt1c\n9CxBNyQuznpte0MGD/rXvaOp/j2Ld+MgEx5a8LyuizNsJKxPBnoZDRlSteJv\n4QSkXmRhj4PrXyL4k8MSOCaO2ug8pDctHeFU8xvKgA59XCabOSBx7SNERZJ7\nQMwgwIryE8Ix9V6IrwxCq/x8iVVaAnkhNvS6EzyoV6PRWx3pVbQeDF/fEU8B\ncAe5\r\n=CInU\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDsMze2R7UjuNSyx7Hvi5mnSUsBn9PC1Rt0MAIIRid56gIhAPrZ2EIMk1X6OGrA3lwnZOEQHs/P+ktdWjSssVfqtC7O"}]},"_npmUser":{"name":"ldthomas","email":"ldt@sabnf.com"},"directories":{},"maintainers":[{"name":"ldthomas","email":"ldt@sabnf.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/apg-js_4.1.1_1624036444582_0.04071968174096474"},"_hasShrinkwrap":false},"4.1.2":{"name":"apg-js","version":"4.1.2","description":"JavaScript APG, an ABNF Parser Generator","main":"index.js","scripts":{"test":"cat ./dist/desc.txt","apg":"./bin/apg.sh","apg-conv":"./bin/apg-conv.sh","bundle-apg-conv-api":"./bin/apg-conv-api-bundle.sh","bundle-apg-lib":"./bin/apg-lib-bundle.sh","bundle-apg-api":"./bin/apg-api-bundle.sh","bundle-apg-exp":"./bin/apg-exp-bundle.sh","bundle-apg-lib-css":"./dev/apg-lib-bundle-css.sh"},"repository":{"type":"git","url":"git+https://github.com/ldthomas/apg-js.git"},"keywords":["APG","parser","generator","ABNF","SABNF","pattern-matching","regex","RegExp"],"author":{"name":"Lowell D. Thomas","email":"ldt@sabnf.com","url":"https://sabnf.com/"},"license":"BSD-2-Clause","bugs":{"url":"https://github.com/ldthomas/apg-js/issues"},"homepage":"https://github.com/ldthomas/apg-js#readme","devDependencies":{"eslint":"^7.26.0","eslint-config-airbnb":"^18.2.1","eslint-config-prettier":"^8.3.0","eslint-plugin-prettier":"^3.4.0","prettier":"^2.3.0"},"gitHead":"9a970585e97edf8c8d5a78fa7f8a6f4807160cf5","_id":"apg-js@4.1.2","_nodeVersion":"15.11.0","_npmVersion":"7.17.0","dist":{"integrity":"sha512-2OALKUe82NLVPe4NTooom8NykWIa2D7YxO7jG1pgnYWnkfhTUriXpITmLvVD8k8TzDfa9G5O4y8rPe2/uUB1Bg==","shasum":"1adcebc677cf6377edff2835b4127890a84f3adf","tarball":"https://registry.npmjs.org/apg-js/-/apg-js-4.1.2.tgz","fileCount":113,"unpackedSize":1451628,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCe0dbDnjRZcY5CHByKDht9IPRrUFv7BxYaDoRlcxKjpgIgTRLvYf+xmx7u3Eq+y+lOXVRlhXJQctab6Zqcd9CyWs4="}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJiiTTQACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpZgg//dqjPy4BQav0dEHjYNgl9HzG61fPqY23ox0g8bvT5lknOo0Kn\r\nqfUVy6Yg5OglET9EyaBle7MM56uvdg9QHQnP8q1fA7QtDRMPdyIQUGSyX+8h\r\n2t4gu8zcs6ZsvTBZ6sQ64UwS1LPDHTqvGy58/AEvlth2opASWEbzhqwD2qTD\r\nZ07Dnk/VCPd7lkims9kMexMLNGIfYETAsakw/04xDAPC1oo7Oc5qaFT7CW0/\r\nRojOfJ6AQpEcqjBqGcBbkMtZkD7RLh1wAGffRzoCUSbCzGrgOsXfuznfRT6R\r\ngH2KS//MVNE6GtHjjSGxxpa2tSqmz7GZTo8WYOu69smM1Wsex9hKtU0tT7tw\r\nIQBwHnp0SrvOoMe2SQkf2TMNRPsG6NT99MQ3ns/OYeOCw1aWSBVC0+ZkKZaz\r\nAOCfnGkpli2xvbHSyMJ30AmWjf8uJzOJ/fRFK90qHLF8UYZypYpFcLFSyvOb\r\nXAaZBu0wPrdBRYyB3athXARUvHXQ1rSkzmi8Htopz1VQAR+VAplIeEwHTck4\r\n+wNIkoWT9Tbf6gcUkZxMnU1fXgcUYwKuxuKN6a68alQKrWkrrC+umZwFLcbC\r\nZ+ertjf1fKxdMiR5xnZfOcxHD1mePDwFSNDrnkVQDEdX7GHLJw0hu7zVcF7l\r\nohO7s77Ood2SbsFd7037RcXf4Iw25pnLDuw=\r\n=zWKA\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"ldthomas","email":"ldt@sabnf.com"},"directories":{},"maintainers":[{"name":"ldthomas","email":"ldt@sabnf.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/apg-js_4.1.2_1653159119753_0.12117503520984907"},"_hasShrinkwrap":false},"4.1.3":{"name":"apg-js","version":"4.1.3","description":"JavaScript APG, an ABNF Parser Generator","main":"index.js","scripts":{"test":"cat ./dist/desc.txt","apg":"./bin/apg.sh","apg-conv":"./bin/apg-conv.sh","bundle-apg-conv-api":"./bin/apg-conv-api-bundle.sh","bundle-apg-lib":"./bin/apg-lib-bundle.sh","bundle-apg-api":"./bin/apg-api-bundle.sh","bundle-apg-exp":"./bin/apg-exp-bundle.sh","bundle-apg-lib-css":"./dev/apg-lib-bundle-css.sh"},"repository":{"type":"git","url":"git+https://github.com/ldthomas/apg-js.git"},"keywords":["APG","parser","generator","ABNF","SABNF","pattern-matching","regex","RegExp"],"author":{"name":"Lowell D. Thomas","email":"ldt@sabnf.com","url":"https://sabnf.com/"},"license":"BSD-2-Clause","bugs":{"url":"https://github.com/ldthomas/apg-js/issues"},"homepage":"https://github.com/ldthomas/apg-js#readme","devDependencies":{"eslint":"^7.26.0","eslint-config-airbnb":"^18.2.1","eslint-config-prettier":"^8.3.0","eslint-plugin-prettier":"^3.4.0","prettier":"^2.3.0"},"gitHead":"e0217dd27bb4216da4adf52a616f5e55acd5e2da","_id":"apg-js@4.1.3","_nodeVersion":"15.11.0","_npmVersion":"7.17.0","dist":{"integrity":"sha512-XYyDcoBho8OpnWPRnedMwyL+76ovCtsESerHZEfY39dO4IrEqN97mdEYkOyHa0XTX5+3+U5FmpqPLttK0f7n6g==","shasum":"0cb9dc99f8830740d7a8f9fc0048fa618ae4d199","tarball":"https://registry.npmjs.org/apg-js/-/apg-js-4.1.3.tgz","fileCount":113,"unpackedSize":1451627,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDx8GpftPL/3SnCrwrmqol459CrUxtmXGJFHO2JETSaNgIhAJroWuJ6sSbnh5Fp65O8sjxMCHtrj2ptP8vDv7FD/O3L"}],"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjvWCAACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmoxVQ/+JhjHVnyNaVC4RvY0l6I6vsBFCt/E3Gv7VcF3dEZDohSW3mAT\r\nKMnQcsbSXdF+c/8YPY8hH2oIPWy1F/9/TMyr/qO60b8+M1GPzn4PhxLY6kXq\r\nZxTnbUO1l0xKY3kEnnFKhAyKWFrTPm3gS9n9hTeLnUsfRuFSDeHrCidq18tB\r\n+i20uTe7t5Z9urkTspwXACX8vawa0d44auJHoQOgWZuRc5EdafcAFXObXR4S\r\nQEdXvFLKnb3RSxv4YQ81sVJwSE21/Tbnj914Kj37U9GDWkTuU+KlY121uKyt\r\nfVuEDNrXhb8NkGNqZaPlJmN7RdLxuj8PmQFY0L7JAbpDgYMFtgHOsAaHRYu/\r\nlSpcB2LKEp2g7hYzJsXR2A7oFRZ7+aizDvQ2763ICviDQOiFPkXbxtU8rBpv\r\nBXYlJT86bDFvrxlrl05xYyMFzJNTtrLu5X+swcE28red/oyNL6n6IDwPJDu1\r\n5kjjIAE+mewTNtLRw5G/xIFB2DFCOvuOY43Vmy8ktqLf/g7k9Etj3eMW/CTj\r\nGKr8+decg0GGGfJz5jRRLc/I7riuL1+79Rag380zueOfwuMaQ82nd9SICqDr\r\n0GuR0HqCfTUheYMn+i/wR0hys3R9tKmhFCQJuE5yOScCT7ZkJLXZ2J0DNrGi\r\npoKqPcDQbbrnhdxfdIvtBsgPa7oN0uTZB/0=\r\n=rK+A\r\n-----END PGP SIGNATURE-----\r\n"},"_npmUser":{"name":"ldthomas","email":"ldt@sabnf.com"},"directories":{},"maintainers":[{"name":"ldthomas","email":"ldt@sabnf.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/apg-js_4.1.3_1673355392334_0.9307834335486744"},"_hasShrinkwrap":false},"4.2.0":{"name":"apg-js","version":"4.2.0","description":"JavaScript APG, an ABNF Parser Generator","main":"index.js","scripts":{"test":"cat ./dist/desc.txt","apg":"./bin/apg.sh","apg-conv":"./bin/apg-conv.sh","bundle-apg-conv-api":"./bin/apg-conv-api-bundle.sh","bundle-apg-lib":"./bin/apg-lib-bundle.sh","bundle-apg-api":"./bin/apg-api-bundle.sh","bundle-apg-exp":"./bin/apg-exp-bundle.sh","bundle-apg-lib-css":"./dev/apg-lib-bundle-css.sh","docco":"docco -l classic index.md README.md LICENSE.md ./src/apg/*.js ./src/apg-api/*.js ./src/apg-conv/*.js ./src/apg-conv-api/*.js ./src/apg-exp/*.js ./src/apg-lib/*.js"},"repository":{"type":"git","url":"git+https://github.com/ldthomas/apg-js.git"},"keywords":["APG","parser","generator","ABNF","SABNF","pattern-matching","regex","RegExp"],"author":{"name":"Lowell D. Thomas","email":"ldt@sabnf.com","url":"https://sabnf.com/"},"license":"BSD-2-Clause","bugs":{"url":"https://github.com/ldthomas/apg-js/issues"},"homepage":"https://github.com/ldthomas/apg-js#readme","devDependencies":{"browserify":"^17.0.0","docco":"^0.9.1","eslint":"^7.26.0","eslint-config-airbnb":"^18.2.1","eslint-config-prettier":"^8.3.0","eslint-plugin-prettier":"^3.4.0","less":"^4.2.0","minify":"^10.3.0","prettier":"^2.3.0","terser":"^5.19.2"},"_id":"apg-js@4.2.0","gitHead":"bbde9e029840dc44def8da23131fc75c915bf9e1","_nodeVersion":"20.5.0","_npmVersion":"9.8.0","dist":{"integrity":"sha512-4WI3AYN9DmJWK3+3r/DtVMI+RO45R0u/b7tJWb5EM2c8nIzojx8Oq5LpMalou3sQnmS9qzw7cKmHBrAjdlseWw==","shasum":"c26e7271640e67d3d4738b93bae8ee53773b0635","tarball":"https://registry.npmjs.org/apg-js/-/apg-js-4.2.0.tgz","fileCount":112,"unpackedSize":1449547,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD+Wd6gqMKcpA5QX+acPSaWA9ylTSGOCGACRo/u8JTiEwIhAMgR79XpyCFPrDxLJKRtCqargUvUPHmiT+VOVLFuMGT7"}]},"_npmUser":{"name":"ldthomas","email":"ldt@sabnf.com"},"directories":{},"maintainers":[{"name":"ldthomas","email":"ldt@sabnf.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/apg-js_4.2.0_1692368645551_0.9587465122700018"},"_hasShrinkwrap":false},"4.2.1":{"name":"apg-js","version":"4.2.1","description":"JavaScript APG, an ABNF Parser Generator","main":"index.js","scripts":{"test":"cat ./dist/desc.txt","apg":"./bin/apg.sh","apg-conv":"./bin/apg-conv.sh","bundle-apg-conv-api":"./bin/apg-conv-api-bundle.sh","bundle-apg-lib":"./bin/apg-lib-bundle.sh","bundle-apg-api":"./bin/apg-api-bundle.sh","bundle-apg-exp":"./bin/apg-exp-bundle.sh","bundle-apg-lib-css":"./dev/apg-lib-bundle-css.sh","docco":"docco -l classic index.md README.md LICENSE.md ./src/apg/*.js ./src/apg-api/*.js ./src/apg-conv/*.js ./src/apg-conv-api/*.js ./src/apg-exp/*.js ./src/apg-lib/*.js"},"repository":{"type":"git","url":"git+https://github.com/ldthomas/apg-js.git"},"keywords":["APG","parser","generator","ABNF","SABNF","pattern-matching","regex","RegExp"],"author":{"name":"Lowell D. Thomas","email":"ldt@sabnf.com","url":"https://sabnf.com/"},"license":"BSD-2-Clause","bugs":{"url":"https://github.com/ldthomas/apg-js/issues"},"homepage":"https://github.com/ldthomas/apg-js#readme","devDependencies":{"browserify":"^17.0.0","docco":"^0.9.1","eslint":"^7.26.0","eslint-config-airbnb":"^18.2.1","eslint-config-prettier":"^8.3.0","eslint-plugin-prettier":"^3.4.0","less":"^4.2.0","minify":"^10.3.0","prettier":"^2.3.0","terser":"^5.19.2"},"_id":"apg-js@4.2.1","gitHead":"39cc77b83e7f67f738236b80027f8aa0682819df","_nodeVersion":"20.5.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-S3unf9jb9XrhmZYC27L5yits1p/+HqN6lksrkqKEv1U0Ytu+ENkIkOMV5+iutFjBaY9JTUCDQFS1svHsy3uNZA==","shasum":"cae595e8300fa4c5bc7ef755da9ac4289b70a62c","tarball":"https://registry.npmjs.org/apg-js/-/apg-js-4.2.1.tgz","fileCount":112,"unpackedSize":1450859,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICsBc9DU4ixN2kznshO/e3Nq/GX5l45Tx6/A6M+q9LEtAiBuGHVByCo38rhDpWQ8kbg1CsegsUf1dpjRVZ41zlmwcQ=="}]},"_npmUser":{"name":"ldthomas","email":"ldt@sabnf.com"},"directories":{},"maintainers":[{"name":"ldthomas","email":"ldt@sabnf.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/apg-js_4.2.1_1695478089573_0.14616358727947754"},"_hasShrinkwrap":false},"4.3.0":{"name":"apg-js","version":"4.3.0","description":"JavaScript APG, an ABNF Parser Generator","main":"index.js","scripts":{"test":"cat ./dist/desc.txt","apg":"./bin/apg.sh","apg-conv":"./bin/apg-conv.sh","bundle-apg-conv-api":"./bin/apg-conv-api-bundle.sh","bundle-apg-lib":"./bin/apg-lib-bundle.sh","bundle-apg-api":"./bin/apg-api-bundle.sh","bundle-apg-exp":"./bin/apg-exp-bundle.sh","bundle-apg-lib-css":"./dev/apg-lib-bundle-css.sh","docco":"docco -l classic index.md README.md LICENSE.md ./src/apg/*.js ./src/apg-api/*.js ./src/apg-conv/*.js ./src/apg-conv-api/*.js ./src/apg-exp/*.js ./src/apg-lib/*.js"},"repository":{"type":"git","url":"git+https://github.com/ldthomas/apg-js.git"},"keywords":["APG","parser","generator","ABNF","SABNF","pattern-matching","regex","RegExp"],"author":{"name":"Lowell D. Thomas","email":"ldt@sabnf.com","url":"https://sabnf.com/"},"license":"BSD-2-Clause","bugs":{"url":"https://github.com/ldthomas/apg-js/issues"},"homepage":"https://github.com/ldthomas/apg-js#readme","devDependencies":{"browserify":"^17.0.0","docco":"^0.9.1","eslint":"^7.26.0","eslint-config-airbnb":"^18.2.1","eslint-config-prettier":"^8.3.0","eslint-plugin-prettier":"^3.4.0","less":"^4.2.0","minify":"^10.3.0","prettier":"^2.3.0","terser":"^5.19.2"},"_id":"apg-js@4.3.0","gitHead":"428da0ae6be17729ebe09e204cb5c52ba608b248","_nodeVersion":"20.9.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-8U8MULS+JocCnm11bfrVS4zxtAcE3uOiCAI21SnjDrV9LNhMSGwTGGeko3QfyK1JLWwT7KebFqJMB2puzfdFMQ==","shasum":"2c55d3f1aa6b90be5d3c6539f346cf2c726702c3","tarball":"https://registry.npmjs.org/apg-js/-/apg-js-4.3.0.tgz","fileCount":112,"unpackedSize":1454908,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIEG6TeNvsvhTA5bMfQXn2s3pC9TyOf28ZZY8BPXP52uHAiEAlPuAt4FIdMbtrSvW5Re3xlb3RHqHom95zmKll8wkWMY="}]},"_npmUser":{"name":"ldthomas","email":"ldt@sabnf.com"},"directories":{},"maintainers":[{"name":"ldthomas","email":"ldt@sabnf.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/apg-js_4.3.0_1701112332722_0.7879632942449775"},"_hasShrinkwrap":false},"4.4.0":{"name":"apg-js","version":"4.4.0","description":"JavaScript APG, an ABNF Parser Generator","main":"index.js","scripts":{"test":"cat ./dist/desc.txt","apg":"./bin/apg.sh","regen":"./bin/a.sh && ./bin/b.sh && ./bin/c.sh && ./bin/b.sh  && ./bin/d.sh","apg-conv":"./bin/apg-conv.sh","bundle-apg-conv-api":"./bin/apg-conv-api-bundle.sh","bundle-apg-lib":"./bin/apg-lib-bundle.sh","bundle-apg-api":"./bin/apg-api-bundle.sh","bundle-apg-exp":"./bin/apg-exp-bundle.sh","bundle-apg-lib-css":"./dev/apg-lib-bundle-css.sh","docco":"docco -l classic index.md README.md LICENSE.md ./src/apg/*.js ./src/apg-api/*.js ./src/apg-conv/*.js ./src/apg-conv-api/*.js ./src/apg-exp/*.js ./src/apg-lib/*.js"},"repository":{"type":"git","url":"git+https://github.com/ldthomas/apg-js.git"},"keywords":["APG","parser","generator","ABNF","SABNF","pattern-matching","regex","RegExp"],"author":{"name":"Lowell D. Thomas","email":"ldt@sabnf.com","url":"https://sabnf.com/"},"license":"BSD-2-Clause","bugs":{"url":"https://github.com/ldthomas/apg-js/issues"},"homepage":"https://github.com/ldthomas/apg-js#readme","devDependencies":{"browserify":"^17.0.0","docco":"^0.9.1","eslint":"^7.26.0","eslint-config-airbnb":"^18.2.1","eslint-config-prettier":"^8.3.0","eslint-plugin-prettier":"^3.4.0","less":"^4.2.0","minify":"^10.3.0","prettier":"^2.3.0","terser":"^5.19.2"},"_id":"apg-js@4.4.0","gitHead":"89b217377c10dfa73838387ebd11d69d347a8961","_nodeVersion":"20.9.0","_npmVersion":"10.1.0","dist":{"integrity":"sha512-fefmXFknJmtgtNEXfPwZKYkMFX4Fyeyz+fNF6JWp87biGOPslJbCBVU158zvKRZfHBKnJDy8CMM40oLFGkXT8Q==","shasum":"09dcecab0731fbde233b9f2352fdd2d07e56b2cf","tarball":"https://registry.npmjs.org/apg-js/-/apg-js-4.4.0.tgz","fileCount":116,"unpackedSize":1459469,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCYvxjUohKRPF53Hanf5THigkVCH1s6qq+/pEBzX2gVHgIhANeZ0QSj51JIcVX1gBKo8uR4pbMSp1E1rg1edJfXFiqu"}]},"_npmUser":{"name":"ldthomas","email":"ldt@sabnf.com"},"directories":{},"maintainers":[{"name":"ldthomas","email":"ldt@sabnf.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/apg-js_4.4.0_1715002303605_0.5725017960362075"},"_hasShrinkwrap":false}},"time":{"created":"2021-04-24T18:33:42.423Z","4.0.0":"2021-04-24T18:33:42.546Z","modified":"2024-05-06T13:31:44.044Z","4.0.1":"2021-04-24T20:13:46.298Z","4.0.2":"2021-04-25T20:39:51.704Z","4.1.0":"2021-05-23T20:40:50.566Z","4.1.1":"2021-06-18T17:14:04.772Z","4.1.2":"2022-05-21T18:52:00.056Z","4.1.3":"2023-01-10T12:56:32.537Z","4.2.0":"2023-08-18T14:24:05.802Z","4.2.1":"2023-09-23T14:08:09.861Z","4.3.0":"2023-11-27T19:12:12.986Z","4.4.0":"2024-05-06T13:31:43.868Z"},"maintainers":[{"name":"ldthomas","email":"ldt@sabnf.com"}],"description":"JavaScript APG, an ABNF Parser Generator","homepage":"https://github.com/ldthomas/apg-js#readme","keywords":["APG","parser","generator","ABNF","SABNF","pattern-matching","regex","RegExp"],"repository":{"type":"git","url":"git+https://github.com/ldthomas/apg-js.git"},"author":{"name":"Lowell D. Thomas","email":"ldt@sabnf.com","url":"https://sabnf.com/"},"bugs":{"url":"https://github.com/ldthomas/apg-js/issues"},"license":"BSD-2-Clause","readme":"# JavaScript APG\n\n## 4.4.0 Release Notes\n\nVersion 4.4.0 adds an option, `--typescript`, to the APG genererator which will\ngenerate a `typescript`-compatible grammar object. The new script `regen` will\nregenerate all the grammar objects in place anytime a change is made to any of\nthe ABNF grammars or if the generator is modified in any way.\n\n## 4.3.0 Release Notes\n\nVersion 4.3.0 adds support for [apg-lite](https://github.com/ldthomas/apg-lite),\na new, light-weight version of the parsers built from this library.\nThe parser generator (`src/apg/apg.js`) has a new option, `--lite`, that will\ngenerate grammar objects for the `apg-lite` parsers.\nSee the documentation for `apg-lite` for a complete description.\n\nVersion 4.3.0 makes no other changes to the previous version other than adding the new `apg-lite` feature.\n\n## 4.2.1 Release Notes\n\nSome ABNF grammar authors will use zero repetitions as an explicit empty string acceptor.\nThat is, one or the other of something like,\n\n> char = %d33-127  \n> empty1 = 0char  \n> empty2 = 0\"x\"\n\nPrevious version of APG have rejected zero repititions as an empty string acceptor in favor of\nthe more intuitive and simpler to produce and simpler to process empty literal string\n\n> empty = \"\"\n\n`apg-js` version 4.2.0 and lower neglects to reject the zero repetitions form and, unfortunately,\nit only sometimes actually accepts an empty string and sometimes fails.\nVersion 4.2.1 corrects this. Zero repetitions are allowed as explicit empty string acceptors and\nare processed correctly.\n\nNote, however, that zero repetitions is deprecated in that not all implementations of APG accept it\nand that is it is slightly less efficient to implement.\nFavored is the more streamlined empty literal string, `\"\"`\n\n## 4.2.0 Release Notes\n\nVersion 4.2.0 fixes some issues that have been causing problems for some bundlers and/or development tools.\n`./src/apg-conv-api/converter.js`, `./src/apg-conv-api/transformers.js` and `./src/apg-lib/utilities.js` now refer\nexplicitly to the exported functions rather than relying on a saved copy of the `this` reference.\nAlso, use of the global `Buffer` object has been replaced with\n\n> const { Buffer } = require('buffer');\n\nand similary for `fs` and other global `node.js` properties, as recommended in the Node.js v20.5.1 documentation.\n(_Note that `require('node:buffer')` causes problems with using `browerify` to bundle the libraries for web page use.\nRemoving the `node:` prefix solves that problem without causing problems with the bundle usage. Thanks to contributions\nin the GitHub issue #13 thread for this suggestion._)\n\nThis updated version of `apg-js` has been tested with all of the examples in [apg-js-examples](https://github.com/ldthomas/apg-js-examples). All examples including the web page examples work as expected.\n\nAlso, all dependencies have been moved to devDependencies, removing the need for any globally installed packages.\n\n## Overview\n\n`apg-js` is the JavaScript version of APG, an ABNF Parser Generator. APG generates recursive-descent parsers directly from a superset of [ABNF](https://tools.ietf.org/html/rfc5234) (SABNF). Visit the [APG](https://sabnf.com/) website for a complete [overview](https://sabnf.com/overview/) of APG and SABNF.\n\n`apg-js` obsoletes `apg-js2`, `apg-js2-lib`, `apg-js2-exp`, `apg-js2-api`, `apg-conv` and `apg-conv-api`. It changes them in two significant ways.\n\n- It fixes a major problem in the attributes algorithm. Previous versions could fail on large grammars with many or large sets of mutually-recursive rules.\n- It combines all of those packages into a single, easier to manage and maintain package.\n\n## Documentation\n\nThis package is meant to assist other parsing applications and is normally not installed by itself, rather installed along with those other applications. For details and many examples of using of the libraries, both in `node.js` and browser web page applications, see `apg-js-examples` at [GitHub](https://github.com/ldthomas/apg-js-examples) or [npmjs](https://www.npmjs.com/package/apg-js-examples).\nHowever, it does provide access to two, `node.js` applications, `apg` and `apg-conv`.\n\n### Applications\n\n`apg` is the parser generator. To see its usage run,\n\n> `npm run apg -- --help`\n\n`apg-conv` is a data conversion application. To see its usage run,\n\n> `npm run apg-conv -- --help`\n\n### Libraries\n\nThis package contains four libraries that can be used in either `node.js` or browser applications.\nThe libraries depend upon one another and the dependency tree looks like so:\n\n```\napg-exp\n|- apg-api\n|-|- apg-lib\n|-|-|- apg-conv-api\n```\n\nEach of the libraries is bundled for browser use along with some special styles.\nEach bundle contains all of its dependencies explicitly. That is, if a browser application needs both `apg-api` and `apg-lib`, only the `apg-api` bundle need be scripted into the page.\n\nThe library and css bundles are in the `./dist` directory.\n\n```\n./dist/apg-exp-bundle.js\n./dist/apg-api-bundle.js\n./dist/apg-lib-bundle.js\n./dist/apg-conv-api-bundle.js\n./dist/apg-lib-bundle.css\n```\n\nThe bundles can all be regenerated with the scripts:\n\n```\nnpm run bundle-apg-conv-api\nnpm run bundle-apg-lib\nnpm run bundle-apg-api\nnpm run bundle-apg-exp\nnpm run bundle-apg-lib-css\n```\n\n### Code Documentation\n\nThe code documentation is in [docco](http://ashkenas.com/docco/) format and can be generated with:\n\n```\nnpm run docco\n```\n\nThe documentation is then at `./docs/index.html` or see it [here](https://sabnf.com/docs/apg-js/) at the [APG](https://sabnf.com/) website.\n","readmeFilename":"README.md"}