ua-parser-js 1.0.37 → 2.0.2

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.
Files changed (205) hide show
  1. package/LICENSE.md +616 -0
  2. package/README.md +251 -0
  3. package/dist/icons/color/LICENSE.md +3 -0
  4. package/dist/icons/color/browser/android-browser.svg +1 -0
  5. package/dist/icons/color/browser/avant.png +0 -0
  6. package/dist/icons/color/browser/basilisk.png +0 -0
  7. package/dist/icons/color/browser/basilisk.svg +1 -0
  8. package/dist/icons/color/browser/brave.png +0 -0
  9. package/dist/icons/color/browser/brave.svg +1 -0
  10. package/dist/icons/color/browser/chrome.png +0 -0
  11. package/dist/icons/color/browser/chrome.svg +1 -0
  12. package/dist/icons/color/browser/chromium.png +0 -0
  13. package/dist/icons/color/browser/chromium.svg +1 -0
  14. package/dist/icons/color/browser/coc-coc.png +0 -0
  15. package/dist/icons/color/browser/default.png +0 -0
  16. package/dist/icons/color/browser/default.svg +1 -0
  17. package/dist/icons/color/browser/dolphin.png +0 -0
  18. package/dist/icons/color/browser/edge.png +0 -0
  19. package/dist/icons/color/browser/edge.svg +1 -0
  20. package/dist/icons/color/browser/electron.png +0 -0
  21. package/dist/icons/color/browser/electron.svg +1 -0
  22. package/dist/icons/color/browser/falkon.png +0 -0
  23. package/dist/icons/color/browser/falkon.svg +1 -0
  24. package/dist/icons/color/browser/firefox-reality.png +0 -0
  25. package/dist/icons/color/browser/firefox-reality.svg +1 -0
  26. package/dist/icons/color/browser/firefox.png +0 -0
  27. package/dist/icons/color/browser/firefox.svg +1 -0
  28. package/dist/icons/color/browser/gsa.svg +9 -0
  29. package/dist/icons/color/browser/icecat.png +0 -0
  30. package/dist/icons/color/browser/ie.svg +6 -0
  31. package/dist/icons/color/browser/konqueror.png +0 -0
  32. package/dist/icons/color/browser/konqueror.svg +1 -0
  33. package/dist/icons/color/browser/maxthon.png +0 -0
  34. package/dist/icons/color/browser/midori.png +0 -0
  35. package/dist/icons/color/browser/midori.svg +1 -0
  36. package/dist/icons/color/browser/netsurf.png +0 -0
  37. package/dist/icons/color/browser/netsurf.svg +1 -0
  38. package/dist/icons/color/browser/opera-gx.png +0 -0
  39. package/dist/icons/color/browser/opera-gx.svg +1 -0
  40. package/dist/icons/color/browser/opera-mini.png +0 -0
  41. package/dist/icons/color/browser/opera-touch.png +0 -0
  42. package/dist/icons/color/browser/opera.png +0 -0
  43. package/dist/icons/color/browser/opera.svg +1 -0
  44. package/dist/icons/color/browser/palemoon.png +0 -0
  45. package/dist/icons/color/browser/puffin.png +0 -0
  46. package/dist/icons/color/browser/safari.png +0 -0
  47. package/dist/icons/color/browser/safari.svg +1 -0
  48. package/dist/icons/color/browser/samsung-internet.png +0 -0
  49. package/dist/icons/color/browser/samsung-internet.svg +1 -0
  50. package/dist/icons/color/browser/seamonkey.png +0 -0
  51. package/dist/icons/color/browser/silk.png +0 -0
  52. package/dist/icons/color/browser/sogou-mobile.png +0 -0
  53. package/dist/icons/color/browser/ucbrowser.png +0 -0
  54. package/dist/icons/color/browser/ucbrowser.svg +1 -0
  55. package/dist/icons/color/browser/vivaldi.png +0 -0
  56. package/dist/icons/color/browser/vivaldi.svg +1 -0
  57. package/dist/icons/color/browser/webkit.png +0 -0
  58. package/dist/icons/color/browser/webkit.svg +1 -0
  59. package/dist/icons/color/browser/yandex.png +0 -0
  60. package/dist/icons/color/os/centos.svg +1 -0
  61. package/dist/icons/mono/LICENSE.md +3 -0
  62. package/dist/icons/mono/browser/alipay.svg +1 -0
  63. package/dist/icons/mono/browser/android-browser.svg +1 -0
  64. package/dist/icons/mono/browser/avast-secure-browser.svg +1 -0
  65. package/dist/icons/mono/browser/baidu-browser.svg +1 -0
  66. package/dist/icons/mono/browser/brave.svg +1 -0
  67. package/dist/icons/mono/browser/chrome-headless.svg +1 -0
  68. package/dist/icons/mono/browser/chrome-webview.svg +1 -0
  69. package/dist/icons/mono/browser/chrome.svg +1 -0
  70. package/dist/icons/mono/browser/chromium.svg +1 -0
  71. package/dist/icons/mono/browser/duckduckgo.svg +1 -0
  72. package/dist/icons/mono/browser/edge.svg +1 -0
  73. package/dist/icons/mono/browser/electron.svg +1 -0
  74. package/dist/icons/mono/browser/facebook.svg +1 -0
  75. package/dist/icons/mono/browser/firefox-focus.svg +1 -0
  76. package/dist/icons/mono/browser/firefox-reality.svg +1 -0
  77. package/dist/icons/mono/browser/firefox.svg +1 -0
  78. package/dist/icons/mono/browser/gsa.svg +1 -0
  79. package/dist/icons/mono/browser/huawei-browser.svg +1 -0
  80. package/dist/icons/mono/browser/icecat.svg +1 -0
  81. package/dist/icons/mono/browser/ie.svg +1 -0
  82. package/dist/icons/mono/browser/instagram.svg +1 -0
  83. package/dist/icons/mono/browser/jasmine.svg +1 -0
  84. package/dist/icons/mono/browser/kakaotalk.svg +1 -0
  85. package/dist/icons/mono/browser/klarna.svg +1 -0
  86. package/dist/icons/mono/browser/line.svg +1 -0
  87. package/dist/icons/mono/browser/linkedin.svg +1 -0
  88. package/dist/icons/mono/browser/miui-browser.svg +1 -0
  89. package/dist/icons/mono/browser/mobile-chrome.svg +1 -0
  90. package/dist/icons/mono/browser/mobile-firefox.svg +1 -0
  91. package/dist/icons/mono/browser/mobile-safari.svg +1 -0
  92. package/dist/icons/mono/browser/mozilla.svg +1 -0
  93. package/dist/icons/mono/browser/naver.svg +1 -0
  94. package/dist/icons/mono/browser/nokia-browser.svg +1 -0
  95. package/dist/icons/mono/browser/oculus-browser.svg +1 -0
  96. package/dist/icons/mono/browser/opera-coast.svg +1 -0
  97. package/dist/icons/mono/browser/opera-gx.svg +1 -0
  98. package/dist/icons/mono/browser/opera-mini.svg +1 -0
  99. package/dist/icons/mono/browser/opera-mobi.svg +1 -0
  100. package/dist/icons/mono/browser/opera-tablet.svg +1 -0
  101. package/dist/icons/mono/browser/opera-touch.svg +1 -0
  102. package/dist/icons/mono/browser/opera.svg +1 -0
  103. package/dist/icons/mono/browser/qqbrowser.svg +1 -0
  104. package/dist/icons/mono/browser/qqbrowserlite.svg +1 -0
  105. package/dist/icons/mono/browser/safari.svg +1 -0
  106. package/dist/icons/mono/browser/sailfish-browser.svg +1 -0
  107. package/dist/icons/mono/browser/samsung-internet.svg +1 -0
  108. package/dist/icons/mono/browser/smart-lenovo-browser.svg +1 -0
  109. package/dist/icons/mono/browser/snapchat.svg +1 -0
  110. package/dist/icons/mono/browser/sogou-explorer.svg +1 -0
  111. package/dist/icons/mono/browser/sogou-mobile.svg +1 -0
  112. package/dist/icons/mono/browser/tesla.svg +1 -0
  113. package/dist/icons/mono/browser/tiktok.svg +1 -0
  114. package/dist/icons/mono/browser/twitter.svg +1 -0
  115. package/dist/icons/mono/browser/vivaldi.svg +1 -0
  116. package/dist/icons/mono/browser/vivo-browser.svg +1 -0
  117. package/dist/icons/mono/browser/wechat.svg +1 -0
  118. package/dist/icons/mono/browser/weibo.svg +1 -0
  119. package/dist/icons/mono/browser/yandex.svg +1 -0
  120. package/dist/icons/mono/device/acer.svg +1 -0
  121. package/dist/icons/mono/device/amazon.svg +1 -0
  122. package/dist/icons/mono/device/apple.svg +1 -0
  123. package/dist/icons/mono/device/asus.svg +1 -0
  124. package/dist/icons/mono/device/att.svg +1 -0
  125. package/dist/icons/mono/device/blackberry.svg +1 -0
  126. package/dist/icons/mono/device/dell.svg +1 -0
  127. package/dist/icons/mono/device/facebook.svg +1 -0
  128. package/dist/icons/mono/device/fairphone.svg +1 -0
  129. package/dist/icons/mono/device/google.svg +1 -0
  130. package/dist/icons/mono/device/hp.svg +1 -0
  131. package/dist/icons/mono/device/huawei.svg +1 -0
  132. package/dist/icons/mono/device/lenovo.svg +1 -0
  133. package/dist/icons/mono/device/lg.svg +1 -0
  134. package/dist/icons/mono/device/meizu.svg +1 -0
  135. package/dist/icons/mono/device/microsoft.svg +1 -0
  136. package/dist/icons/mono/device/motorola.svg +1 -0
  137. package/dist/icons/mono/device/nintendo.svg +1 -0
  138. package/dist/icons/mono/device/nokia.svg +1 -0
  139. package/dist/icons/mono/device/nvidia.svg +1 -0
  140. package/dist/icons/mono/device/oneplus.svg +1 -0
  141. package/dist/icons/mono/device/oppo.svg +1 -0
  142. package/dist/icons/mono/device/panasonic.svg +1 -0
  143. package/dist/icons/mono/device/roku.svg +1 -0
  144. package/dist/icons/mono/device/samsung.svg +1 -0
  145. package/dist/icons/mono/device/siemens.svg +1 -0
  146. package/dist/icons/mono/device/sony.svg +1 -0
  147. package/dist/icons/mono/device/tesla.svg +1 -0
  148. package/dist/icons/mono/device/vivo.svg +1 -0
  149. package/dist/icons/mono/device/vodafone.svg +1 -0
  150. package/dist/icons/mono/device/xiaomi.svg +1 -0
  151. package/dist/icons/mono/device/zebra.svg +1 -0
  152. package/dist/icons/mono/os/android.svg +1 -0
  153. package/dist/icons/mono/os/arch.svg +1 -0
  154. package/dist/icons/mono/os/blackberry.svg +1 -0
  155. package/dist/icons/mono/os/centos.svg +1 -0
  156. package/dist/icons/mono/os/chrome-os.svg +1 -0
  157. package/dist/icons/mono/os/chromecast.svg +1 -0
  158. package/dist/icons/mono/os/debian.svg +1 -0
  159. package/dist/icons/mono/os/deepin.svg +1 -0
  160. package/dist/icons/mono/os/elementary-os.svg +1 -0
  161. package/dist/icons/mono/os/fedora.svg +1 -0
  162. package/dist/icons/mono/os/firefox.svg +1 -0
  163. package/dist/icons/mono/os/freebsd.svg +1 -0
  164. package/dist/icons/mono/os/gentoo.svg +1 -0
  165. package/dist/icons/mono/os/gnu.svg +1 -0
  166. package/dist/icons/mono/os/harmonyos.svg +1 -0
  167. package/dist/icons/mono/os/ios.svg +1 -0
  168. package/dist/icons/mono/os/kaios.svg +1 -0
  169. package/dist/icons/mono/os/linux.svg +1 -0
  170. package/dist/icons/mono/os/macos.svg +1 -0
  171. package/dist/icons/mono/os/manjaro.svg +1 -0
  172. package/dist/icons/mono/os/mint.svg +1 -0
  173. package/dist/icons/mono/os/netbsd.svg +1 -0
  174. package/dist/icons/mono/os/nintendo.svg +1 -0
  175. package/dist/icons/mono/os/openbsd.svg +1 -0
  176. package/dist/icons/mono/os/playstation.svg +1 -0
  177. package/dist/icons/mono/os/raspbian.svg +1 -0
  178. package/dist/icons/mono/os/redhat.svg +1 -0
  179. package/dist/icons/mono/os/sailfish.svg +1 -0
  180. package/dist/icons/mono/os/slackware.svg +1 -0
  181. package/dist/icons/mono/os/suse.svg +1 -0
  182. package/dist/icons/mono/os/ubuntu.svg +1 -0
  183. package/dist/icons/mono/os/windows.svg +1 -0
  184. package/dist/icons/mono/os/xbox.svg +1 -0
  185. package/dist/ua-parser.min.js +4 -4
  186. package/dist/ua-parser.min.mjs +4 -0
  187. package/dist/ua-parser.pack.js +4 -4
  188. package/dist/ua-parser.pack.mjs +4 -0
  189. package/package.json +86 -36
  190. package/script/cli.js +4 -0
  191. package/src/enums/ua-parser-enums.d.ts +366 -0
  192. package/src/enums/ua-parser-enums.js +393 -0
  193. package/src/enums/ua-parser-enums.mjs +397 -0
  194. package/src/extensions/ua-parser-extensions.d.ts +16 -0
  195. package/src/extensions/ua-parser-extensions.js +366 -0
  196. package/src/extensions/ua-parser-extensions.mjs +370 -0
  197. package/src/helpers/ua-parser-helpers.d.ts +27 -0
  198. package/src/helpers/ua-parser-helpers.js +137 -0
  199. package/src/helpers/ua-parser-helpers.mjs +141 -0
  200. package/src/main/ua-parser.d.ts +113 -0
  201. package/src/main/ua-parser.js +1439 -0
  202. package/src/main/ua-parser.mjs +1397 -0
  203. package/license.md +0 -21
  204. package/readme.md +0 -385
  205. package/src/ua-parser.js +0 -946
