naorpeled
2a2ba39ddb
fix: restore ES5 output for bundled.js, and assert it
...
`bundled.js` stopped being ES5 when the webpack build was replaced by tsdown
in #628 . It parses at ecmaVersion 2015 but not 5:
var t=(t,e)=>()=>(e||(t((e={exports:{}}).exports,e),t=null),e.exports)
That is rolldown's `__commonJS` interop helper. `@rolldown/plugin-babel` only
transforms input modules, and rolldown appends the helper afterwards; terser
with `ecma: 5` avoids introducing newer syntax but does not transpile, so the
arrow functions reached the published file. `es5.js` has no CommonJS
dependencies and never gets the helper, which is why only `bundled.js` broke.
The effect is total rather than partial: in an ES5 engine the whole script is
a SyntaxError, so `bundled.js` — the bundle that exists specifically to serve
those engines, polyfills included — does not load at all there.
Lower the emitted chunk with a babel renderChunk pass that runs after bundling
and before terser, so rolldown's own helpers are covered too. Costs 2.8 kB
(+1.6%) on bundled.js; es5.js is unchanged at 34 kB.
The existing guard was a grep for backticks, which this syntax slips straight
past. Replace it with an acorn parse at ecmaVersion 5 over both legacy
bundles, plus a tokeniser check for real template literals (backticks inside
core-js string literals are fine, and 2.14.1 shipped three of them).
Verified by reverting the build fix: `bundled.js parses as ES5` fails, and
passes again once restored. Also confirmed bundled.js loads and parses the
live navigator.userAgent in a real browser.
2026-08-30 21:59:08 +03:00
Naor Peled
28174aca5e
fix: keep every published file reachable, and test all four build artifacts ( #631 )
2026-08-30 21:40:10 +03:00
Naor Peled
1d7923497f
fix: resolve open GitHub security findings ( #630 )
2026-08-30 21:05:22 +03:00
Naor Peled
a88622557d
Dual packaging, without breaking existing consumers ( #628 )
...
Co-authored-by: Yasumasa Ashida <ys.ashida@gmail.com >
2026-08-30 00:10:11 +03:00
Jelle Raaijmakers
a37b8be8a7
feat: add Ladybird browser support ( #627 )
2026-07-31 12:10:10 +03:00
Swapnil Sahu
92b5639733
feat: add support for HeyTap Browser and Vivo Browser identification ( #621 )
2026-04-10 23:18:44 +07:00
Naor Peled
2c253c3ad2
fix: prevent Motorola Edge devices from being misidentified as Microsoft Edge ( #612 )
2026-03-14 16:17:53 +02:00
naorpeled
cf397a4b50
feat: add Vivaldi client hints support
2026-02-13 23:09:48 +02:00
Stas Tolpekin
8ddb4f5a0d
feat: add the ability to use an array of versions in Parser.satisfies() ( #466 )
2026-02-13 22:15:55 +02:00
Copilot
a2d6ce81b1
feat: add Smart TV platform detection ( #582 )
2026-02-07 18:44:55 +02:00
Copilot
227f5ecd4b
feat: add Brave browser support via clientHints ( #597 )
2026-02-07 18:29:20 +02:00
Jam Hsu
c09ff24ae1
feat: Add Line sipder detection ( #600 )
...
Co-authored-by: Jam <jam.hsu@lativ.com.tw >
2026-02-06 23:08:55 +02:00
Jonathan Kingston
aaa67db25e
feat: add clientHints support + DuckDuckGo detection ( #595 )
2026-02-01 23:50:33 +02:00
Jam Hsu
74463f6b23
feat: Add Slack bot detection ( #596 )
...
Co-authored-by: Jam <jam.hsu@lativ.com.tw >
2026-01-31 18:54:09 +02:00
Naor Peled
1df8838756
revert: rollback addition of named exports ( #591 )
2025-11-29 02:01:44 +02:00
Naor Peled
514510d847
feat: add support for latest MacOS ( #580 )
...
Co-authored-by: Seiji Kohara <9543980+seijikohara@users.noreply.github.com >
2025-11-22 23:50:54 +02:00
Naor Peled
4a6dacca08
feat: add Sogou browser support ( #579 )
...
Co-authored-by: 猫猫 <49067249+NotEvenANeko@users.noreply.github.com >
2025-11-22 23:31:31 +02:00
Copilot
be90a00e37
feat: add LibreWolf browser detection ( #578 )
...
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com >
Co-authored-by: naorpeled <6171622+naorpeled@users.noreply.github.com >
2025-11-22 19:01:03 +02:00
Naor Peled
f7d2c0693c
feat: add support for AI crawl bots ( #577 )
2025-11-22 18:05:08 +02:00
Lucio Martinez
771dfb2dfe
feat: add more bot platforms ( #542 )
...
Co-authored-by: naorpeled <me@naor.dev >
2025-11-22 16:44:08 +02:00
Copilot
bd5cb7186c
feat: add named exports for tree shaking support with modern bundlers ( #566 )
...
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com >
Co-authored-by: naorpeled <6171622+naorpeled@users.noreply.github.com >
Co-authored-by: naorpeled <me@naor.dev >
2025-11-22 15:15:13 +02:00
Copilot
2b5ee5de8c
feat: add Support for HarmonyOS User-Agent Detection ( #567 )
...
Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@users.noreply.github.com >
Co-authored-by: naorpeled <6171622+naorpeled@users.noreply.github.com >
2025-11-22 14:27:00 +02:00
daniol
4481f5aab3
feat: add Nokia Vendor ( #448 )
2023-11-17 20:54:44 +02:00
Mehmet Akif Yücel
bb8f94efcd
feat: add Pale Moon browser support ( #495 )
2023-11-17 20:47:16 +02:00
Denis Demchenko
24dab5f699
Merge pull request #437 from willamesoares/include-alias-check
...
feat: add support for using alias in 'is' method
2020-09-12 10:25:35 +03:00
Will Soares
a9c4677c86
feat: add support for using alias in 'is' method
2020-08-23 16:55:29 -03:00
Will Soares
53d18c8994
increase test coverage
2020-08-23 14:42:33 -03:00
Will Soares
d5fe5657d1
feat(browser): add detection for Miui Browser
2020-08-23 13:58:07 -03:00
Denis Demchenko
ba8f7d8a54
chore(tests): fix tests
2020-07-09 21:23:20 +03:00
Denis Demchenko
725de76e14
Revert "chore(tests): fix tests for Firefox iOS"
...
This reverts commit 9edfabf9
2020-07-09 21:23:10 +03:00
Denis Demchenko
9edfabf98a
chore(tests): fix tests for Firefox iOS
...
relevant to #401
2020-06-02 00:32:35 +03:00
Denis Demchenko
3813d92a55
feat(browser): add detection of Opera Touch
...
fixes #414
2020-06-02 00:16:43 +03:00
acailly
cb242c0242
handle Firefox on iPad on iOS 13
2020-04-28 11:37:01 +02:00
Denis Demchenko
d238da4906
Merge pull request #383 from oliverfoster/issue/359
...
fixes #359 IE11 Added Array.prototype.find and Object.assign polyfills
2019-12-26 15:55:29 +02:00
Denis Demchenko
366a9c47e9
Merge pull request #381 from Tindtily/feature/add-wechat-ua
...
add windowswechat ua
2019-12-26 15:50:21 +02:00
Denis Demchenko
de5b4e02fe
Merge pull request #379 from neckro/production
...
Correctly detect Firefox on iPad
2019-12-26 15:48:46 +02:00
Oliver foster
5a6af193d2
Extended test cases and fixed bug
2019-12-19 12:00:46 +00:00
Oliver foster
b74bb0caa2
Added polyfill tests
2019-12-19 11:46:15 +00:00
Oliver foster
cad365b53e
Fixed getSecondMatch test
2019-12-19 11:38:49 +00:00
Oliver foster
64bbd2a9b1
Fixed tests
2019-12-19 11:26:52 +00:00
Oliver foster
3cdfd7de02
Expanded test coverage for utils.js
2019-12-19 11:22:40 +00:00
zhaoxiaohai
adde31f807
add windowswechat ua
2019-12-17 16:24:04 +08:00
Joseph Culbert
b213e4c8a6
Correctly detect Firefox on iPad
2019-12-13 16:40:59 -06:00
Farfurix
648daa5f9f
Add Electron
2019-12-04 15:55:36 +03:00
Denis Demchenko
0ce5a8173a
Merge pull request #363 from navarroaxel/feat/gsa
...
feat(browsers): Add Google Search App detection
2019-10-02 21:26:25 +03:00
Axel Navarro
e29357793a
feat(browsers): Add Google Search App detection
2019-09-25 08:58:27 -03:00
Mathias Kahl
e57c3d99d5
support QQ Browser
2019-09-18 10:34:14 +02:00
Denis Demchenko
d9885c9de3
fix(platform): fix Tablet PC detection as tablets
...
fixes #334
2019-09-06 14:33:14 +03:00
Jörg Leis
496136fd83
Fixes, refactor, new test cases
2019-07-17 17:33:48 +02:00
Jörg Leis
b2b36e6adb
Add unit test for OS version names
2019-07-17 14:13:17 +02:00