baseline-browser-mapping 0.2.8 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1482,9 +1482,15 @@
1482
1482
  "engine_version": "109",
1483
1483
  "status": "unknown",
1484
1484
  "release_date": "2024-12-11"
1485
+ },
1486
+ "15.9": {
1487
+ "engine": "Blink",
1488
+ "engine_version": "109",
1489
+ "status": "unknown",
1490
+ "release_date": "2025-02-01"
1485
1491
  }
1486
1492
  }
1487
1493
  }
1488
1494
  },
1489
- "lastUpdated": "2025-01-07T14:55:48.959Z"
1495
+ "lastUpdated": "2025-02-01T14:03:35.927Z"
1490
1496
  }
@@ -1,10 +1,10 @@
1
- interface BrowserVersion {
1
+ type BrowserVersion = {
2
2
  browser: string;
3
3
  version: string;
4
4
  release_date: string;
5
5
  engine: string | null;
6
6
  engine_version: string | null;
7
- }
7
+ };
8
8
  export declare function getMinimumWidelyAvailable(includeDownstream?: boolean): BrowserVersion[];
9
9
  export declare function getAllWidelyAvailable(includeDownstream?: boolean): BrowserVersion[];
10
10
  export declare function getMinimumWidelyAvailableOnDate(dateString: string, includeDownstream?: boolean): BrowserVersion[];
@@ -1,5 +1,7 @@
1
- import bcdBrowsers from "@mdn/browser-compat-data" assert { type: "json" };
2
- import otherBrowsers from "../data/downstream-browsers.json" assert { type: "json" };
1
+ import { createRequire } from "node:module";
2
+ const require = createRequire(import.meta.url);
3
+ const bcdBrowsers = require("@mdn/browser-compat-data");
4
+ const otherBrowsers = require("../data/downstream-browsers.json");
3
5
  const bcdCoreBrowserNames = [
4
6
  "chrome",
5
7
  "chrome_android",
@@ -64,9 +66,7 @@ const getCoreVersionsByDate = (date, minOnly = true) => {
64
66
  return true;
65
67
  })
66
68
  .sort((a, b) => {
67
- {
68
- return compareVersions(a[0], b[0]);
69
- }
69
+ return compareVersions(a[0], b[0]);
70
70
  });
71
71
  for (let i = 1; i < sortedVersions.length; i++) {
72
72
  const thisVersion = sortedVersions[i];
@@ -110,6 +110,8 @@ const getDownstreamBrowsers = (inputArray = [], minOnly = true) => {
110
110
  }
111
111
  let downstreamArray = new Array();
112
112
  downstreamBrowserData.forEach(([browserName, browserData]) => {
113
+ if (!browserData.releases)
114
+ return;
113
115
  let sortedAndFilteredVersions = Object.entries(browserData.releases)
114
116
  .filter(([versionNumber, versionData]) => {
115
117
  if (!versionData.engine) {
@@ -118,7 +120,8 @@ const getDownstreamBrowsers = (inputArray = [], minOnly = true) => {
118
120
  if (versionData.engine != "Blink") {
119
121
  return false;
120
122
  }
121
- if (parseInt(versionData.engine_version) < parseInt(minimumChromeVersion)) {
123
+ if (versionData.engine_version &&
124
+ parseInt(versionData.engine_version) < parseInt(minimumChromeVersion)) {
122
125
  return false;
123
126
  }
124
127
  return true;
@@ -133,9 +136,9 @@ const getDownstreamBrowsers = (inputArray = [], minOnly = true) => {
133
136
  downstreamArray.push({
134
137
  browser: browserName,
135
138
  version: versionNumber,
136
- release_date: versionData.release_date,
137
- engine: versionData.engine,
138
- engine_version: versionData.engine_version,
139
+ release_date: versionData.release_date ?? "unknown",
140
+ engine: versionData.engine ?? null,
141
+ engine_version: versionData.engine_version ?? null,
139
142
  });
140
143
  if (minOnly) {
141
144
  break;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "baseline-browser-mapping",
3
- "version": "0.2.8",
3
+ "version": "0.3.0",
4
4
  "description": "A library for obtaining browser versions with their maximum supported Baseline feature set and Widely Available status.",
5
5
  "exports": {
6
6
  ".": "./dist/index.js"
@@ -14,10 +14,14 @@
14
14
  "type": "module",
15
15
  "scripts": {
16
16
  "test": "echo \"Error: no test specified\" && exit 1",
17
- "prepare": "prettier . --write; tsc"
17
+ "prepare": "rm -rf dist; prettier . --write; tsc"
18
18
  },
19
19
  "license": "Apache-2.0",
20
20
  "dependencies": {
21
21
  "@mdn/browser-compat-data": "latest"
22
+ },
23
+ "devDependencies": {
24
+ "@types/node": "^22.13.5",
25
+ "typescript": "^5.7.2"
22
26
  }
23
27
  }