{"_id":"@cogs/browserslist-config","name":"@cogs/browserslist-config","dist-tags":{"latest":"0.1.0"},"versions":{"0.1.0":{"name":"@cogs/browserslist-config","version":"0.1.0","description":"Shareable Browserslist config, plus a utility for computing the lowest supported browser version across a set of Browserslist queries","license":"MIT","type":"module","repository":{"type":"git","url":"git+https://github.com/catesandrew/cogs.git","directory":"packages/browserslist-config"},"main":"./dist/index.js","types":"./dist/index.d.ts","bin":{"cogs-browserslist":"dist/cli.js"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"},"./browserslist":{"types":"./dist/browserslist.d.ts","import":"./dist/browserslist.js"},"./utils":{"types":"./dist/utils.d.ts","import":"./dist/utils.js"},"./package.json":"./package.json"},"publishConfig":{"access":"public"},"dependencies":{"browserslist":"^4.24.0","semver":"^7.6.0","@cogs/node-pkg":"0.1.0"},"devDependencies":{"@types/semver":"^7.5.0","vitest":"^3.0.0"},"scripts":{"build":"tsc -p tsconfig.json","lint":"biome check .","typecheck":"tsc -p tsconfig.json --noEmit","test":"vitest run"},"_id":"@cogs/browserslist-config@0.1.0","bugs":{"url":"https://github.com/catesandrew/cogs/issues"},"homepage":"https://github.com/catesandrew/cogs#readme","_integrity":"sha512-atP7lJ+hUJz06GtN/kQonc0R00uLRDaWsBz9wbeCogjU/pDKbIUJmg2zXENHHWWywE55XcMi8m3H3hXH/jt0OA==","_resolved":"/private/var/folders/kf/yz7n3vxj68j2hdld75dh6_180000gp/T/7efc85f01544c607c8e79dc8b384d66e/cogs-browserslist-config-0.1.0.tgz","_from":"file:cogs-browserslist-config-0.1.0.tgz","_nodeVersion":"24.1.0","_npmVersion":"11.6.4","dist":{"integrity":"sha512-atP7lJ+hUJz06GtN/kQonc0R00uLRDaWsBz9wbeCogjU/pDKbIUJmg2zXENHHWWywE55XcMi8m3H3hXH/jt0OA==","shasum":"f07b55db3bc40c1b7b81cfbc5487f97ad1479b49","tarball":"https://registry.npmjs.org/@cogs/browserslist-config/-/browserslist-config-0.1.0.tgz","fileCount":18,"unpackedSize":17956,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQCWHVR+SMszltT8UIRPkd4MFw2WRSo8lIZwY61rzm0TYgIhAOmsJasFOil1qpoMhBupd88aCiNhGZSNzdllD9JKb0b1"}]},"_npmUser":{"name":"catesandrew","email":"catesandrew@gmail.com"},"directories":{},"maintainers":[{"name":"catesandrew","email":"catesandrew@gmail.com"},{"name":"josephbolt","email":"plumhorse83@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/browserslist-config_0.1.0_1786412078728_0.4030937711719247"},"_hasShrinkwrap":false}},"time":{"created":"2026-08-11T01:34:38.553Z","0.1.0":"2026-08-11T01:34:38.883Z","modified":"2026-08-11T01:34:39.157Z"},"maintainers":[{"name":"catesandrew","email":"catesandrew@gmail.com"},{"name":"josephbolt","email":"plumhorse83@gmail.com"}],"description":"Shareable Browserslist config, plus a utility for computing the lowest supported browser version across a set of Browserslist queries","homepage":"https://github.com/catesandrew/cogs#readme","repository":{"type":"git","url":"git+https://github.com/catesandrew/cogs.git","directory":"packages/browserslist-config"},"bugs":{"url":"https://github.com/catesandrew/cogs/issues"},"license":"MIT","readme":"# @cogs/browserslist-config\n\nShareable [Browserslist](https://www.npmjs.com/package/browserslist) config,\nplus a utility for computing the lowest supported browser version across a\nset of Browserslist queries.\n\n## Why\n\nEvery project that cares about \"which browsers do we actually support\" ends\nup needing the same two things: one canonical list of Browserslist queries\nshared across all of a project's tooling (Babel, Autoprefixer, ESLint,\nPostCSS, etc.), and a way to turn resolved Browserslist query results (e.g.\n`\"chrome 90\"`, `\"ios_saf 10.0-10.2\"`) into a single lowest-supported-semver\nfloor per browser — useful for anything that needs to target its output at\nthe actual minimum version a build needs to run on, rather than re-deriving\nthat floor ad hoc.\n\n## Usage\n\n### Shareable config\n\nAdd this to your `package.json`:\n\n```json\n\"browserslist\": [\n  \"extends @cogs/browserslist-config\"\n]\n```\n\nOr to a `.browserslistrc` file:\n\n```\nextends @cogs/browserslist-config\n```\n\nThe config exposes `production`, `development`, `legacy`, and `modern` query\nsets. You can also import it directly:\n\n```ts\nimport { browserslistConfig } from '@cogs/browserslist-config'\n\nbrowserslistConfig.production // => ['>1%', 'last 2 Chrome major versions', ...]\n```\n\n### `getLowestVersions` — compute a version floor per browser\n\n```ts\nimport { getLowestVersions } from '@cogs/browserslist-config/utils'\nimport browserslist from '@cogs/browserslist-config/browserslist'\n\nconst queries = browserslist(browserslistConfig.production)\nconst floors = getLowestVersions(queries)\n// => { chrome: '90.0.0', firefox: '88.0.0', ios: '10.0.0', ... }\n```\n\n`getLowestVersions` walks a list of resolved Browserslist query strings,\nnormalizes browser identifiers (e.g. `and_chr` -> `chrome`, `ie_mob` -> `ie`),\nand reduces them to the lowest semver version seen per browser — handling\nversion ranges (`\"10.0-10.2\"`) and unreleased preview labels (e.g. Safari\nTechnology Preview, `\"tp\"`) along the way.\n\n### `cogs-browserslist` — run the Browserslist CLI in a monorepo\n\n```json\n\"scripts\": {\n  \"supported\": \"cogs-browserslist\"\n}\n```\n\n`cogs-browserslist` proxies to the real `browserslist` CLI binary via\n[`@cogs/node-pkg`](../node-pkg), so it resolves correctly no matter how far\npnpm/turbo hoists `browserslist`'s `node_modules/.bin` entry away from this\npackage.\n","readmeFilename":"README.md","_rev":"1-80bd82db466c3afddaf81fb5109690f6"}