@@ -0,0 +1,113 @@
1
+ // Type definitions for UAParser.js v2.0.2
2
+ // Project: https://github.com/faisalman/ua-parser-js
3
+ // Definitions by: Faisal Salman <https://github.com/faisalman>
4
+
5
+ import type { IncomingHttpHeaders } from 'http';
6
+ import type { Headers as FetchAPIHeaders } from 'node-fetch';
7
+
8
+ declare namespace UAParser {
9
+
10
+ interface IData<T> {
11
+ is(val: string): boolean;
12
+ toString(): string;
13
+ withClientHints(): PromiseLike<T> | T;
14
+ withFeatureCheck(): PromiseLike<T> | T;
15
+ }
16
+
17
+ interface IBrowser extends IData<IBrowser> {
18
+ name?: string;
19
+ version?: string;
20
+ major?: string;
21
+ type?: 'crawler' | 'cli' | 'email' | 'fetcher' | 'inapp' | 'mediaplayer' | 'library';
22
+ }
23
+
24
+ interface ICPU extends IData<ICPU> {
25
+ architecture?: 'ia32' | 'ia64' | 'amd64' | 'arm' | 'arm64' | 'armhf' | 'avr' | 'avr32' | 'irix' | 'irix64' | 'mips' | 'mips64' | '68k' | 'pa-risc' | 'ppc' | 'sparc' | 'sparc64';
26
+ }
27
+
28
+ interface IDevice extends IData<IDevice> {
29
+ type?: 'mobile' | 'tablet' | 'console' | 'smarttv' | 'wearable' | 'xr' | 'embedded';
30
+ vendor?: string;
31
+ model?: string;
32
+ }
33
+
34
+ interface IEngine extends IData<IEngine> {
35
+ name?: 'Amaya' | 'ArkWeb' | 'Blink' | 'EdgeHTML' | 'Flow' | 'Gecko' | 'Goanna' | 'iCab' | 'KHTML' | 'LibWeb' | 'Links' | 'Lynx' | 'NetFront' | 'NetSurf' | 'Presto' | 'Servo' | 'Tasman' | 'Trident' | 'w3m' | 'WebKit';
36
+ version?: string;
37
+ }
38
+
39
+ interface IOS extends IData<IOS> {
40
+ name?: string;
41
+ version?: string;
42
+ }
43
+
44
+ interface IResult extends IData<IResult> {
45
+ ua: string;
46
+ browser: IBrowser;
47
+ cpu: ICPU;
48
+ device: IDevice;
49
+ engine: IEngine;
50
+ os: IOS;
51
+ }
52
+
53
+ type RegexMap = ((RegExp | string | (string | RegExp | Function)[])[])[];
54
+ type UAParserProps = 'browser' | 'cpu' | 'device' | 'engine' | 'os';
55
+ type UAParserExt = Partial<Record<UAParserProps, RegexMap>> | Partial<Record<UAParserProps, RegexMap>>[];
56
+ type UAParserHeaders = Record<string, string> | IncomingHttpHeaders | FetchAPIHeaders;
57
+
58
+ export function UAParser(uastring?: string, extensions?: UAParserExt, headers?: UAParserHeaders): IResult;
59
+ export function UAParser(uastring?: string, headers?: UAParserHeaders): IResult;
60
+ export function UAParser(extensions?: UAParserExt, headers?: UAParserHeaders): IResult;
61
+ export function UAParser(headers?: UAParserHeaders): IResult;
62
+
63
+ export class UAParser {
64
+
65
+ static readonly BROWSER: {
66
+ NAME: 'name';
67
+ VERSION: 'version';
68
+ MAJOR: 'major';
69
+ TYPE: 'type';
70
+ };
71
+ static readonly CPU: {
72
+ ARCHITECTURE: 'architecture';
73
+ };
74
+ static readonly DEVICE: {
75
+ TYPE: 'type';
76
+ VENDOR: 'vendor';
77
+ MODEL: 'model';
78
+ CONSOLE: 'console';
79
+ MOBILE: 'mobile';
80
+ SMARTTV: 'smarttv';
81
+ TABLET: 'tablet';
82
+ WEARABLE: 'wearable';
83
+ XR: 'xr';
84
+ EMBEDDED: 'embedded';
85
+ };
86
+ static readonly ENGINE: {
87
+ NAME: 'name';
88
+ VERSION: 'version';
89
+ };
90
+ static readonly OS: {
91
+ NAME: 'name';
92
+ VERSION: 'version';
93
+ };
94
+ static readonly VERSION: string;
95
+
96
+ constructor(uastring?: string, extensions?: UAParserExt, headers?: Record<string, string>);
97
+ constructor(uastring?: string, headers?: Record<string, string>);
98
+ constructor(extensions?: UAParserExt, headers?: Record<string, string>);
99
+ constructor(headers?: Record<string, string>);
100
+
101
+ getUA(): string;
102
+ getBrowser(): IBrowser;
103
+ getCPU(): ICPU;
104
+ getDevice(): IDevice;
105
+ getEngine(): IEngine;
106
+ getOS(): IOS;
107
+ getResult(): IResult;
108
+ setUA(uastring: string): UAParser;
109
+ }
110
+ }
111
+
112
+ export as namespace UAParser;
113
+ export = UAParser;