{"_id":"@csstools/media-query-list-parser","_rev":"261625","name":"@csstools/media-query-list-parser","description":"Parse CSS media query lists.","dist-tags":{"latest":"2.0.2"},"maintainers":[{"name":"alaguna","email":""},{"name":"jonathantneal","email":""}],"time":{"modified":"2023-03-27T17:30:32.000Z","created":"2022-11-14T09:47:43.911Z","2.0.2":"2023-03-25T07:52:37.993Z","2.0.1":"2023-01-28T07:25:35.349Z","2.0.0":"2023-01-19T18:55:23.475Z","1.0.0":"2022-11-14T09:47:43.911Z"},"users":{},"repository":{"type":"git","url":"git+https://github.com/csstools/postcss-plugins.git","directory":"packages/media-query-list-parser"},"versions":{"2.0.2":{"name":"@csstools/media-query-list-parser","description":"Parse CSS media query lists.","version":"2.0.2","contributors":[{"name":"Antonio Laguna","email":"antonio@laguna.es","url":"https://antonio.laguna.es"},{"name":"Romain Menke","email":"romainmenke@gmail.com"}],"license":"MIT","funding":{"type":"opencollective","url":"https://opencollective.com/csstools"},"engines":{"node":"^14 || ^16 || >=18"},"main":"dist/index.cjs","module":"dist/index.mjs","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.cjs","default":"./dist/index.mjs"}},"peerDependencies":{"@csstools/css-parser-algorithms":"^2.0.0","@csstools/css-tokenizer":"^2.0.0"},"scripts":{"build":"rollup -c ../../rollup/default.mjs","lint":"node ../../.github/bin/format-package-json.mjs","prepublishOnly":"npm run build && npm run test","stryker":"stryker run --logLevel error","test":"node ./test/test.mjs && node ./test/_import.mjs && node ./test/_require.cjs","test:rewrite-expects":"REWRITE_EXPECTS=true node ./test/test.mjs"},"homepage":"https://github.com/csstools/postcss-plugins/tree/main/packages/media-query-list-parser#readme","repository":{"type":"git","url":"git+https://github.com/csstools/postcss-plugins.git","directory":"packages/media-query-list-parser"},"bugs":{"url":"https://github.com/csstools/postcss-plugins/issues"},"keywords":["css","media query","parser"],"volta":{"extends":"../../package.json"},"gitHead":"c7989e0adc76e6ff0628084150aaf3a490056739","_id":"@csstools/media-query-list-parser@2.0.2","_nodeVersion":"18.13.0","_npmVersion":"9.4.1","dist":{"shasum":"36058f8ff6a28274e7dfe32e48431e1de97c2fbb","size":20829,"noattachment":false,"key":"/@csstools/media-query-list-parser/-/@csstools/media-query-list-parser-2.0.2.tgz","tarball":"http://name.csiicloud.com:7001/@csstools/media-query-list-parser/download/@csstools/media-query-list-parser-2.0.2.tgz"},"_npmUser":{"name":"alaguna","email":"sombragriselros@gmail.com"},"directories":{},"maintainers":[{"name":"alaguna","email":""},{"name":"jonathantneal","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/media-query-list-parser_2.0.2_1679730757808_0.18098843347865223"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2023-03-25T07:52:37.993Z","publish_time":1679730757993,"_cnpm_publish_time":1679730757993},"2.0.1":{"name":"@csstools/media-query-list-parser","description":"Parse CSS media query lists.","version":"2.0.1","contributors":[{"name":"Antonio Laguna","email":"antonio@laguna.es","url":"https://antonio.laguna.es"},{"name":"Romain Menke","email":"romainmenke@gmail.com"}],"license":"MIT","funding":{"type":"opencollective","url":"https://opencollective.com/csstools"},"engines":{"node":"^14 || ^16 || >=18"},"main":"dist/index.cjs","module":"dist/index.mjs","types":"dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.mjs","require":"./dist/index.cjs","default":"./dist/index.mjs"}},"peerDependencies":{"@csstools/css-parser-algorithms":"^2.0.0","@csstools/css-tokenizer":"^2.0.0"},"scripts":{"prebuild":"npm run clean","build":"rollup -c ../../rollup/default.mjs","clean":"node -e \"fs.rmSync('./dist', { recursive: true, force: true }); fs.mkdirSync('./dist');\"","lint":"npm run lint:eslint && npm run lint:package-json","lint:eslint":"eslint ./src --ext .js --ext .ts --ext .mjs --no-error-on-unmatched-pattern","lint:package-json":"node ../../.github/bin/format-package-json.mjs","prepublishOnly":"npm run clean && npm run build && npm run test","stryker":"stryker run --logLevel error","test":"node ./test/test.mjs","test:exports":"node ./test/_import.mjs && node ./test/_require.cjs","test:rewrite-expects":"REWRITE_EXPECTS=true node ./test/test.mjs"},"homepage":"https://github.com/csstools/postcss-plugins/tree/main/packages/media-query-list-parser#readme","repository":{"type":"git","url":"git+https://github.com/csstools/postcss-plugins.git","directory":"packages/media-query-list-parser"},"bugs":{"url":"https://github.com/csstools/postcss-plugins/issues"},"keywords":["css","media query","parser"],"volta":{"extends":"../../package.json"},"gitHead":"35098b5e19952314fa8034ab4b13abc0d8165150","_id":"@csstools/media-query-list-parser@2.0.1","_nodeVersion":"18.8.0","_npmVersion":"8.18.0","dist":{"shasum":"d85a366811563a5d002755ed10e5212a1613c91d","size":20527,"noattachment":false,"key":"/@csstools/media-query-list-parser/-/@csstools/media-query-list-parser-2.0.1.tgz","tarball":"http://name.csiicloud.com:7001/@csstools/media-query-list-parser/download/@csstools/media-query-list-parser-2.0.1.tgz"},"_npmUser":{"name":"alaguna","email":"sombragriselros@gmail.com"},"directories":{},"maintainers":[{"name":"alaguna","email":""},{"name":"jonathantneal","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/media-query-list-parser_2.0.1_1674890735159_0.15638679602742278"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2023-01-28T07:25:35.349Z","publish_time":1674890735349,"_cnpm_publish_time":1674890735349},"2.0.0":{"name":"@csstools/media-query-list-parser","description":"Parse CSS media query lists.","version":"2.0.0","contributors":[{"name":"Antonio Laguna","email":"antonio@laguna.es","url":"https://antonio.laguna.es"},{"name":"Romain Menke","email":"romainmenke@gmail.com"}],"license":"MIT","funding":{"type":"opencollective","url":"https://opencollective.com/csstools"},"engines":{"node":"^14 || ^16 || >=18"},"main":"dist/index.cjs","module":"dist/index.mjs","types":"dist/index.d.ts","exports":{".":{"import":"./dist/index.mjs","require":"./dist/index.cjs","default":"./dist/index.mjs"}},"peerDependencies":{"@csstools/css-parser-algorithms":"^2.0.0","@csstools/css-tokenizer":"^2.0.0"},"scripts":{"prebuild":"npm run clean","build":"rollup -c ../../rollup/default.mjs","clean":"node -e \"fs.rmSync('./dist', { recursive: true, force: true }); fs.mkdirSync('./dist');\"","lint":"npm run lint:eslint && npm run lint:package-json","lint:eslint":"eslint ./src --ext .js --ext .ts --ext .mjs --no-error-on-unmatched-pattern","lint:package-json":"node ../../.github/bin/format-package-json.mjs","prepublishOnly":"npm run clean && npm run build && npm run test","stryker":"stryker run --logLevel error","test":"node ./test/test.mjs","test:exports":"node ./test/_import.mjs && node ./test/_require.cjs","test:rewrite-expects":"REWRITE_EXPECTS=true node ./test/test.mjs"},"homepage":"https://github.com/csstools/postcss-plugins/tree/main/packages/media-query-list-parser#readme","repository":{"type":"git","url":"git+https://github.com/csstools/postcss-plugins.git","directory":"packages/media-query-list-parser"},"bugs":{"url":"https://github.com/csstools/postcss-plugins/issues"},"keywords":["css","media query","parser"],"volta":{"extends":"../../package.json"},"gitHead":"a101bc03e79688f146ce611c9e88c9c8c121a934","_id":"@csstools/media-query-list-parser@2.0.0","_nodeVersion":"16.13.1","_npmVersion":"8.1.2","dist":{"shasum":"06c6dce65656e4970927a603e910c6f949c5c07f","size":20474,"noattachment":false,"key":"/@csstools/media-query-list-parser/-/@csstools/media-query-list-parser-2.0.0.tgz","tarball":"http://name.csiicloud.com:7001/@csstools/media-query-list-parser/download/@csstools/media-query-list-parser-2.0.0.tgz"},"_npmUser":{"name":"alaguna","email":"sombragriselros@gmail.com"},"directories":{},"maintainers":[{"name":"alaguna","email":""},{"name":"jonathantneal","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/media-query-list-parser_2.0.0_1674154523303_0.4182098849833489"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2023-01-19T18:55:23.475Z","publish_time":1674154523475,"_cnpm_publish_time":1674154523475},"1.0.0":{"name":"@csstools/media-query-list-parser","description":"Parse CSS media query lists.","version":"1.0.0","contributors":[{"name":"Antonio Laguna","email":"antonio@laguna.es","url":"https://antonio.laguna.es"},{"name":"Romain Menke","email":"romainmenke@gmail.com"}],"license":"MIT","funding":{"type":"opencollective","url":"https://opencollective.com/csstools"},"engines":{"node":"^14 || ^16 || >=18"},"main":"dist/index.cjs","module":"dist/index.mjs","types":"dist/index.d.ts","exports":{".":{"import":"./dist/index.mjs","require":"./dist/index.cjs","default":"./dist/index.mjs"}},"peerDependencies":{"@csstools/css-parser-algorithms":"^1.0.0","@csstools/css-tokenizer":"^1.0.0"},"scripts":{"build":"rollup -c ../../rollup/default.mjs","clean":"node -e \"fs.rmSync('./dist', { recursive: true, force: true });\"","lint":"npm run lint:eslint && npm run lint:package-json","lint:eslint":"eslint ./src --ext .js --ext .ts --ext .mjs --no-error-on-unmatched-pattern","lint:package-json":"node ../../.github/bin/format-package-json.mjs","prepublishOnly":"npm run clean && npm run build && npm run test","stryker":"stryker run --logLevel error","test":"node ./test/test.mjs","test:exports":"node ./test/_import.mjs && node ./test/_require.cjs","test:rewrite-expects":"REWRITE_EXPECTS=true node ./test/test.mjs"},"homepage":"https://github.com/csstools/postcss-plugins/tree/main/packages/media-query-list-parser#readme","repository":{"type":"git","url":"git+https://github.com/csstools/postcss-plugins.git","directory":"packages/media-query-list-parser"},"bugs":{"url":"https://github.com/csstools/postcss-plugins/issues"},"keywords":["css","media query","parser"],"volta":{"extends":"../../package.json"},"gitHead":"d8b8f431ed17696c5d6d12db37105ff617159f97","_id":"@csstools/media-query-list-parser@1.0.0","_nodeVersion":"16.15.1","_npmVersion":"8.11.0","dist":{"shasum":"17d08bfbcca677fc018e3dc3f54172a38c2fdca5","size":18792,"noattachment":false,"key":"/@csstools/media-query-list-parser/-/@csstools/media-query-list-parser-1.0.0.tgz","tarball":"http://name.csiicloud.com:7001/@csstools/media-query-list-parser/download/@csstools/media-query-list-parser-1.0.0.tgz"},"_npmUser":{"name":"alaguna","email":"sombragriselros@gmail.com"},"directories":{},"maintainers":[{"name":"alaguna","email":""},{"name":"jonathantneal","email":""}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/media-query-list-parser_1.0.0_1668419263650_0.1762266202206204"},"_hasShrinkwrap":false,"_cnpmcore_publish_time":"2022-11-14T11:15:45.978Z","publish_time":1668419263911,"_cnpm_publish_time":1668419263911}},"readme":"# Media Query List Parser\n\n[<img alt=\"npm version\" src=\"https://img.shields.io/npm/v/@csstools/media-query-list-parser.svg\" height=\"20\">][npm-url]\n[<img alt=\"Build Status\" src=\"https://github.com/csstools/postcss-plugins/workflows/test/badge.svg\" height=\"20\">][cli-url]\n[<img alt=\"Discord\" src=\"https://shields.io/badge/Discord-5865F2?logo=discord&logoColor=white\">][discord]\n\nImplemented from : https://www.w3.org/TR/mediaqueries-5/\n\n## Usage\n\nAdd [Media Query List Parser] to your project:\n\n```bash\nnpm install @csstools/media-query-list-parser @csstools/css-parser-algorithms @csstools/css-tokenizer --save-dev\n```\n\n[Media Query List Parser] depends on our CSS tokenizer and parser algorithms.\nIt must be used together with `@csstools/css-tokenizer` and `@csstools/css-parser-algorithms`.\n\n```ts\nimport { parse } from '@csstools/media-query-list-parser';\n\nexport function parseCustomMedia() {\n\tconst mediaQueryList = parse('screen and (min-width: 300px), (50px < height < 30vw)');\n\n\tmediaQueryList.forEach((mediaQuery) => {\n\t\tmediaQuery.walk((entry, index) => {\n\t\t\t// Index of the current Node in `parent`.\n\t\t\tconsole.log(index);\n\t\t\t// Type of `parent`.\n\t\t\tconsole.log(entry.parent.type);\n\n\t\t\t// Type of `node`\n\t\t\t{\n\t\t\t\t// Sometimes nodes can be arrays.\n\t\t\t\tif (Array.isArray(entry.node)) {\n\t\t\t\t\tentry.node.forEach((item) => {\n\t\t\t\t\t\tconsole.log(item.type);\n\t\t\t\t\t});\n\t\t\t\t}\n\n\t\t\t\tif ('type' in entry.node) {\n\t\t\t\t\tconsole.log(entry.node.type);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\t// stringified version of the current node.\n\t\t\tconsole.log(entry.node.toString());\n\n\t\t\t// Return `false` to stop the walker.\n\t\t\treturn false;\n\t\t});\n\t});\n}\n```\n\n[cli-url]: https://github.com/csstools/postcss-plugins/actions/workflows/test.yml?query=workflow/test\n[discord]: https://discord.gg/bUadyRwkJS\n[npm-url]: https://www.npmjs.com/package/@csstools/media-query-list-parser\n\n[Media Query List Parser]: https://github.com/csstools/postcss-plugins/tree/main/packages/media-query-list-parser\n","_attachments":{},"homepage":"https://github.com/csstools/postcss-plugins/tree/main/packages/media-query-list-parser#readme","bugs":{"url":"https://github.com/csstools/postcss-plugins/issues"},"license":"MIT"}