{"_id":"parseley","_rev":"13-c1b681e0c739a4d102687d07f769d770","name":"parseley","dist-tags":{"latest":"0.13.1"},"versions":{"0.5.0":{"name":"parseley","version":"0.5.0","keywords":["CSS","selectors","parser","AST","serializer","specificity"],"author":{"name":"KillyMXI"},"license":"MIT","_id":"parseley@0.5.0","maintainers":[{"name":"killy.mxi","email":"killy.mxi@gmail.com"}],"homepage":"https://github.com/mxxii/parseley","bugs":{"url":"https://github.com/mxxii/parseley/issues"},"ava":{"files":["test/**/*"],"verbose":true},"dist":{"shasum":"6b25a654a0b51b36148c2969a7da55f94b7f8d46","tarball":"https://registry.npmjs.org/parseley/-/parseley-0.5.0.tgz","fileCount":7,"integrity":"sha512-sd/jo04pMazGz0C+IFH6h1Y9L36iyQj0lTcjcidGNJlF4pNSiCdCgEbPcTGnYtZ8xIquXeUNJvOdLmZvbBGK2A==","signatures":[{"sig":"MEQCID+OCg3Hgl0sHJ8I/4YhTIsFB/wjLmZ2VGfxc22CYjFMAiAISPWkg5Z331wyiNtuvkJwKPlKxY1zswLpRRvXH8ut+g==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":20217,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgayRjCRA9TVsSAnZWagAAneoP/2ZkbS3zpaLMp9sQ5UPD\ndHEzaFOCV72HEKTtGSa12Fs5P6YaGHo56yDuodNrMsr6L5jQovJ4tIkmr5w0\n6/ELCf0PN2O812pFCylotzQC/jVjVc5/MoAvebRRKOt4b+EmZQCRQqGVxyMF\ngD5eALUv+rX9R4R6e6B8vAnObkVJxJhYudfrmejN1GC/ymkuKITsVuyUsD43\nQYX14sZd8reOxg7StZcBdzL4EVybGi4dTP6kr3vEyewujwkHfg1QlNliyMOe\nhcaKWBwLL6NKFX+surnU75K+TtDT8DMEddfa0Lz4BJjrDuttF+m+jQeL/JAc\nPT356OAFMVq1CWWJPI0IcHXOQu9XxxehISP8yC0zq5i7Q4h3Rz9QQezsVLKU\noCd3hl7FrY7sEGRWxgeMrsMPTr4MoNob6+WRnLmJHXoevXG3PHmQzv/Jc7v6\n68vWV8kIxWQz+lvdM3HU3+LEgGR3oXBWZlaB6eJ//Nm4T0x9tsl/ZRvpYr0m\nBFIMQw93rTy+Pz7ln9+hNP1WdrSxnd1cXtTWFvEqMvM5Fk93mD4WE92n1L2/\nkecOBzLpmqfm9mijNbt4d4w9sOHvEZ4SjtvAWK2f12mcYyXWFKVcFUNlTiiu\nHu3hdnl3JUjDwQMQFB7FLwyo1cOAxOlz2I3vY+r+zkkNuIuWQAFIbgP0SSZl\nLiIW\r\n=N9bU\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","funding":"https://ko-fi.com/killymxi","gitHead":"2a795a2986705f5116f47d907af5d783eda52e4c","scripts":{"lint":"npm run lint:eslint && npm run lint:md","test":"ava","lint:md":"markdownlint --ignore-path .gitignore .","nearley":"nearleyc ./lib/grammar.ne -o ./lib/grammar.js","pretest":"npm run nearley","checkAll":"npm run lint && npm test","lint:eslint":"eslint .","prepublishOnly":"npm run checkAll"},"_npmUser":{"name":"killy.mxi","email":"killy.mxi@gmail.com"},"repository":{"url":"git+https://github.com/mxxii/parseley.git","type":"git"},"_npmVersion":"6.14.10","description":"CSS selectors parser, based on nearley","directories":{},"_nodeVersion":"10.23.2","dependencies":{"moo":"^0.5.1","nearley":"^2.20.1"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","markdownlint-cli":"^0.27.1","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-jsonc":"^1.2.1"},"_npmOperationalInternal":{"tmp":"tmp/parseley_0.5.0_1617634403300_0.7981243640082138","host":"s3://npm-registry-packages"}},"0.6.0":{"name":"parseley","version":"0.6.0","keywords":["CSS","selectors","parser","AST","serializer","specificity"],"author":{"name":"KillyMXI"},"license":"MIT","_id":"parseley@0.6.0","maintainers":[{"name":"killy.mxi","email":"killy.mxi@gmail.com"}],"homepage":"https://github.com/mxxii/parseley","bugs":{"url":"https://github.com/mxxii/parseley/issues"},"ava":{"files":["test/**/*"],"verbose":true},"dist":{"shasum":"743037ac1899e1a17cc3854e854787a7b45ee595","tarball":"https://registry.npmjs.org/parseley/-/parseley-0.6.0.tgz","fileCount":7,"integrity":"sha512-vJMBChFNVtaqlBQnmeo8HsZurKrqUOcTW3YXO1Q0xE6itE1jNm0aBF7Q/OzhAl6ZaMGghlzCJwnbS/X4aLYB1A==","signatures":[{"sig":"MEYCIQC1mxu8pCYZL3MZdH+xD1pDOLsrRPOtLALLQH9clV5T4QIhALXe+bSLIhRol2FMMHINhV2cbvf4rZo4itB0AQfWyMO2","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":23388,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgbHOkCRA9TVsSAnZWagAAaXcQAJLAUTUOV8+th3KNxqI+\nXUGQuMfu+TsTvrNCSKkGCxe6BjEhioASwBvikEqljGct4G7NFpLn4Zl1YqLn\nzh/7QY0zB9uGVC3Ap/UcQtwXxx6qD7NGXKTCbpBcVjFn6NxGhiknv+Ci276w\nQjijSPQGICjP2fwHEKSmsqVLFoDtdDC3revNkp4CAoaOmD9J2V2jOgl3BNvp\nJTv6bNq450E1D03olKgMyC8pa9GZ2RqIN0DruYqoIlfkAM3NQM7nuniA2tVf\noTs6ym7HCRKJKo18Ats5OTRph7/Eengr1iuv7K18ZewIC3l9K29000goKWh9\nNS48JogaVShVyYHwqZIe5OlCb68SPZS8pxh9VeRhxMVPD84ABHRYC/6/rZOb\n0MpYj6ExDovf/+nl/JotdH3p/GRA/jjIRHbX3NRSvPy1VfAYGVQH1mg9owx+\nBYEdgTP6076PLrTGE1i3XtP5OuRBBUviZxOYIQsZC/sbpXEuWFpg2OSX+szZ\n0Yo6IzFXau6llzbsPwsT9Mg626B2tWX0qFJ6CuD2q5jIbndmqDDbt0kEkIpi\nnSOmj8KQZmuB9NVi6n616xuqoq60hoaluBwoAMTiJHPPEyd8LgP7ZEVpKXpe\nZbXmsZZaGU4OaLB1pchFgsjIFRY9UVPXib7nL0Pnpw6rmPoEwOsXl6lDCzkG\nDCQT\r\n=p/kE\r\n-----END PGP SIGNATURE-----\r\n"},"main":"index.js","funding":"https://ko-fi.com/killymxi","gitHead":"0e9a85d6a53176a6dbf7c0f6669ddc2c8752a9fc","scripts":{"lint":"npm run lint:eslint && npm run lint:md","test":"ava","lint:md":"markdownlint --ignore-path .gitignore .","nearley":"nearleyc ./lib/grammar.ne -o ./lib/grammar.js","pretest":"npm run nearley","checkAll":"npm run lint && npm test","lint:eslint":"eslint .","prepublishOnly":"npm run checkAll"},"_npmUser":{"name":"killy.mxi","email":"killy.mxi@gmail.com"},"repository":{"url":"git+https://github.com/mxxii/parseley.git","type":"git"},"_npmVersion":"6.14.10","description":"CSS selectors parser, based on nearley","directories":{},"_nodeVersion":"10.23.2","dependencies":{"moo":"^0.5.1","nearley":"^2.20.1"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","eslint":"^7.23.0","markdownlint-cli":"^0.27.1","eslint-plugin-jsdoc":"^32.3.0","eslint-plugin-jsonc":"^1.2.1"},"_npmOperationalInternal":{"tmp":"tmp/parseley_0.6.0_1617720227456_0.6218221835531501","host":"s3://npm-registry-packages"}},"0.7.0":{"name":"parseley","version":"0.7.0","keywords":["CSS","selectors","parser","AST","serializer","specificity"],"author":{"name":"KillyMXI"},"license":"MIT","_id":"parseley@0.7.0","maintainers":[{"name":"killy.mxi","email":"killy.mxi@gmail.com"}],"homepage":"https://github.com/mxxii/parseley","bugs":{"url":"https://github.com/mxxii/parseley/issues"},"ava":{"files":["test/**/*"],"require":["ts-node/register"],"verbose":true,"extensions":["ts"],"environmentVariables":{"TS_NODE_FILES":"true"}},"dist":{"shasum":"9949e3a0ed05c5072adb04f013c2810cf49171a8","tarball":"https://registry.npmjs.org/parseley/-/parseley-0.7.0.tgz","fileCount":8,"integrity":"sha512-xyOytsdDu077M3/46Am+2cGXEKM9U9QclBDv7fimY7e+BBlxh2JcBp2mgNsmkyA9uvgyTjVzDi7cP1v4hcFxbw==","signatures":[{"sig":"MEUCIA5xRHI08Bxhq4LHfWnIzSd2kCT4glbkY3gTIQ3Hv8S1AiEA4fs40Cp7iUH75t6nuYzJooJhvWfdVGVc0Ht35FE1NpA=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":46104,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgfDIDCRA9TVsSAnZWagAAMMwQAIZkbSJkBGLHZmhX7ETD\n5sHU9cN6XhaJ3vocaf2ULz2nkgfy6ls2x5mIzDJO4OIGTqzgwdcsJJPO434a\n3ehUWwo4zYyAZ3Z1XvdJCvfc8vUCgyJaYWpLvqZlVVzbTRoXIb7NZXgWM/uI\ngPBFeem6MrZWx+Z6RnaiBBcY8S3egMSpe+oNXk/mOSCfQVLxPjahfRmm/bl1\nB0u2y1yKN189bZOnBJ60p52NzhUfgbzPVjWrG1NhpDs4nNNQ5s+xPMSwiVQv\nBx91gfdW+MBiVQcUtEoCfSTG+9xjuLs71ZW2iuxk6Qa2s66rFxiKnjovqbtB\n6dB8daycTK4iihG7A59yzZ7e5BHBIJHuwftqp56oBn6JnJEUdLgLRk71bSuL\n+4BpVJFp/2CCH/ftYmOc3SgT7cZHSFWiPZew3SQwIlL1f7XlvWAbJq50RP/L\n/93pDkBSC0GuWJ7+hvlH+QOoQy3qoApdELrmYv08LOKtmhr0xCTfe1zadQd5\nCqK+d5QpuaXzeBjM7IDaJnIyremah25vELSlmcGdxMVL5phiqIh0+pC3jyOK\nUzdn1FqpUi6or8o7sxoteYAUz66KYYj4ACcEVY76zW8Cqka+Pj0F//oecL+v\naJdezJFHZyCXTWLN3pOphZvELUWjYYhe17tQZREWvTRGY0kLjDyBBhwxc9M+\nJkiJ\r\n=pcqO\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./lib/parseley.cjs","type":"module","types":"./lib/parseley.d.ts","module":"./lib/parseley.mjs","exports":{"import":"./lib/parseley.mjs","require":"./lib/parseley.cjs"},"funding":"https://ko-fi.com/killymxi","gitHead":"bf5ae7cb9037a01ff12c902f547c5290f9d103ea","scripts":{"lint":"npm run lint:eslint && npm run lint:md","test":"ava","build":"npm run nearley && npm run clean && npm run build:rollup && npm run build:types && npm run build:docs","clean":"rimraf lib","example":"node ./example/example.cjs","lint:md":"markdownlint --ignore-path .gitignore .","nearley":"nearleyc ./src/grammar.ne -o ./src/grammar.ts","pretest":"npm run nearley","checkAll":"npm run lint && npm test","build:docs":"typedoc","build:types":"tsc -d --emitDeclarationOnly --declarationDir ./lib && rimraf ./lib/grammar.d.ts","lint:eslint":"eslint .","build:rollup":"rollup -c","prepublishOnly":"npm run build && npm run checkAll"},"_npmUser":{"name":"killy.mxi","email":"killy.mxi@gmail.com"},"repository":{"url":"git+https://github.com/mxxii/parseley.git","type":"git"},"_npmVersion":"6.14.10","description":"CSS selectors parser, based on nearley","directories":{},"_nodeVersion":"10.23.2","dependencies":{"moo":"^0.5.1","nearley":"^2.20.1"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","tslib":"^2.2.0","eslint":"^7.24.0","rimraf":"^3.0.2","rollup":"^2.45.2","ts-node":"^9.1.1","typedoc":"^0.20.35","@types/moo":"^0.5.4","typescript":"^4.2.4","@types/nearley":"^2.11.1","@tsconfig/node10":"^1.0.7","markdownlint-cli":"^0.27.1","eslint-plugin-jsonc":"^1.2.1","eslint-plugin-tsdoc":"^0.2.12","typedoc-plugin-markdown":"^3.7.0","@rollup/plugin-typescript":"^8.2.1","@typescript-eslint/parser":"^4.22.0","@typescript-eslint/eslint-plugin":"^4.22.0"},"_npmOperationalInternal":{"tmp":"tmp/parseley_0.7.0_1618752002861_0.39777707786439964","host":"s3://npm-registry-packages"}},"0.8.0":{"name":"parseley","version":"0.8.0","keywords":["CSS","selectors","parser","AST","serializer","specificity"],"author":{"name":"KillyMXI"},"license":"MIT","_id":"parseley@0.8.0","maintainers":[{"name":"killy.mxi","email":"killy.mxi@gmail.com"}],"homepage":"https://github.com/mxxii/parseley","bugs":{"url":"https://github.com/mxxii/parseley/issues"},"ava":{"files":["test/**/*"],"require":["ts-node/register"],"verbose":true,"extensions":["ts"],"environmentVariables":{"TS_NODE_FILES":"true"}},"dist":{"shasum":"acb2550278e360527b0d9a868f0e30e5beaf93d2","tarball":"https://registry.npmjs.org/parseley/-/parseley-0.8.0.tgz","fileCount":8,"integrity":"sha512-uIMOtH5LLE3HX1mTfCqFyp4jtUi+eaQDDq8IVRaf7B9Eu5L+Y/kltCzzE1sas1UO/Kr5h5UjGz7jGwwMu0sW+Q==","signatures":[{"sig":"MEUCIQCnmXpbi00Xp00ffE1PvdOs85TteXuPdF7mehjTt9mcXQIgSzliSRPmhjTgqhjc/MudZ2ow60VGTdD2D6JMEhcjaQY=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":46357},"main":"./lib/parseley.cjs","type":"module","types":"./lib/parseley.d.ts","module":"./lib/parseley.mjs","exports":{"import":"./lib/parseley.mjs","require":"./lib/parseley.cjs"},"funding":"https://ko-fi.com/killymxi","gitHead":"ffa882766b1aadecf2ac9a23424348c90e25b150","scripts":{"lint":"npm run lint:eslint && npm run lint:md","test":"ava --timeout=20s","build":"npm run nearley && npm run clean && npm run build:rollup && npm run build:types && npm run build:docs","clean":"rimraf lib","example":"node ./example/example.cjs","lint:md":"markdownlint-cli2","nearley":"nearleyc ./src/grammar.ne -o ./src/grammar.ts","pretest":"npm run nearley","checkAll":"npm run lint && npm test","build:docs":"typedoc","build:types":"tsc --declaration --emitDeclarationOnly && rimraf ./lib/grammar.d.ts","lint:eslint":"eslint .","build:rollup":"rollup -c","prepublishOnly":"npm run build && npm run checkAll"},"_npmUser":{"name":"killy.mxi","email":"killy.mxi@gmail.com"},"repository":{"url":"git+https://github.com/mxxii/parseley.git","type":"git"},"_npmVersion":"6.14.15","description":"CSS selectors parser, based on nearley","directories":{},"_nodeVersion":"12.22.6","dependencies":{"moo":"^0.5.1","nearley":"^2.20.1"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","tslib":"^2.3.1","eslint":"^7.32.0","rimraf":"^3.0.2","rollup":"^2.59.0","ts-node":"^9.1.1","typedoc":"^0.22.8","@types/moo":"^0.5.5","typescript":"^4.4.4","@types/node":"^12.20.37","@types/nearley":"^2.11.2","@tsconfig/node12":"^1.0.9","markdownlint-cli2":"^0.1.3","eslint-plugin-jsonc":"^2.0.0","eslint-plugin-tsdoc":"^0.2.14","typedoc-plugin-markdown":"^3.11.3","@rollup/plugin-typescript":"^8.3.0","@typescript-eslint/parser":"^5.3.1","@typescript-eslint/eslint-plugin":"^5.3.1"},"_npmOperationalInternal":{"tmp":"tmp/parseley_0.8.0_1636581763863_0.2595927599089862","host":"s3://npm-registry-packages"}},"0.9.0":{"name":"parseley","version":"0.9.0","keywords":["CSS","selectors","parser","AST","serializer","specificity"],"author":{"name":"KillyMXI"},"license":"MIT","_id":"parseley@0.9.0","maintainers":[{"name":"killy.mxi","email":"killy.mxi@gmail.com"}],"homepage":"https://github.com/mxxii/parseley","bugs":{"url":"https://github.com/mxxii/parseley/issues"},"ava":{"files":["test/**/*"],"verbose":true,"extensions":{"ts":"module"},"nodeArguments":["--loader=ts-node/esm","--experimental-specifier-resolution=node"],"nonSemVerExperiments":{"configurableModuleFormat":true}},"dist":{"shasum":"8c658b8c37f6c852cd43e1c28983d195b1cea8a7","tarball":"https://registry.npmjs.org/parseley/-/parseley-0.9.0.tgz","fileCount":9,"integrity":"sha512-Ak7bnHnFPbNaTv8A6cNDcU4fDSOo5g1On7pboGaXTpct3CFST5pGHdgRZuNSkzCDseYRGdBNfs5eDSNcClyPjw==","signatures":[{"sig":"MEYCIQCxqO8Id3gPWjXKKyw9KUPE0yZ6HKHGGGTppRgG7cKJkQIhAO8eMYDMkkqYkhUlVs0vC2KCeCCrps5HHFZYQfXNK//h","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":26743,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhrNGHCRA9TVsSAnZWagAAVVoP/2RbDfikZbgDUsO2zhq2\n7XchAtA76RjLY0Q9R/d/cG+DkTUgQaH0R9Aj1yiJxY2ViozEF3MA0dGWOWYc\nA7lCLb1Vj+1FJ7YeDMaMNNlgPRV2vjJpr/MRUW3iWjCjFOjf884ZEYreZcw1\ncPR4iThqiq9JHfBU+KW8fe2A13Gml04JuJc+nwYhVcuiJs1jWkz4/To7MYvE\nfQ8EC6S7Nu38ZjfanwKi4pUiRv1+6GtS+xPzyUtD4+gwaGfgzOWvOkjCAAjf\nfKvVzNNQ5+3dx5OaXF/CbfKBM4hnkVvbJJmQFKUUPQTuLcSC8Pha/xsQzPRx\nB4FQdUnLdmrI0DLdvKBRi1JEAFJXT4nRbo9KjeIQJfeBQZH7pcKRsC/R/kUR\npBNZvN/wFAMaKdqR8/T8Om+bqZ2RCi3+cIeiNbyP5UnOG9ZEuC0UPsGr70dS\nte3XG806sy2jWRaJ7K+OPHXWAlvvGfbptLdUgQ0nrBarrYHTOmTCQm2IV8wC\nWB2boirKrlPk7KC84tFL7XpmNZOY9gXGhmH9F5O0CSUQBK5EA3uNtS/A0CBU\n/0JqtsFw57BQmWpZZpw3h+Yfzn4rBaQSLKE3Ro5AdscTDT+sJLm4Xd80nr5J\n2MJj5asbKpLGg9kc1M6T0suVAsJvqBh8Wr3Qv/I8EHtbyAYzPumOGSpNJr9A\n+blL\r\n=vBUZ\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./lib/parseley.cjs","type":"module","types":"./lib/parseley.d.ts","module":"./lib/parseley.mjs","denoify":{"out":"./deno","ports":{"leac":"https://deno.land/x/leac/leac.ts","peberminta":"https://deno.land/x/peberminta/core.ts"}},"exports":{"import":"./lib/parseley.mjs","require":"./lib/parseley.cjs"},"funding":"https://ko-fi.com/killymxi","gitHead":"c74d63cfe98558b37b7cc9d6a3d54e3a02d2d071","scripts":{"lint":"npm run lint:eslint && npm run lint:md","test":"ava --timeout=20s","build":"npm run clean && npm run build:rollup && npm run build:types && npm run build:docs && npm run build:deno","clean":"rimraf lib","example":"node ./example/example.cjs","lint:md":"markdownlint-cli2","checkAll":"npm run lint && npm test","build:deno":"denoify","build:docs":"typedoc","build:types":"tsc --declaration --emitDeclarationOnly","lint:eslint":"eslint .","build:rollup":"rollup -c","prepublishOnly":"npm run build && npm run checkAll"},"_npmUser":{"name":"killy.mxi","email":"killy.mxi@gmail.com"},"repository":{"url":"git+https://github.com/mxxii/parseley.git","type":"git"},"_npmVersion":"6.14.15","description":"CSS selectors parser","directories":{},"sideEffects":false,"_nodeVersion":"12.22.6","dependencies":{"leac":"^0.5.0","peberminta":"^0.5.2"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","tslib":"^2.3.1","eslint":"^8.4.0","rimraf":"^3.0.2","rollup":"^2.60.2","denoify":"^0.10.5","ts-node":"^10.4.0","typedoc":"^0.22.10","typescript":"^4.5.2","@types/node":"^12.20.37","@tsconfig/node12":"^1.0.9","markdownlint-cli2":"^0.3.2","eslint-plugin-jsonc":"^2.0.0","eslint-plugin-tsdoc":"^0.2.14","rollup-plugin-terser":"^7.0.2","typedoc-plugin-markdown":"^3.11.7","@rollup/plugin-typescript":"^8.3.0","@typescript-eslint/parser":"^5.5.0","@typescript-eslint/eslint-plugin":"^5.5.0"},"_npmOperationalInternal":{"tmp":"tmp/parseley_0.9.0_1638715783086_0.2393660736938379","host":"s3://npm-registry-packages"}},"0.9.1":{"name":"parseley","version":"0.9.1","keywords":["CSS","selectors","parser","AST","serializer","specificity"],"author":{"name":"KillyMXI"},"license":"MIT","_id":"parseley@0.9.1","maintainers":[{"name":"killy.mxi","email":"killy.mxi@gmail.com"}],"homepage":"https://github.com/mxxii/parseley","bugs":{"url":"https://github.com/mxxii/parseley/issues"},"ava":{"files":["test/**/*"],"verbose":true,"extensions":{"ts":"module"},"nodeArguments":["--loader=ts-node/esm","--experimental-specifier-resolution=node"],"nonSemVerExperiments":{"configurableModuleFormat":true}},"dist":{"shasum":"e13d1259dcaac3504ad2846aa904bc6c83c90c73","tarball":"https://registry.npmjs.org/parseley/-/parseley-0.9.1.tgz","fileCount":9,"integrity":"sha512-nA3YKrbL2t4vhenGoOVANeOh2F2nnbupQQnWH+K5ZekItYrhuKvuuTV7DSSjNTqvrbVO2cudAqJCaeiPX3/VZA==","signatures":[{"sig":"MEYCIQCekeAnnMwG0HNERwIR1ezab0HgHDV16PXgRHRAhfmnpAIhAKC1KsDCLIFVJ7NO9U+zoKxduwqYp4GHe/CDK25h+zPV","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":36515,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhrj9sCRA9TVsSAnZWagAAs+EP/jzg5hnffY0BUrmhWYoy\nqq7uGQEx9A29KiUci1FhdXScyF8gTPuSMqgWpD2aHKauBptkBMDGoNqdroBt\nVIvsPl3LFNYmj5EVoZoNLk3P4fl+7ULlk5YChKJd1IvgoBxzMndcM7GWn9vj\n9PEigyFx8CdRs4ILjnJsWbIOclAZOaFSiIt2jzKj8Mfrd0vUqZU2LbU+7ZH/\nFGH0HFeGB4lblWd4q7C/MSnzf/xSNIwbmKk+1qzL5GMrLYRFHIOwU5CrS6Yk\nxPiqQ7Z0pAJ2rke95HmqFqgkbiLn30lqh1TVaV55dyN3h9IvuYmc67b44YPb\nulJEBRSbsSoIBTFV8xv3+dfpOwJv6xVS/h93nI9QLIfOCdCthF2VK0gR+GCi\nyZ8QUmz5CD42zQV+060uDRHFr3BIHi3LU5yLoDKVgyHG/EM7wmxJn1S2kxdi\nSXIScmK1cyg1L4mtHOtPRcLlH55J3H+JPxDUlNC+LFZV4IacjPyh/Sldo4G1\nspYKo439y1GgmV5rEJcoc43eQpH35+EH9XpIE2FhQKHzIt4z59AHLtosKgHY\nzdJyoAQhopJ5o86c/H52r4dfk18dDCSXzGI1OADTnCYZLypMZn4lflOotzKY\n8izlYXi7FGA9GYhDydJLJHY0bolG0FToawapAelPLfGN3jkRAaZpoU82MjV9\nIyFY\r\n=DzdY\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./lib/parseley.cjs","type":"module","types":"./lib/parseley.d.ts","module":"./lib/parseley.mjs","denoify":{"out":"./deno","ports":{"leac":"https://deno.land/x/leac/leac.ts","peberminta":"https://deno.land/x/peberminta/core.ts"}},"exports":{"import":"./lib/parseley.mjs","require":"./lib/parseley.cjs"},"funding":"https://ko-fi.com/killymxi","gitHead":"ec4bcf5bec851274045874aaa8e53b520694bf65","scripts":{"lint":"npm run lint:eslint && npm run lint:md","test":"ava --timeout=20s","build":"npm run clean && npm run build:rollup && npm run build:types && npm run build:docs && npm run build:deno","clean":"rimraf lib","example":"node ./example/example.cjs","lint:md":"markdownlint-cli2","checkAll":"npm run lint && npm test","build:deno":"denoify","build:docs":"typedoc","build:types":"tsc --declaration --emitDeclarationOnly","lint:eslint":"eslint .","build:rollup":"rollup -c","prepublishOnly":"npm run build && npm run checkAll"},"_npmUser":{"name":"killy.mxi","email":"killy.mxi@gmail.com"},"repository":{"url":"git+https://github.com/mxxii/parseley.git","type":"git"},"_npmVersion":"6.14.15","description":"CSS selectors parser","directories":{},"sideEffects":false,"_nodeVersion":"12.22.6","dependencies":{"leac":"^0.5.0","peberminta":"^0.5.4"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^3.15.0","tslib":"^2.3.1","eslint":"^8.4.0","rimraf":"^3.0.2","rollup":"^2.60.2","denoify":"^0.10.5","ts-node":"^10.4.0","typedoc":"^0.22.10","typescript":"^4.5.2","@types/node":"^12.20.37","@tsconfig/node12":"^1.0.9","markdownlint-cli2":"^0.3.2","eslint-plugin-jsonc":"^2.0.0","eslint-plugin-tsdoc":"^0.2.14","rollup-plugin-cleanup":"^3.2.1","typedoc-plugin-markdown":"^3.11.7","@rollup/plugin-typescript":"^8.3.0","@typescript-eslint/parser":"^5.5.0","@typescript-eslint/eslint-plugin":"^5.5.0"},"_npmOperationalInternal":{"tmp":"tmp/parseley_0.9.1_1638809452232_0.030683681208978797","host":"s3://npm-registry-packages"}},"0.10.0":{"name":"parseley","version":"0.10.0","keywords":["CSS","selectors","parser","AST","serializer","specificity"],"author":{"name":"KillyMXI"},"license":"MIT","_id":"parseley@0.10.0","maintainers":[{"name":"killy.mxi","email":"killy.mxi@gmail.com"}],"homepage":"https://github.com/mxxii/parseley","bugs":{"url":"https://github.com/mxxii/parseley/issues"},"ava":{"files":["test/**/*"],"verbose":true,"extensions":{"ts":"module"},"nodeArguments":["--loader=ts-node/esm","--experimental-specifier-resolution=node"]},"dist":{"shasum":"639d95ed2c188b7de0a6d7aff59372fa8cff836a","tarball":"https://registry.npmjs.org/parseley/-/parseley-0.10.0.tgz","fileCount":9,"integrity":"sha512-8r4sZD2bNjTxACVk9Sqkzc0pXO9G0KznjPnd+UbHs+ZkvFr5irw4P5HwMVoixanPFP5ZlZKsuf1QP+e47SYZAQ==","signatures":[{"sig":"MEYCIQCMl9oEcU/Ld2CUCC6fFA3bJQQhWzgwcTJLT2RIfTuxvAIhAKVw1gPRT3HRJ+V87nXJlCD7lGYlyN5DGiljuUBbbuq6","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":36527,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh9X9OCRA9TVsSAnZWagAA/nYP/jwxKvxh2cCRaPFeNROg\nFwfIkWjdE+UkguC4XFTeVahcVBVTNYa1H5KIWFLWlGSXJbYKKapufeFlTcdQ\nSY/My71hUGG19ouXx6EFHLFfJ7N5yHjSC4xgoyWjp5+4SR/3L7ENecRPjSgZ\nkzFdvPGpSOcp3yyloeM+RTwpts6bNrHSlRERzhb0ZFKTWJfyYG15ko30UGDf\nL63vEBEdx8HLztPNgFtGPmeKOmaB7xGDM3pM0YrlNVTvFffyT+Z8kriSIoFC\n4PpZJcnhD3bRbVeXpKAl04OPxwD153wxH4n4Wl3pysNO+4FjOZpdLv5a3gbs\n/cM5oxpaJy+RMePl61mqgYYuRbEMjenuG7wQA35dIoldGVpe5Gtk77GT91Yl\nofBAcmvQOK6GSfszydhSl1o9i23PycQt9lmovk+r2DYzDLlVEbrCuEAo+Dz8\nXyWnY+beYF3ZxqEA32FzIpNCsU4mnOgppU4EN68jv/umwxwwpIYL1cZkyxXl\nE09vjdhr2Cxbrrs9rhk3QXHzo9Cs7am78YAFc1bx3mhVbC+tu/r4X0KcJD24\nSczo/mPBYGkYZandVzHse2q3RYjBzEAtHmBPQ6WnJtHuq9e+d+hoQhWQ1IPW\nb+CEovbL1uKSgHIb3gCxmdVlaZORQIr9VkMp+MJTIsdPB6fpDuAg8phOOn+F\nvgmu\r\n=IPAX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./lib/parseley.cjs","type":"module","types":"./lib/parseley.d.ts","module":"./lib/parseley.mjs","denoify":{"out":"./deno","ports":{"leac":"https://deno.land/x/leac/leac.ts","peberminta":"https://deno.land/x/peberminta/core.ts"}},"exports":{"import":"./lib/parseley.mjs","require":"./lib/parseley.cjs"},"funding":"https://ko-fi.com/killymxi","gitHead":"5b4dcb905504361aadd61c6620b5c255fc314f98","scripts":{"lint":"npm run lint:eslint && npm run lint:md","test":"ava --timeout=20s","build":"npm run clean && npm run build:rollup && npm run build:types && npm run build:docs && npm run build:deno","clean":"rimraf lib","example":"node ./example/example.cjs","lint:md":"markdownlint-cli2","checkAll":"npm run lint && npm test","build:deno":"denoify","build:docs":"typedoc","build:types":"tsc --declaration --emitDeclarationOnly","lint:eslint":"eslint .","build:rollup":"rollup -c","prepublishOnly":"npm run build && npm run checkAll"},"_npmUser":{"name":"killy.mxi","email":"killy.mxi@gmail.com"},"repository":{"url":"git+https://github.com/mxxii/parseley.git","type":"git"},"_npmVersion":"6.14.15","description":"CSS selectors parser","directories":{},"sideEffects":false,"_nodeVersion":"12.22.6","dependencies":{"leac":"^0.5.1","peberminta":"^0.6.0"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^4.0.1","tslib":"^2.3.1","eslint":"^8.8.0","rimraf":"^3.0.2","rollup":"^2.66.1","denoify":"^0.11.0","ts-node":"^10.4.0","typedoc":"^0.22.11","typescript":"^4.5.5","@types/node":"^12.20.42","@tsconfig/node12":"^1.0.9","markdownlint-cli2":"^0.4.0","eslint-plugin-jsonc":"^2.1.0","eslint-plugin-tsdoc":"^0.2.14","rollup-plugin-cleanup":"^3.2.1","typedoc-plugin-markdown":"^3.11.12","@rollup/plugin-typescript":"^8.3.0","@typescript-eslint/parser":"^5.10.1","@typescript-eslint/eslint-plugin":"^5.10.1"},"_npmOperationalInternal":{"tmp":"tmp/parseley_0.10.0_1643478862078_0.027401601580463897","host":"s3://npm-registry-packages"}},"0.11.0":{"name":"parseley","version":"0.11.0","keywords":["CSS","selectors","parser","AST","serializer","specificity"],"author":{"name":"KillyMXI"},"license":"MIT","_id":"parseley@0.11.0","maintainers":[{"name":"killy.mxi","email":"killy.mxi@gmail.com"}],"homepage":"https://github.com/mxxii/parseley","bugs":{"url":"https://github.com/mxxii/parseley/issues"},"ava":{"files":["test/**/*"],"verbose":true,"extensions":{"ts":"module"},"nodeArguments":["--loader=ts-node/esm","--experimental-specifier-resolution=node"]},"dist":{"shasum":"1ff817c829a02fcc214c9cc0d96b126d772ee814","tarball":"https://registry.npmjs.org/parseley/-/parseley-0.11.0.tgz","fileCount":9,"integrity":"sha512-VfcwXlBWgTF+unPcr7yu3HSSA6QUdDaDnrHcytVfj5Z8azAyKBDrYnSIfeSxlrEayndNcLmrXzg+Vxbo6DWRXQ==","signatures":[{"sig":"MEUCIQCmntJ8qUWXia6dqSzXVWHbRgY1lug2Su0rdW+MYH6gtQIgC0spB1YKAX+MBdVKToKF3dvWzE181bNPQPxDeXrAuOo=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":36704,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJi/44jACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqkAA/7B+EJculN1nBLhwMPNyf6PzOI7EXB9XJlASGOucCH6zo0uIMD\r\n2jN80eX1WirE8aC+dS7rXzxqUP2zKoUI6XDTW8B4w28H3PjLQZlwDy7zPcV+\r\nxsDKRfZ1iVmbzRYLKwWvQj48gkEhnNmOYPPdsxk3SKCkyETx5Dkfc9cuzcVD\r\nhTCxa5e0Nxr+RrDXZYm1JLo4JAp7konKEb7Y4DwVqGzqNtl222a4YYRcNpdh\r\n776Yigu1D7PtaRFhIgtX1v2VKCDqsl9xmUKgXKxiGCOVk8basJoYGwCMxVsT\r\nHetmxv/1BxJEs9MeBAaXML7TfRJvnCmsgIHjsAcI3/2oraDU98AL33vpgw4r\r\n+gBFXNdiLC1tfjDDgqSTaVOYzcXAWYttJA5a7+szOIvaYFQO6c31Buc0DnW7\r\nQBoHFTAwlXhBFcb3XqwPE4ZEGDXgLfJsTYFBVrMa4F0AtvirZAWBrw2iSA7z\r\nUY9/LA7dMl5tkxIBOL9KQvtVnMK+yl+cs0A0e3QCy6MzACT/AkfgoygGSgzo\r\nDYnOFWPuYRE0mW0AQjr5DceA47KVFCdEdcuIgL4BUiUBDa3rYHAFMnMD9tD3\r\nLoEkwIj1ECfWwDoefKUTECwviugq5IPBaVlnfHzIV7RCUaaCR0e7UDfc2nM9\r\nXK0D1sU98Ysjlsugvk+3WOy431HMg3iVox0=\r\n=1BoX\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./lib/parseley.cjs","type":"module","types":"./lib/parseley.d.ts","module":"./lib/parseley.mjs","denoify":{"out":"./deno","ports":{"leac":"https://deno.land/x/leac/leac.ts","peberminta":"https://deno.land/x/peberminta/core.ts"}},"exports":{"import":"./lib/parseley.mjs","require":"./lib/parseley.cjs"},"funding":"https://ko-fi.com/killymxi","gitHead":"febd0af5b32b3dc05622bdbc3f335f1aa78f8c4c","scripts":{"lint":"npm run lint:eslint && npm run lint:md","test":"ava --timeout=20s","build":"npm run clean && npm run build:rollup && npm run build:types && npm run build:docs && npm run build:deno","clean":"rimraf lib","example":"node ./example/example.cjs","lint:md":"markdownlint-cli2","checkAll":"npm run lint && npm test","build:deno":"denoify","build:docs":"typedoc","build:types":"tsc --declaration --emitDeclarationOnly","lint:eslint":"eslint .","build:rollup":"rollup -c","prepublishOnly":"npm run build && npm run checkAll"},"_npmUser":{"name":"killy.mxi","email":"killy.mxi@gmail.com"},"repository":{"url":"git+https://github.com/mxxii/parseley.git","type":"git"},"_npmVersion":"6.14.17","description":"CSS selectors parser","directories":{},"sideEffects":false,"_nodeVersion":"14.20.0","dependencies":{"leac":"^0.6.0","peberminta":"^0.8.0"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^4.3.1","tslib":"^2.4.0","eslint":"^8.22.0","rimraf":"^3.0.2","rollup":"^2.78.0","denoify":"^1.0.1","ts-node":"^10.9.1","typedoc":"~0.23.10","typescript":"~4.7.4","@types/node":"^14.18.23","@tsconfig/node14":"^1.0.3","markdownlint-cli2":"^0.5.1","eslint-plugin-jsonc":"^2.4.0","eslint-plugin-tsdoc":"^0.2.16","rollup-plugin-cleanup":"^3.2.1","typedoc-plugin-markdown":"~3.13.4","@rollup/plugin-typescript":"^8.3.4","@typescript-eslint/parser":"^5.33.1","@typescript-eslint/eslint-plugin":"^5.33.1"},"_npmOperationalInternal":{"tmp":"tmp/parseley_0.11.0_1660915235712_0.8499702680174042","host":"s3://npm-registry-packages"}},"0.12.0":{"name":"parseley","version":"0.12.0","keywords":["CSS","selectors","parser","AST","serializer","specificity"],"author":{"name":"KillyMXI"},"license":"MIT","_id":"parseley@0.12.0","maintainers":[{"name":"killy.mxi","email":"killy.mxi@gmail.com"}],"homepage":"https://github.com/mxxii/parseley","bugs":{"url":"https://github.com/mxxii/parseley/issues"},"ava":{"files":["test/**/*"],"verbose":true,"extensions":{"ts":"module"},"nodeArguments":["--loader=ts-node/esm","--experimental-specifier-resolution=node"]},"dist":{"shasum":"e0dc6b0f99201d136ce756d5f3cec9461ad09830","tarball":"https://registry.npmjs.org/parseley/-/parseley-0.12.0.tgz","fileCount":9,"integrity":"sha512-uLqDm6IQVb6m50a3dIxF66hI8VWr7wFDYUULtHa1ITRh9mwYIXzFpPTkPM66Cm5V0t+bMyeSHgUCGzoXTV96LQ==","signatures":[{"sig":"MEUCIEfF9ic9cf553Wuz4EFlmWqN1WTWeM50+2KHrHIClaS/AiEA8ICONg9hAVf8wzF0s9dS7qRWSyZOAOUBb2PkyisoZuw=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":41253,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJj957FACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmod6Q//SPiWO70mabzYQioVGwZZN+mSjT6Vr//G7rFsVMZw7mIcfpqF\r\nrqSDrziP0g3tV7tFPm8BCfa+3MZwkf1K/BOVa581e4brSbtn05FZ4mUOeg0u\r\nbo4b4Zh+wK/80J4EHpViVZVkJpB10bxtUmQ4XiN7RwUVK67x65ai6AmHjhEN\r\nIP8zsqTTTG7fGcaI2faP6ZMvOeXWnlnXo5+kpsLnxdVBE2bNk5u1IBBe0wO4\r\nlU9tcZugJL7Dob/pXv2vHWPcT+RBZAFveVYCH2xZuCGdWz4DURT+FmLsI0z1\r\ncApcAGlB2okltkEIP3crW5pjOr8NB12SRNa73WT4yp+73ECeYhWSdo4FkwSk\r\nW4H+5EjGE49ClsNowWkUYg6H6WuH/U4fXeeg3mIBx32RP/cdPUm0RdupglcZ\r\n/O1muE2m1WDAm6HosMaMTMY917ci+31IrP0CDXyewUh7HUREFJhc3bFuDlId\r\nWgTR7q7IAu6Kb+LUAzCanVOrVO7aQykXyeyj6tx0M5++z1Jv2jDOY14FaZRT\r\naswv+yWva1NpUGT0OhaR/rk+oVADeeQWZaG4hFWQync3J0FBiTZhsljA6UMD\r\nlE9c1zlyHmGvQ7LZmgdeBLiHBLDPPGDGt/lpOt9e5YdSKIJTnCvoJHOUa226\r\n812UFk/gemODawEykSDgiXz3Slb34l58g1Q=\r\n=ZhCC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./lib/parseley.cjs","type":"module","types":"./lib/parseley.d.ts","module":"./lib/parseley.mjs","denoify":{"out":"./deno"},"exports":{"import":"./lib/parseley.mjs","require":"./lib/parseley.cjs"},"funding":"https://ko-fi.com/killymxi","gitHead":"1e70c4f9c4a704db3c969bce089e0e8f606f7875","scripts":{"lint":"npm run lint:eslint && npm run lint:md","test":"ava --timeout=20s","build":"npm run clean && npm run build:rollup && npm run build:types && npm run build:docs && npm run build:deno","clean":"rimraf lib","example":"node ./example/example.cjs","lint:md":"markdownlint-cli2","checkAll":"npm run lint && npm test","build:deno":"denoify","build:docs":"typedoc","build:types":"tsc --declaration --emitDeclarationOnly","lint:eslint":"eslint .","build:rollup":"rollup -c","prepublishOnly":"npm run build && npm run checkAll"},"_npmUser":{"name":"killy.mxi","email":"killy.mxi@gmail.com"},"repository":{"url":"git+https://github.com/mxxii/parseley.git","type":"git"},"_npmVersion":"6.14.17","description":"CSS selectors parser","directories":{},"sideEffects":false,"_nodeVersion":"14.20.0","dependencies":{"leac":"^0.6.0","peberminta":"^0.9.0"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^5.2.0","tslib":"^2.5.0","eslint":"^8.34.0","rimraf":"^4.1.2","rollup":"^2.79.1","denoify":"^1.4.10","ts-node":"^10.9.1","typedoc":"~0.23.25","typescript":"~4.9.5","@types/node":"^14.18.36","@tsconfig/node14":"^1.0.3","markdownlint-cli2":"^0.6.0","eslint-plugin-jsonc":"^2.6.0","eslint-plugin-tsdoc":"^0.2.17","rollup-plugin-cleanup":"^3.2.1","typedoc-plugin-markdown":"~3.14.0","@rollup/plugin-typescript":"^11.0.0","@typescript-eslint/parser":"^5.53.0","@typescript-eslint/eslint-plugin":"^5.53.0"},"_npmOperationalInternal":{"tmp":"tmp/parseley_0.12.0_1677172420867_0.34747053437560527","host":"s3://npm-registry-packages"}},"0.12.1":{"name":"parseley","version":"0.12.1","keywords":["CSS","selectors","parser","AST","serializer","specificity"],"author":{"name":"KillyMXI"},"license":"MIT","_id":"parseley@0.12.1","maintainers":[{"name":"killy.mxi","email":"killy.mxi@gmail.com"}],"homepage":"https://github.com/mxxii/parseley","bugs":{"url":"https://github.com/mxxii/parseley/issues"},"ava":{"files":["test/**/*"],"verbose":true,"extensions":{"ts":"module"},"nodeArguments":["--loader=ts-node/esm","--experimental-specifier-resolution=node"]},"dist":{"shasum":"4afd561d50215ebe259e3e7a853e62f600683aef","tarball":"https://registry.npmjs.org/parseley/-/parseley-0.12.1.tgz","fileCount":9,"integrity":"sha512-e6qHKe3a9HWr0oMRVDTRhKce+bRO8VGQR3NyVwcjwrbhMmFCX9KszEV35+rn4AdilFAq9VPxP/Fe1wC9Qjd2lw==","signatures":[{"sig":"MEUCIFTSSlEsgLQutHeHmY6j/svrVWo9I7endWIR0pkzOgnvAiEA17GCMBjdIN5V81sOBwrmqIsBFlqjthiRKIDIymJWT50=","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":41853,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJkQ7x+ACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2Vmq2cQ/9Glj3nc63tFEh6Z/QGQCUg5hpIL8/ZVLMPXELIo8P3PVHguaa\r\nYVHQ4A7FbZs2hK4jWvXxKPdEItY8DD47kMHoa0yTjfWXqZBbs7uQuR1PUrY7\r\nifdc1MUIEMKwPiFXjBC9GqUofHSrNR255Vb/hWHeJ85Y76aZjOziNlt0QXuQ\r\nv+8wCcuipO2lIOrm1D7h+wCqHAmM1AEZTLEj6brfKeBMQyja43RcqyRpLdhf\r\nPPFghg63q08ecR8HvKuzQlROvH+3JZ9s5HVgB4Vo0FZNKw01e6dGXcRCroXZ\r\nr+7lNnRT8FYHn1+HzBTRe/6vX4PIwGHzt9xpHF4b7oMMFRUBvbjzeZBMU3P8\r\nim+01MCLKul3y9vD9/xsYoA4F8LFkkgnvhtTW6TTKcODrDdaWM3iFhdNg0W5\r\n/R2nlJks0I912pK0rVcwTH7ghF0E/6PZv8siOtjpFxofanZtKoYhKyPLHh1k\r\nvv5ZQ/y7WS4SvvEl/TBoyDZQLcxefqC22NdePqweXaCCWc6szEtCmsWYKEF+\r\nSpCnQXxfsLHgsI3XU1nSaujrquWB3z8uLMbb8bCyvxyczsvO4d8MTCiqIw0u\r\nL0GFVnWENTZszm1qWdzp69RQQ6gwo3kGV42pPnQEKUhNakU1eLiMEhF1aFYr\r\nghcvlOG7iDAoq4MHhxw51kZRIA7Y3N2ZHuQ=\r\n=hHNC\r\n-----END PGP SIGNATURE-----\r\n"},"main":"./lib/parseley.cjs","type":"module","types":"./lib/parseley.d.ts","module":"./lib/parseley.mjs","denoify":{"out":"./deno"},"exports":{"import":"./lib/parseley.mjs","require":"./lib/parseley.cjs"},"funding":"https://ko-fi.com/killymxi","gitHead":"a4b46697101eed0c4d0e3a81f5a5f45f64ee249b","scripts":{"lint":"npm run lint:eslint && npm run lint:md","test":"ava --timeout=20s","build":"npm run clean && npm run build:rollup && npm run build:types && npm run build:docs && npm run build:deno","clean":"rimraf lib","example":"node ./example/example.mjs","lint:md":"markdownlint-cli2","checkAll":"npm run lint && npm test","build:deno":"denoify","build:docs":"typedoc --plugin typedoc-plugin-markdown","build:types":"tsc --declaration --emitDeclarationOnly","lint:eslint":"eslint .","build:rollup":"rollup -c","prepublishOnly":"npm run build && npm run checkAll"},"_npmUser":{"name":"killy.mxi","email":"killy.mxi@gmail.com"},"repository":{"url":"git+https://github.com/mxxii/parseley.git","type":"git"},"_npmVersion":"6.14.17","description":"CSS selectors parser","directories":{},"sideEffects":false,"_nodeVersion":"14.20.0","dependencies":{"leac":"^0.6.0","peberminta":"^0.9.0"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^5.2.0","tslib":"^2.5.0","eslint":"^8.39.0","rimraf":"^5.0.0","rollup":"^2.79.1","denoify":"^1.5.3","ts-node":"^10.9.1","typedoc":"~0.23.28","typescript":"~4.9.5","@types/node":"^14.18.42","@tsconfig/node14":"^1.0.3","markdownlint-cli2":"^0.7.0","eslint-plugin-jsonc":"^2.7.0","eslint-plugin-tsdoc":"^0.2.17","rollup-plugin-cleanup":"^3.2.1","typedoc-plugin-markdown":"~3.14.0","@rollup/plugin-typescript":"^11.1.0","@typescript-eslint/parser":"^5.59.0","@typescript-eslint/eslint-plugin":"^5.59.0"},"_npmOperationalInternal":{"tmp":"tmp/parseley_0.12.1_1682160766335_0.7841395559970434","host":"s3://npm-registry-packages"}},"0.13.0":{"name":"parseley","version":"0.13.0","keywords":["CSS","selectors","parser","AST","serializer","specificity"],"author":{"name":"KillyMXI"},"license":"MIT","_id":"parseley@0.13.0","maintainers":[{"name":"killy.mxi","email":"killy.mxi@gmail.com"}],"homepage":"https://github.com/mxxii/parseley","bugs":{"url":"https://github.com/mxxii/parseley/issues"},"ava":{"files":["test/**/*"],"verbose":true,"extensions":{"ts":"module"},"nodeArguments":["--import=ts-blank-space/register"]},"dist":{"shasum":"9ed85f43b85c238b1754e70e75348e29c1b355ff","tarball":"https://registry.npmjs.org/parseley/-/parseley-0.13.0.tgz","fileCount":9,"integrity":"sha512-pDphr3CWoPxB7WC2cIQUsuwYDBSZvbdaDO46dUxXzLk5yn5s8bTs6Zf68BgaSIPmTuZQ2BNEFTdCW2AfeeD3vw==","signatures":[{"sig":"MEYCIQDOJHnKRUHEF6Cvmt9FMEU8TbIwaCwnMPuHqcbb+iqa8gIhAKElH+qKIfHVTLlzS4RAap3/F77jwzJDp+v4evpQn/On","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":63344},"main":"./lib/parseley.cjs","type":"module","types":"./lib/parseley.d.ts","module":"./lib/parseley.mjs","denoify":{"out":"./deno"},"exports":{".":{"import":{"types":"./lib/parseley.d.mts","default":"./lib/parseley.mjs"},"require":{"types":"./lib/parseley.d.cts","default":"./lib/parseley.cjs"}},"./package.json":"./package.json"},"funding":"https://github.com/sponsors/KillyMXI","gitHead":"0cbe2d1cf362673946ccd9e6837bb84eed27f673","scripts":{"lint":"npm run lint:eslint && npm run lint:md","test":"ava","build":"npm run clean && npm run build:rollup && npm run build:types && npm run build:docs && npm run build:deno","clean":"rimraf lib","example":"node ./example/example.mjs","lint:md":"markdownlint-cli2","checkAll":"npm run lint && npm test","build:deno":"denoify","build:docs":"typedoc","build:types":"tsc --declaration --emitDeclarationOnly","lint:eslint":"eslint .","build:rollup":"rollup -c","prepublishOnly":"npm run build && npm run checkAll"},"_npmUser":{"name":"killy.mxi","email":"killy.mxi@gmail.com"},"repository":{"url":"git+https://github.com/mxxii/parseley.git","type":"git"},"_npmVersion":"10.8.2","description":"CSS selectors parser","directories":{},"sideEffects":false,"_nodeVersion":"20.18.0","dependencies":{"leac":"^0.7.0","peberminta":"^0.10.0"},"_hasShrinkwrap":false,"devDependencies":{"ava":"^6.4.1","tslib":"^2.8.1","eslint":"^9.39.2","rimraf":"^6.1.2","rollup":"~4.54.0","denoify":"^1.6.17","typedoc":"~0.28.15","typescript":"~5.8.3","@types/node":"^20.19.27","ts-blank-space":"^0.6.2","@tsconfig/node20":"^20.1.8","markdownlint-cli2":"^0.20.0","rollup-plugin-dts":"^6.3.0","typescript-eslint":"^8.50.0","eslint-plugin-jsonc":"^2.21.0","eslint-plugin-tsdoc":"^0.5.0","rollup-plugin-delete":"^3.0.2","rollup-plugin-cleanup":"^3.2.1","typedoc-plugin-markdown":"~4.9.0","@stylistic/eslint-plugin":"^5.6.1","@rollup/plugin-typescript":"^12.3.0","@typescript-eslint/eslint-plugin":"^8.50.0"},"_npmOperationalInternal":{"tmp":"tmp/parseley_0.13.0_1766342981766_0.6571229878221634","host":"s3://npm-registry-packages-npm-production"}},"0.13.1":{"name":"parseley","version":"0.13.1","description":"CSS selectors parser","keywords":["CSS","selectors","parser","AST","serializer","specificity"],"repository":{"type":"git","url":"git+https://github.com/mxxii/parseley.git"},"bugs":{"url":"https://github.com/mxxii/parseley/issues"},"homepage":"https://github.com/mxxii/parseley","author":{"name":"KillyMXI"},"funding":"https://github.com/sponsors/KillyMXI","license":"MIT","exports":{".":{"import":{"types":"./lib/parseley.d.mts","default":"./lib/parseley.mjs"},"require":{"types":"./lib/parseley.d.cts","default":"./lib/parseley.cjs"}},"./package.json":"./package.json"},"type":"module","main":"./lib/parseley.cjs","module":"./lib/parseley.mjs","types":"./lib/parseley.d.cts","sideEffects":false,"scripts":{"build:deno":"denoify","build:docs":"typedoc","build:rollup":"rollup -c","build:types":"tsc --declaration --emitDeclarationOnly","build":"npm run clean && npm run build:rollup && npm run build:types && npm run build:docs && npm run build:deno","checkAll":"npm run lint && npm test","clean":"rimraf lib","example":"node ./example/example.mjs","lint:eslint":"eslint .","lint:md":"markdownlint-cli2","lint":"npm run lint:eslint && npm run lint:md","prepublishOnly":"npm run build && npm run checkAll","test":"ava"},"dependencies":{"leac":"^0.7.0","peberminta":"^0.10.0"},"devDependencies":{"@rollup/plugin-typescript":"^12.3.0","@stylistic/eslint-plugin":"^5.6.1","@tsconfig/node20":"^20.1.8","@types/node":"^20.19.27","@typescript-eslint/eslint-plugin":"^8.50.0","ava":"^6.4.1","denoify":"^1.6.17","eslint":"^9.39.2","eslint-plugin-jsonc":"^2.21.0","eslint-plugin-tsdoc":"^0.5.0","markdownlint-cli2":"^0.20.0","rimraf":"^6.1.2","rollup":"~4.54.0","rollup-plugin-cleanup":"^3.2.1","rollup-plugin-delete":"^3.0.2","rollup-plugin-dts":"^6.3.0","ts-blank-space":"^0.6.2","tslib":"^2.8.1","typedoc":"~0.28.15","typedoc-plugin-markdown":"~4.9.0","typescript":"~5.8.3","typescript-eslint":"^8.50.0"},"ava":{"extensions":{"ts":"module"},"files":["test/**/*"],"nodeArguments":["--import=ts-blank-space/register"],"verbose":true},"denoify":{"out":"./deno"},"_id":"parseley@0.13.1","gitHead":"79421c67c66c608999dcb9f7cb2ac3873e97af33","_nodeVersion":"20.18.0","_npmVersion":"10.8.2","dist":{"integrity":"sha512-uNBJZzmb60l6p6VWLTmevizNAGnE0xoSf1n0B4q3ntegDNzcS68NRCcBDZTcyXHxt2XhBChsCuqj4M+nChvE/A==","shasum":"1dfc3dd43afee3414367a548e8072f2ef77b2a52","tarball":"https://registry.npmjs.org/parseley/-/parseley-0.13.1.tgz","fileCount":9,"unpackedSize":63345,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIDPWizpTh7ugWuE8LpZycBkiXnGH0zFYcn2x+v1sCGV2AiAFj5/bXeYbizK1rpohXxXXSVUvXjBC9vbW5t1ObNShLw=="}]},"_npmUser":{"name":"killy.mxi","email":"killy.mxi@gmail.com"},"directories":{},"maintainers":[{"name":"killy.mxi","email":"killy.mxi@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/parseley_0.13.1_1766403982284_0.6756494550231418"},"_hasShrinkwrap":false}},"time":{"created":"2021-04-05T14:53:23.300Z","modified":"2025-12-22T11:46:22.610Z","0.5.0":"2021-04-05T14:53:23.454Z","0.6.0":"2021-04-06T14:43:47.792Z","0.7.0":"2021-04-18T13:20:03.029Z","0.8.0":"2021-11-10T22:02:44.051Z","0.9.0":"2021-12-05T14:49:43.352Z","0.9.1":"2021-12-06T16:50:52.421Z","0.10.0":"2022-01-29T17:54:22.218Z","0.11.0":"2022-08-19T13:20:35.932Z","0.12.0":"2023-02-23T17:13:41.010Z","0.12.1":"2023-04-22T10:52:46.564Z","0.13.0":"2025-12-21T18:49:41.951Z","0.13.1":"2025-12-22T11:46:22.423Z"},"bugs":{"url":"https://github.com/mxxii/parseley/issues"},"author":{"name":"KillyMXI"},"license":"MIT","homepage":"https://github.com/mxxii/parseley","keywords":["CSS","selectors","parser","AST","serializer","specificity"],"repository":{"type":"git","url":"git+https://github.com/mxxii/parseley.git"},"description":"CSS selectors parser","maintainers":[{"name":"killy.mxi","email":"killy.mxi@gmail.com"}],"readme":"# parseley\n\n![lint status badge](https://github.com/mxxii/parseley/workflows/lint/badge.svg)\n![test status badge](https://github.com/mxxii/parseley/workflows/test/badge.svg)\n[![License: MIT](https://img.shields.io/badge/license-MIT-green.svg)](https://github.com/mxxii/parseley/blob/main/LICENSE)\n[![npm](https://img.shields.io/npm/v/parseley?logo=npm)](https://www.npmjs.com/package/parseley)\n[![npm](https://img.shields.io/npm/dw/parseley?color=informational&logo=npm)](https://www.npmjs.com/package/parseley)\n[![deno](https://img.shields.io/badge/deno.land%2Fx%2F-parseley-informational?logo=deno)](https://deno.land/x/parseley)\n\n**Par**ser for CSS **sele**ctors.\n\n----\n\n\n## Features\n\n- Convert CSS selector strings into objects that are easy to work with;\n\n- Serialize back if needed;\n\n- Get specificity for free.\n\n\n## Changelog\n\nAvailable here: [CHANGELOG.md](https://github.com/mxxii/parseley/blob/main/CHANGELOG.md).\n\n\n## Install\n\n### Node\n\n```shell\n> npm i parseley\n```\n\n```typescript\nimport * as parseley from 'parseley';\n```\n\n### Deno\n\n```typescript\nimport * as parseley from 'https://deno.land/x/parseley@.../parseley.ts';\n```\n\n\n## Usage example\n\n```js\nimport { parse1, serialize, normalize } from 'parseley';\nimport { inspect } from 'node:util';\n\nconst str = 'div#id1 > .class2.class1[attr1]';\n\nconst ast = parse1(str);\nconsole.log(inspect(ast, { breakLength: 45, depth: null }));\n\nconst serialized = serialize(ast);\nconsole.log(`Serialized: '${serialized}'`);\n\nnormalize(ast);\nconst normalized = serialize(ast);\nconsole.log(`Normalized: '${normalized}'`);\n```\n\n<details><summary>Example output</summary>\n\n```text\n{\n  type: 'compound',\n  list: [\n    {\n      type: 'class',\n      name: 'class2',\n      specificity: [ 0, 1, 0 ]\n    },\n    {\n      type: 'class',\n      name: 'class1',\n      specificity: [ 0, 1, 0 ]\n    },\n    {\n      type: 'attrPresence',\n      name: 'attr1',\n      namespace: null,\n      specificity: [ 0, 1, 0 ]\n    },\n    {\n      type: 'combinator',\n      combinator: '>',\n      left: {\n        type: 'compound',\n        list: [\n          {\n            type: 'tag',\n            name: 'div',\n            namespace: null,\n            specificity: [ 0, 0, 1 ]\n          },\n          {\n            type: 'id',\n            name: 'id1',\n            specificity: [ 1, 0, 0 ]\n          }\n        ],\n        specificity: [ 1, 0, 1 ]\n      },\n      specificity: [ 1, 0, 1 ]\n    }\n  ],\n  specificity: [ 1, 3, 1 ]\n}\nSerialized: 'div#id1>.class2.class1[attr1]'\nNormalized: 'div#id1>.class1.class2[attr1]'\n```\n\n</details>\n\n\n## Documentation\n\n- [API](https://github.com/mxxii/parseley/blob/main/docs/index.md)\n- [Snapshots](https://github.com/mxxii/parseley/blob/main/test/snapshots/snapshots.ts.md)\n\n\n## Input reference\n\n<https://www.w3.org/TR/selectors-4/#grammar>\n\n<https://www.w3.org/TR/css-syntax-3/#token-diagrams>\n\nTerminology used in this project is more or less consistent to the spec, with some exceptions made for clarity. The term \"type\" is way too overloaded in particular, the term \"tag\" is used where appropriate instead.\n\n\n## Output AST\n\nConsistency: overall AST shape is always the same. This makes client code simpler, at least for a certain processing tasks.\n\nFor example, always use compound selectors, even when there is only one simple selector inside.\n\nComma-separated selectors might not be needed for every use case. So there are two functions - one can parse commas and always returns the top-level list regardless of the comma presence in a particular selector, and the other can't parse commas and returns a compound selector AST directly.\n\nComplex selectors are represented in the way that makes the left side to be an another condition on the right side element. This was made with the right-to-left processing direction in mind. One consequence of this is that there is no such thing as a \"complex selector\" node in the AST hierarchy, but there are \"combinator\" nodes attached to \"compound selector\" nodes.\n\nPseudo-classes and functional pseudo-classes are represented as separate types. All supported functional pseudo-classes have their own types with strongly typed content.\n\nAll AST nodes have their specificity computed (except the top-level list of comma-separated selectors where it doesn't really make sense).\n\n\n## Selector type hierarchy\n\n- [Selector](https://github.com/mxxii/parseley/blob/main/docs/parseley/namespaces/Ast/type-aliases/Selector.md)\n  - [ListSelector](https://github.com/mxxii/parseley/blob/main/docs/parseley/namespaces/Ast/type-aliases/ListSelector.md) - comma-separated\n    - _contains CompoundSelector list_\n  - [CompoundSelector](https://github.com/mxxii/parseley/blob/main/docs/parseley/namespaces/Ast/type-aliases/CompoundSelector.md) - all simple selectors that apply to the same element\n    - _contains SimpleSelector (incl. Combinator) list_\n  - [SimpleSelector](https://github.com/mxxii/parseley/blob/main/docs/parseley/namespaces/Ast/type-aliases/SimpleSelector.md)\n    - [UniversalSelector](https://github.com/mxxii/parseley/blob/main/docs/parseley/namespaces/Ast/type-aliases/UniversalSelector.md) - `*`\n    - [TagSelector](https://github.com/mxxii/parseley/blob/main/docs/parseley/namespaces/Ast/type-aliases/TagSelector.md) - `div`, etc.\n    - [ClassSelector](https://github.com/mxxii/parseley/blob/main/docs/parseley/namespaces/Ast/type-aliases/ClassSelector.md) - `.className`\n    - [IdSelector](https://github.com/mxxii/parseley/blob/main/docs/parseley/namespaces/Ast/type-aliases/IdSelector.md) - `#idValue`\n    - [AttributePresenceSelector](https://github.com/mxxii/parseley/blob/main/docs/parseley/namespaces/Ast/type-aliases/AttributePresenceSelector.md) - `[attrName]`\n    - [AttributeValueSelector](https://github.com/mxxii/parseley/blob/main/docs/parseley/namespaces/Ast/type-aliases/AttributeValueSelector.md) - `[attrName=\"value\"]`, etc.\n    - [FunctionalPseudoClassSelector](https://github.com/mxxii/parseley/blob/main/docs/parseley/namespaces/Ast/type-aliases/FunctionalPseudoClassSelector.md)\n      - [IsSelector](https://github.com/mxxii/parseley/blob/main/docs/parseley/namespaces/Ast/type-aliases/IsSelector.md) - `:is(...)`\n        - _contains CompoundSelector list_\n      - [WhereSelector](https://github.com/mxxii/parseley/blob/main/docs/parseley/namespaces/Ast/type-aliases/WhereSelector.md) - `:where(...)`\n        - _contains CompoundSelector list_\n      - [NotSelector](https://github.com/mxxii/parseley/blob/main/docs/parseley/namespaces/Ast/type-aliases/NotSelector.md) - `:not(...)`\n        - _contains CompoundSelector list_\n    - [PseudoClassSelector](https://github.com/mxxii/parseley/blob/main/docs/parseley/namespaces/Ast/type-aliases/PseudoClassSelector.md) - `:hover`, etc. - except functional ones\n    - [Combinator](https://github.com/mxxii/parseley/blob/main/docs/parseley/namespaces/Ast/type-aliases/Combinator.md) - ` `, `>`, `+`, `~`, `||`\n      - _contains left CompoundSelector_\n\n\n## Motivation and inspiration\n\n| Package    | Hits      | Misses\n| ---------- | --------- | ---------\n| [parsel](https://github.com/leaverou/parsel) | Sensible AST; specificity calculation; cool name | Not friendly to node.js; based on regex\n| [css-what](https://github.com/fb55/css-what) and [css-select](https://github.com/fb55/css-select) | The idea to process complex selectors in right-to-left order | `css-select` is a solution for a different problem compared to what I needed; `css-what` produces only a list of tokens\n| [scalpel](https://github.com/gajus/scalpel)  | Introduced me to [nearley](https://nearley.js.org/) parsing toolkit (albeit I'm not using it here anymore) | AST it produces is very far from what I can use\n| [css-selector-parser](https://github.com/mdevils/css-selector-parser) | Configurable and lightweight | Again, AST is far from my needs\n","readmeFilename":"README.md"}