Skip to content

Commit 0361c47

Browse files
authored
Add support for Facebook and Instagram Android apps (#99)
* Adds Chromium version mappings for Facebook and Instagram Android apps. * Updates documentation to include Facebook and Instagram Apps. * Updates refresh-downstream.ts script to check for new versions in user-agents.io responses. * Reformats regex paterns in refresh-downstream.ts to avoid needing escape characters.
1 parent efac9f0 commit 0361c47

13 files changed

+50342
-22
lines changed

README.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -424,6 +424,8 @@ KaiOS is an exception - its upstream version mappings are handled separately fro
424424
| UC Browser Mobile | `uc_android` | `false` | useragents.io |
425425
| Yandex Browser Mobile | `ya_android` | `false` | useragents.io |
426426
| KaiOS | `kai_os` | `false` | Manual |
427+
| Facebook for Android | `facebook_android` | `false` | useragents.io |
428+
| Instagram for Android | `instagram_android` | `false` | useragents.io |
427429
428430
> [!NOTE]
429431
> All the non-core browsers currently included implement Chromium or Gecko. Their inclusion in any of the above methods is based on the Baseline feature set supported by the Chromium or Gecko version they implement, not their release date.

package-lock.json

Lines changed: 8 additions & 8 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@
4141
},
4242
"license": "Apache-2.0",
4343
"devDependencies": {
44-
"@mdn/browser-compat-data": "^7.1.2",
44+
"@mdn/browser-compat-data": "^7.1.3",
4545
"@rollup/plugin-terser": "^0.4.4",
4646
"@rollup/plugin-typescript": "^12.1.3",
4747
"@types/node": "^22.15.17",
@@ -53,7 +53,7 @@
5353
"tslib": "^2.8.1",
5454
"typescript": "^5.7.2",
5555
"typescript-eslint": "^8.35.0",
56-
"web-features": "^2.46.0"
56+
"web-features": "^2.48.0"
5757
},
5858
"repository": "git+https://github.com/web-platform-dx/baseline-browser-mapping.git"
5959
}

scripts/refresh-downstream.ts

Lines changed: 18 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -95,30 +95,44 @@ const handleUas = (
9595
latestExistingVersion: findLatestVersion(
9696
existingData.browsers["qq_android"].releases,
9797
),
98-
regex: new RegExp("chrome|Chrome\/(\\d+).*MQQBrowser\/(\\d+\\.\\d+)"),
98+
regex: new RegExp(/chrome|Chrome\/(\d+).*MQQBrowser\/(\d+.\d+)/),
9999
},
100100
{
101101
name: "uc_android",
102102
latestExistingVersion: findLatestVersion(
103103
existingData.browsers["uc_android"].releases,
104104
),
105-
regex: new RegExp("chrome|Chrome\/(\\d+).*UCBrowser\/(\\d+\\.\\d+)"),
105+
regex: new RegExp(/chrome|Chrome\/(\d+).*UCBrowser\/(\d+.\d+)/),
106106
},
107107
{
108108
name: "ya_android",
109109
latestExistingVersion: findLatestVersion(
110110
existingData.browsers["ya_android"].releases,
111111
),
112112
regex: new RegExp(
113-
"android|Android.*chrome|Chrome\/(\\d+).*YaBrowser\/(\\d+\\.\\d+)",
113+
/android|Android.*chrome|Chrome\/(\d+).*YaBrowser\/(\d+.\d+)/,
114114
),
115115
},
116116
{
117117
name: "kai_os",
118118
latestExistingVersion: findLatestVersion(
119119
existingData.browsers["kai_os"].releases,
120120
),
121-
regex: new RegExp("Firefox\/(\\d+).0 KAIOS\/(\\d.\\d)"),
121+
regex: new RegExp(/Firefox\/(\d+).0 KAIOS\/(\d.\d)/),
122+
},
123+
{
124+
name: "facebook_android",
125+
latestExistingVersion: findLatestVersion(
126+
existingData.browsers["facebook_android"].releases,
127+
),
128+
regex: new RegExp(/[Chrome|chrome]\/(\d+).*FB4A;FBAV\/(\d+)./),
129+
},
130+
{
131+
name: "instagram_android",
132+
latestExistingVersion: findLatestVersion(
133+
existingData.browsers["instagram_android"].releases,
134+
),
135+
regex: new RegExp(/[Chrome|chrome]\/(\d+).*Instagram (\d+)./),
122136
},
123137
];
124138

0 commit comments

Comments
 (0)