@incodetech/core 2.2.0 → 2.3.0-rc.1

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 (258) hide show
  1. package/THIRD_PARTY_NOTICES.txt +281 -0
  2. package/dist/BaseWasmProvider-Dyi6dKp1.d.ts +65 -0
  3. package/dist/{BrowserDiagnosticsCryptoProvider-B8vorxN5.esm.js → BrowserDiagnosticsCryptoProvider-CU6kBvqv.esm.js} +1 -1
  4. package/dist/{BrowserVisibilityObserverProvider-BX1BiLDK.esm.js → BrowserVisibilityObserverProvider-BrJN1B8A.esm.js} +2 -0
  5. package/dist/FaceDetectionProvider-BfhWkK90.esm.js +431 -0
  6. package/dist/FaceDetectionProvider-LdZ47bWy.d.ts +36 -0
  7. package/dist/{IIdCaptureCapability-DHTT3FC2.d.ts → IIdCaptureCapability-RNiFhvXR.d.ts} +7 -33
  8. package/dist/IWasmUtilCapability-CNWRl7jr.d.ts +117 -0
  9. package/dist/{MotionSensorProvider-DGiV77J_.esm.js → MotionSensorProvider-BgTYwg9L.esm.js} +1 -1
  10. package/dist/{StreamCanvasCapture-D2XcXCZ4.esm.js → StreamCanvasCapture-C9jtgBdT.esm.js} +2 -2
  11. package/dist/{deepsightService-DLVQS_RH.d.ts → StreamCanvasCapture-_8gdW5Lk.d.ts} +54 -41
  12. package/dist/StreamCanvasProcessingSession-CBnbTnOr.esm.js +42 -0
  13. package/dist/{addressSearch-D1XpBdUS.esm.js → addressSearch-DyHGgeX8.esm.js} +1 -1
  14. package/dist/advanceableErrors-CpF2cBy6.esm.js +21 -0
  15. package/dist/ae-signature.d.ts +4 -2
  16. package/dist/ae-signature.esm.js +1 -1
  17. package/dist/antifraud.esm.js +2 -2
  18. package/dist/{antifraudManager-CQFNgSPt.esm.js → antifraudManager-DNkw66oW.esm.js} +2 -2
  19. package/dist/{antifraudStateMachine-Bf_JVNwn.esm.js → antifraudStateMachine-DBeq47D2.esm.js} +1 -1
  20. package/dist/{apiError-BA1d_au0.esm.js → apiError-Budb6m6w.esm.js} +14 -2
  21. package/dist/authentication.d.ts +3 -3
  22. package/dist/authentication.esm.js +2 -2
  23. package/dist/{authenticationManager-BBMGTcwW.d.ts → authenticationManager-CjXBjC-c.d.ts} +7 -1
  24. package/dist/{authenticationManager-zh9TC62P.esm.js → authenticationManager-cMXhG70r.esm.js} +5 -5
  25. package/dist/{authenticationStateMachine-xzi-vnvE.esm.js → authenticationStateMachine-MOYz4HCf.esm.js} +6 -62
  26. package/dist/avatar.d.ts +1 -2
  27. package/dist/avatar.esm.js +1 -1
  28. package/dist/{backCameraStream-CUeYm5eu.esm.js → backCameraStream-BOtyQowf.esm.js} +83 -22
  29. package/dist/{camera-_2sXMXiF.esm.js → camera-sIa9ceW2.esm.js} +19 -1
  30. package/dist/camera.esm.js +1 -1
  31. package/dist/{canvas-E1zGkel4.esm.js → canvas-BxFzWTt-.esm.js} +19 -0
  32. package/dist/certificate-issuance.d.ts +2 -302
  33. package/dist/certificate-issuance.esm.js +3 -66
  34. package/dist/certificateIssuanceManager-C3-CI0_s.esm.js +69 -0
  35. package/dist/certificateIssuanceManager-DCgEidHz.d.ts +312 -0
  36. package/dist/{certificateIssuanceStateMachine-D_R92TYu.esm.js → certificateIssuanceStateMachine-CxqS_nD-.esm.js} +1 -1
  37. package/dist/consent.d.ts +1 -1
  38. package/dist/consent.esm.js +2 -2
  39. package/dist/{consentManager-BxjpLZAG.esm.js → consentManager-B6E1XJDw.esm.js} +2 -2
  40. package/dist/{consentManager-3Pbtj-RV.d.ts → consentManager-BhYFeKiG.d.ts} +4 -4
  41. package/dist/{consentStateMachine-D9D4ON8Z.esm.js → consentStateMachine-DTSfdGiW.esm.js} +1 -1
  42. package/dist/createCameraCycleOwnership-CX3hJGKc.esm.js +826 -0
  43. package/dist/{createFaceAvatar-DQKaRise.esm.js → createFaceAvatar-BNHdeFj8.esm.js} +2 -2
  44. package/dist/createFaceAvatar-BlcTYgJv.d.ts +497 -0
  45. package/dist/cross-document-data-match.esm.js +1 -1
  46. package/dist/{crossDocumentDataMatchManager-CGT0V6RV.esm.js → crossDocumentDataMatchManager-9XhFVZ5S.esm.js} +2 -2
  47. package/dist/curp-validation.d.ts +1 -1
  48. package/dist/curp-validation.esm.js +2 -2
  49. package/dist/{curpValidationManager-6Nmkn5u1.esm.js → curpValidationManager-DbIMYFcJ.esm.js} +2 -2
  50. package/dist/{curpValidationManager-DVGr7Fq7.d.ts → curpValidationManager-SSKNrm5Z.d.ts} +1 -1
  51. package/dist/{curpValidationStateMachine-Ds7KMacK.esm.js → curpValidationStateMachine-g5kMfuLj.esm.js} +1 -1
  52. package/dist/custom-fields.d.ts +2 -114
  53. package/dist/custom-fields.esm.js +2 -232
  54. package/dist/custom-watchlist.d.ts +2 -51
  55. package/dist/custom-watchlist.esm.js +3 -70
  56. package/dist/customFieldsManager-8-W2KY4n.d.ts +141 -0
  57. package/dist/customFieldsManager-CzWZTkW-.esm.js +264 -0
  58. package/dist/customWatchlistManager-DWTED5Ur.esm.js +73 -0
  59. package/dist/customWatchlistManager-PBWHr_oM.d.ts +64 -0
  60. package/dist/{customWatchlistStateMachine-YWSgKLbF.esm.js → customWatchlistStateMachine-DOQou6TW.esm.js} +1 -1
  61. package/dist/{deepsightLoader--wMKWECS.esm.js → deepsightLoader-DDv3vhXU.esm.js} +27 -71
  62. package/dist/device.d.ts +25 -2
  63. package/dist/device.esm.js +69 -7
  64. package/dist/document-capture.d.ts +2 -2
  65. package/dist/document-capture.esm.js +2 -2
  66. package/dist/{documentCaptureManager-DsQQhWry.esm.js → documentCaptureManager-CwAiM9WY.esm.js} +2 -2
  67. package/dist/{documentCaptureManager-B3t0ydtg.d.ts → documentCaptureManager-DensIj5F.d.ts} +83 -83
  68. package/dist/{documentCaptureStateMachine-BM4Ex_5x.esm.js → documentCaptureStateMachine-DfGOBapD.esm.js} +5 -5
  69. package/dist/dynamic-forms.d.ts +1 -1
  70. package/dist/dynamic-forms.esm.js +2 -2
  71. package/dist/{dynamicFormsManager-fFVIRBNv.esm.js → dynamicFormsManager-BbS-XMFc.esm.js} +16 -5
  72. package/dist/{dynamicFormsManager-fhK0yINk.d.ts → dynamicFormsManager-D5R_uxLQ.d.ts} +25 -3
  73. package/dist/{dynamicFormsStateMachine-D6D7oEYk.esm.js → dynamicFormsStateMachine-D8zHBCh4.esm.js} +35 -3
  74. package/dist/ekyb.d.ts +1 -1
  75. package/dist/ekyb.esm.js +3 -3
  76. package/dist/{ekybManager-Y3MkoXpC.esm.js → ekybManager-5aiac8wL.esm.js} +2 -2
  77. package/dist/{ekybStateMachine-3nlnqdlr.esm.js → ekybStateMachine-Bn2IE9rx.esm.js} +3 -3
  78. package/dist/ekyc.esm.js +2 -2
  79. package/dist/{ekycManager-DgT48ky6.esm.js → ekycManager-BlQ-Qj4E.esm.js} +2 -2
  80. package/dist/{ekycStateMachine-CQwqiR-R.esm.js → ekycStateMachine-CshSNJhh.esm.js} +2 -2
  81. package/dist/electronic-signature.d.ts +3 -3
  82. package/dist/electronic-signature.esm.js +2 -2
  83. package/dist/{electronicSignatureManager-DGbAJ00W.esm.js → electronicSignatureManager-BJJH0Tvi.esm.js} +357 -51
  84. package/dist/electronicSignatureManager-Ds-KEVTq.d.ts +2786 -0
  85. package/dist/email.esm.js +2 -2
  86. package/dist/{emailManager-BY0jeYwR.esm.js → emailManager-bR1N5rV_.esm.js} +2 -2
  87. package/dist/{emailStateMachine-Crw8QVmc.esm.js → emailStateMachine-Bc_6oIYw.esm.js} +1 -1
  88. package/dist/{endpoints-CCzL3XD_.esm.js → endpoints-B-3Q-LUw.esm.js} +24 -10
  89. package/dist/{events-DYiyoSlx.esm.js → events-ijlbX_Wx.esm.js} +2 -2
  90. package/dist/events.d.ts +1 -1
  91. package/dist/events.esm.js +1 -1
  92. package/dist/extensibility.d.ts +24 -64
  93. package/dist/extensibility.esm.js +35 -29
  94. package/dist/face-match.esm.js +2 -2
  95. package/dist/{faceCaptureManagerFactory-CVnZ0fa5.esm.js → faceCaptureManagerFactory-B7Ms6pSs.esm.js} +68 -7
  96. package/dist/{faceCaptureManagerFactory-BxWPpxyd.d.ts → faceCaptureManagerFactory-BeUl8fl1.d.ts} +86 -54
  97. package/dist/faceCaptureSetup-bkAlr5d8.esm.js +2067 -0
  98. package/dist/{faceMatchManager-Ri4UbNz0.esm.js → faceMatchManager-Bmv0HzuY.esm.js} +2 -2
  99. package/dist/{faceMatchStateMachine-20DdZ3jg.esm.js → faceMatchStateMachine-mRIHQ3dA.esm.js} +1 -1
  100. package/dist/{feature-management-CPQ4qv3F.esm.js → feature-management-E0mq0pMs.esm.js} +32 -7
  101. package/dist/feature-management.d.ts +1 -1
  102. package/dist/feature-management.esm.js +1 -1
  103. package/dist/field-comparison.esm.js +1 -1
  104. package/dist/{fieldComparisonManager-Cg6kPQQx.esm.js → fieldComparisonManager-CC-klG0h.esm.js} +2 -2
  105. package/dist/fiscal-qr.d.ts +2 -56
  106. package/dist/fiscal-qr.esm.js +2 -308
  107. package/dist/fiscalQrManager-B1STmT6z.d.ts +71 -0
  108. package/dist/fiscalQrManager-BunLVFbd.esm.js +34143 -0
  109. package/dist/flow-events.d.ts +1 -1
  110. package/dist/flow.d.ts +212 -185
  111. package/dist/flow.esm.js +119 -30
  112. package/dist/{flowCompletionService-tfeoGre9.esm.js → flowCompletionService-DJp1odGN.esm.js} +2 -2
  113. package/dist/{flowServices-f5Ruz7R9.esm.js → flowServices-DjPFGs_D.esm.js} +91 -26
  114. package/dist/geolocation.esm.js +2 -2
  115. package/dist/{geolocationManager-CH6RfqFH.esm.js → geolocationManager-D5906YXx.esm.js} +2 -2
  116. package/dist/{geolocationStateMachine-DmbWFely.esm.js → geolocationStateMachine-BVOduc3y.esm.js} +3 -3
  117. package/dist/getBrowser-CBiibsL-.esm.js +19 -0
  118. package/dist/{getBrowser-DNrQeL4T.esm.js → getBrowser-Cbe1C4Tn.esm.js} +2 -1
  119. package/dist/{getDeviceClass-9y-kbVDw.esm.js → getDeviceClass-5NYZg9s6.esm.js} +2 -2
  120. package/dist/getParsedUserAgent-B2iFDql1.esm.js +1278 -0
  121. package/dist/government-validation.d.ts +2 -85
  122. package/dist/government-validation.esm.js +3 -120
  123. package/dist/governmentValidationManager-CacFOtKO.esm.js +79 -0
  124. package/dist/governmentValidationManager-D02vT4yY.d.ts +63 -0
  125. package/dist/governmentValidationStateMachine-CoaZOSTP.esm.js +54 -0
  126. package/dist/home.d.ts +1 -1
  127. package/dist/home.esm.js +1 -1
  128. package/dist/id-ocr.d.ts +2 -2
  129. package/dist/id-ocr.esm.js +2 -2
  130. package/dist/id-selfie-flow.d.ts +3 -2
  131. package/dist/id-selfie-flow.esm.js +11 -10
  132. package/dist/id-verification.esm.js +2 -2
  133. package/dist/id.d.ts +29 -5
  134. package/dist/id.esm.js +48 -46
  135. package/dist/idCaptureDefaults-CbPA-Auz.esm.js +727 -0
  136. package/dist/{idCaptureManager-CqrqSjJV.d.ts → idCaptureManager-DKESug0R.d.ts} +230 -43
  137. package/dist/{idCaptureManager-BYwTZ2H8.esm.js → idCaptureManager-rfV9dIXy.esm.js} +259 -46
  138. package/dist/{idCaptureServices-44kwQItl.esm.js → idCaptureServices-i1KxugN7.esm.js} +285 -72
  139. package/dist/idCaptureStateMachine-Ne_PXth_.esm.js +5333 -0
  140. package/dist/{idOcrManager-DXc_xRN7.d.ts → idOcrManager-BF_cXZq8.d.ts} +1 -1
  141. package/dist/{idOcrManager-BIQYQXXj.esm.js → idOcrManager-r46XfZGE.esm.js} +2 -2
  142. package/dist/{idOcrStateMachine-cSxzHpHt.esm.js → idOcrStateMachine-ClDEP-VI.esm.js} +1 -1
  143. package/dist/{idVerificationManager-JpV_SAsl.esm.js → idVerificationManager-DT42c77H.esm.js} +2 -2
  144. package/dist/{idVerificationStateMachine-nPeUNyFq.esm.js → idVerificationStateMachine-DbDVIh9t.esm.js} +1 -1
  145. package/dist/identity-reuse.esm.js +2 -2
  146. package/dist/{identityReuseManager-kNCg9AbD.esm.js → identityReuseManager-yG3acUrQ.esm.js} +2 -2
  147. package/dist/{identityReuseStateMachine-DyulxDjP.esm.js → identityReuseStateMachine-BhAkuIra.esm.js} +1 -1
  148. package/dist/{index-CLMF0QLQ.d.ts → index-DLcJT5YP.d.ts} +1 -1
  149. package/dist/index.d.ts +1 -1
  150. package/dist/index.esm.js +1 -1
  151. package/dist/{invokeOnCaptureCallback-GpvMuz9o.esm.js → invokeOnCaptureCallback-BjzPjJ_p.esm.js} +1 -1
  152. package/dist/mandatory-consent.d.ts +2 -2
  153. package/dist/mandatory-consent.esm.js +2 -2
  154. package/dist/{mandatoryConsentManager-B4Niyg_u.esm.js → mandatoryConsentManager-7dI0D08q.esm.js} +2 -2
  155. package/dist/{mandatoryConsentManager-DyPzUmsZ.d.ts → mandatoryConsentManager-vhv1co_n.d.ts} +1 -1
  156. package/dist/{mandatoryConsentStateMachine-B4-1u-L8.esm.js → mandatoryConsentStateMachine-DC5Mo6M1.esm.js} +1 -1
  157. package/dist/multipartRecordingService-OEgIRvqC.esm.js +605 -0
  158. package/dist/{permissionGuards-KINpmKtI.esm.js → permissionGuards-uYZYFu4J.esm.js} +1 -1
  159. package/dist/{permissionServices-UvUcOSRb.esm.js → permissionServices-Bj_fyWtv.esm.js} +5 -5
  160. package/dist/personhood.d.ts +6 -5
  161. package/dist/personhood.esm.js +10 -10
  162. package/dist/phone.esm.js +2 -2
  163. package/dist/{phoneManager-FsJ0W2Ei.esm.js → phoneManager-IjhSv5XS.esm.js} +2 -2
  164. package/dist/{phoneStateMachine-Ba0wKHyX.esm.js → phoneStateMachine-CXdXufKg.esm.js} +1 -1
  165. package/dist/{platform-BJrm5nzZ.esm.js → platform-DkcRc9JV.esm.js} +29 -1
  166. package/dist/qe-signature.d.ts +5 -3
  167. package/dist/qe-signature.esm.js +2 -2
  168. package/dist/redirect-to-mobile.esm.js +2 -2
  169. package/dist/{redirectToMobileManager-y4VQB11M.esm.js → redirectToMobileManager-FLEWJtv8.esm.js} +2 -2
  170. package/dist/{redirectToMobileStateMachine-Cyv2x0PP.esm.js → redirectToMobileStateMachine-CSWWgUTO.esm.js} +1 -1
  171. package/dist/{rolldown-runtime-FZ4Itg2g.esm.js → rolldown-runtime-FDOR9p9I.esm.js} +1 -19
  172. package/dist/{runChildModule-Dukuw23X.esm.js → runChildModule-CI1gGWN1.esm.js} +3 -21
  173. package/dist/safeStorage-B-trhxg6.esm.js +423 -0
  174. package/dist/{sdkVersion-D1Bm59g6.esm.js → sdkVersion-BZh6dj53.esm.js} +1 -1
  175. package/dist/selfie.d.ts +5 -5
  176. package/dist/selfie.esm.js +14 -76
  177. package/dist/{selfieErrorUtils-C2PYBVsp.esm.js → selfieErrorUtils-UiQ46EBa.esm.js} +30 -4
  178. package/dist/{selfieManager-DwlCppg0.d.ts → selfieManager-4RRLi21P.d.ts} +8 -11
  179. package/dist/{selfieManager-Bj6B2ZVy.esm.js → selfieManager-B-2c1n_x.esm.js} +5 -5
  180. package/dist/selfieStateMachine-Bzx41R8d.esm.js +69 -0
  181. package/dist/{session-BFdLgN4i.esm.js → session-3LmvAU4S.esm.js} +4 -5
  182. package/dist/session.d.ts +21 -11
  183. package/dist/session.esm.js +5 -5
  184. package/dist/{sessionInitializer-dlfDehHk.esm.js → sessionInitializer-BFk33E67.esm.js} +187 -68
  185. package/dist/{setup-BIAtLa8k.esm.js → setup-BWG-hivt.esm.js} +226 -100
  186. package/dist/{setup-BgoWtvIS.d.ts → setup-Cv-JM9QC.d.ts} +63 -69
  187. package/dist/signature.esm.js +2 -2
  188. package/dist/{signatureManager-Ca43yhwk.esm.js → signatureManager-B72np4ZO.esm.js} +2 -2
  189. package/dist/{signatureStateMachine-K1LMRrxG.esm.js → signatureStateMachine-ce_XMA3l.esm.js} +1 -1
  190. package/dist/{src-0Jurt29N.esm.js → src-35ekGRzK.esm.js} +1 -1
  191. package/dist/{stats-B0nFKawG.esm.js → stats-CZcy2J53.esm.js} +1 -1
  192. package/dist/stats.esm.js +1 -1
  193. package/dist/{trueSightService---iW2KKJ.esm.js → trueSightService-BN-Hzw82.esm.js} +7 -7
  194. package/dist/trust-graph.esm.js +1 -1
  195. package/dist/{types-BX_XkMsQ2.d.ts → types-9_esGTPj.d.ts} +1 -1
  196. package/dist/types-BT_Oalip.d.ts +1 -0
  197. package/dist/{types-DelMqZLe.d.ts → types-BjSly8cp.d.ts} +1 -1
  198. package/dist/{types-Hmd7U0JA.d.ts → types-Bnl58jUQ.d.ts} +6 -85
  199. package/dist/types-ChAowIxT.d.ts +6 -0
  200. package/dist/{types-DVmXIdzW.d.ts → types-D0gekt4U.d.ts} +38 -5
  201. package/dist/types-DgDvvzg0.d.ts +10 -0
  202. package/dist/{types-KPvmag_B.d.ts → types-Do5rEXij.d.ts} +7 -4
  203. package/dist/{types-Bdf8_LYB2.d.ts → types-byBHOzCG2.d.ts} +305 -25
  204. package/dist/video-selfie.d.ts +59 -35
  205. package/dist/video-selfie.esm.js +510 -601
  206. package/dist/{videoSelfieCameraWarmer-NEhFZvWx.esm.js → videoSelfieCameraWarmer-B8PcYqmz.esm.js} +14 -153
  207. package/dist/videoSelfieFlowModuleMachine-BUe2uACW.esm.js +32 -0
  208. package/dist/{videoSelfieStepDetector-D3oo2ofo.d.ts → videoSelfieStepDetector-Co0Gu2k2.d.ts} +59 -13
  209. package/dist/virtualCameraCheck-Cjab7FTI.esm.js +48 -0
  210. package/dist/warmup-CUUnwYxe.esm.js +714 -0
  211. package/dist/warmup-Cis2p6O0.d.ts +128 -0
  212. package/dist/wasm.d.ts +30 -6
  213. package/dist/wasm.esm.js +36 -4
  214. package/dist/{wasmDsFlagSync-BqUCwLY8.esm.js → wasmDsFlagSync-B2e8p268.esm.js} +2 -2
  215. package/dist/{wasmWebClient-DM8lkb0z.esm.js → wasmWebClient-B7baE-Wf.esm.js} +358 -28
  216. package/dist/watchlist-for-business.d.ts +2 -78
  217. package/dist/watchlist-for-business.esm.js +3 -102
  218. package/dist/watchlist.esm.js +2 -2
  219. package/dist/watchlistForBusinessManager-CIMkpEhu.esm.js +107 -0
  220. package/dist/watchlistForBusinessManager-CsnJnG-C.d.ts +99 -0
  221. package/dist/{watchlistForBusinessStateMachine-CxFnlshm.esm.js → watchlistForBusinessStateMachine-CJ-MvUre.esm.js} +13 -6
  222. package/dist/{watchlistManager-LoNZH9qm.esm.js → watchlistManager-CixcLNDT.esm.js} +2 -2
  223. package/dist/{watchlistStateMachine-DIKQDoUT.esm.js → watchlistStateMachine-CBqk2w-h.esm.js} +1 -1
  224. package/dist/workflow.d.ts +12 -8
  225. package/dist/workflow.esm.js +48 -39
  226. package/package.json +4 -10
  227. package/dist/BrowserStorageProvider-k-FDkC4W.esm.js +0 -67
  228. package/dist/FaceDetectionProvider-Mh6q3EbA.d.ts +0 -349
  229. package/dist/IFaceAvatarCapability-BrL19G0s.d.ts +0 -23
  230. package/dist/IStorageCapability-ORkQfK3F.d.ts +0 -242
  231. package/dist/OpenViduRecordingProvider-Du98qevC.esm.js +0 -85
  232. package/dist/createFaceAvatar-BEj18KXi.d.ts +0 -50
  233. package/dist/document-upload.d.ts +0 -325
  234. package/dist/document-upload.esm.js +0 -197
  235. package/dist/electronicSignatureManager-CcUXQZS7.d.ts +0 -1300
  236. package/dist/faceCaptureSetup-Cd-04W_X.esm.js +0 -863
  237. package/dist/getBrowser-Cb8Zgrgp.esm.js +0 -7
  238. package/dist/getParsedUserAgent-pJjATANs.esm.js +0 -1622
  239. package/dist/governmentValidationStateMachine-CK9DrZXX.esm.js +0 -226
  240. package/dist/idCaptureDefaults-WeHbQM7W.esm.js +0 -225
  241. package/dist/idCaptureStateMachine-kZ5OpdfM.esm.js +0 -3342
  242. package/dist/lib-DAyUtOTj.esm.js +0 -12420
  243. package/dist/manualReviewService-D4IkipnN.esm.js +0 -15
  244. package/dist/mediaRecorderOptions-dALSV8af.esm.js +0 -40
  245. package/dist/onDeviceFaceResults-CUHwyZT4.esm.js +0 -646
  246. package/dist/openviduLazy-CCDpFWg1.esm.js +0 -10
  247. package/dist/recordingService-3NSENVwp.esm.js +0 -329
  248. package/dist/safeStorage-Ep56I-f_.esm.js +0 -982
  249. package/dist/selfieStateMachine-CHV_WNst.esm.js +0 -55
  250. package/dist/trueSight-B_icM8r2.esm.js +0 -1
  251. package/dist/types-EELWyWpd.d.ts +0 -6
  252. package/dist/types-Vb4P9ovf.d.ts +0 -22
  253. package/dist/warmup-Dv2alr2-.d.ts +0 -82
  254. package/dist/wasmDefaults-DTUrftxR.esm.js +0 -125
  255. package/dist/{Face2DProvider-UUQt_vRC.esm.js → Face2DProvider-BF48sz5c.esm.js} +1 -1
  256. package/dist/{PrivacyLensProvider-D8PS7AJa.esm.js → PrivacyLensProvider-EwnC_C5n.esm.js} +1 -1
  257. /package/dist/{types-BfgmV7s72.d.ts → types-BfgmV7s7.d.ts} +0 -0
  258. /package/dist/{types-CJ7Yl9K-2.d.ts → types-CJ7Yl9K-.d.ts} +0 -0
@@ -0,0 +1,1278 @@
1
+ import { t as __commonJSMin } from "./rolldown-runtime-FDOR9p9I.esm.js";
2
+ //#endregion
3
+ //#region ../infra/src/device/getParsedUserAgent.ts
4
+ var import_ua_parser = (/* @__PURE__ */ __commonJSMin(((exports, module) => {
5
+ (function(window, undefined) {
6
+ "use strict";
7
+ var LIBVERSION = "1.0.41", EMPTY = "", UNKNOWN = "?", FUNC_TYPE = "function", UNDEF_TYPE = "undefined", OBJ_TYPE = "object", STR_TYPE = "string", MAJOR = "major", MODEL = "model", NAME = "name", TYPE = "type", VENDOR = "vendor", VERSION = "version", ARCHITECTURE = "architecture", CONSOLE = "console", MOBILE = "mobile", TABLET = "tablet", SMARTTV = "smarttv", WEARABLE = "wearable", EMBEDDED = "embedded", UA_MAX_LENGTH = 500;
8
+ var AMAZON = "Amazon", APPLE = "Apple", ASUS = "ASUS", BLACKBERRY = "BlackBerry", BROWSER = "Browser", CHROME = "Chrome", EDGE = "Edge", FIREFOX = "Firefox", GOOGLE = "Google", HONOR = "Honor", HUAWEI = "Huawei", LENOVO = "Lenovo", LG = "LG", MICROSOFT = "Microsoft", MOTOROLA = "Motorola", NVIDIA = "Nvidia", ONEPLUS = "OnePlus", OPERA = "Opera", OPPO = "OPPO", SAMSUNG = "Samsung", SHARP = "Sharp", SONY = "Sony", XIAOMI = "Xiaomi", ZEBRA = "Zebra", FACEBOOK = "Facebook", CHROMIUM_OS = "Chromium OS", MAC_OS = "Mac OS", SUFFIX_BROWSER = " Browser";
9
+ var extend = function(regexes, extensions) {
10
+ var mergedRegexes = {};
11
+ for (var i in regexes) if (extensions[i] && extensions[i].length % 2 === 0) mergedRegexes[i] = extensions[i].concat(regexes[i]);
12
+ else mergedRegexes[i] = regexes[i];
13
+ return mergedRegexes;
14
+ }, enumerize = function(arr) {
15
+ var enums = {};
16
+ for (var i = 0; i < arr.length; i++) enums[arr[i].toUpperCase()] = arr[i];
17
+ return enums;
18
+ }, has = function(str1, str2) {
19
+ return typeof str1 === STR_TYPE ? lowerize(str2).indexOf(lowerize(str1)) !== -1 : false;
20
+ }, lowerize = function(str) {
21
+ return str.toLowerCase();
22
+ }, majorize = function(version) {
23
+ return typeof version === STR_TYPE ? version.replace(/[^\d\.]/g, EMPTY).split(".")[0] : undefined;
24
+ }, trim = function(str, len) {
25
+ if (typeof str === STR_TYPE) {
26
+ str = str.replace(/^\s\s*/, EMPTY);
27
+ return typeof len === UNDEF_TYPE ? str : str.substring(0, UA_MAX_LENGTH);
28
+ }
29
+ };
30
+ var rgxMapper = function(ua, arrays) {
31
+ var i = 0, j, k, p, q, matches, match;
32
+ while (i < arrays.length && !matches) {
33
+ var regex = arrays[i], props = arrays[i + 1];
34
+ j = k = 0;
35
+ while (j < regex.length && !matches) {
36
+ if (!regex[j]) break;
37
+ matches = regex[j++].exec(ua);
38
+ if (!!matches) for (p = 0; p < props.length; p++) {
39
+ match = matches[++k];
40
+ q = props[p];
41
+ if (typeof q === OBJ_TYPE && q.length > 0) {
42
+ if (q.length === 2) if (typeof q[1] == FUNC_TYPE) this[q[0]] = q[1].call(this, match);
43
+ else this[q[0]] = q[1];
44
+ else if (q.length === 3) if (typeof q[1] === FUNC_TYPE && !(q[1].exec && q[1].test)) this[q[0]] = match ? q[1].call(this, match, q[2]) : undefined;
45
+ else this[q[0]] = match ? match.replace(q[1], q[2]) : undefined;
46
+ else if (q.length === 4) this[q[0]] = match ? q[3].call(this, match.replace(q[1], q[2])) : undefined;
47
+ } else this[q] = match ? match : undefined;
48
+ }
49
+ }
50
+ i += 2;
51
+ }
52
+ }, strMapper = function(str, map) {
53
+ for (var i in map) if (typeof map[i] === OBJ_TYPE && map[i].length > 0) {
54
+ for (var j = 0; j < map[i].length; j++) if (has(map[i][j], str)) return i === UNKNOWN ? undefined : i;
55
+ } else if (has(map[i], str)) return i === UNKNOWN ? undefined : i;
56
+ return map.hasOwnProperty("*") ? map["*"] : str;
57
+ };
58
+ var oldSafariMap = {
59
+ "1.0": "/8",
60
+ "1.2": "/1",
61
+ "1.3": "/3",
62
+ "2.0": "/412",
63
+ "2.0.2": "/416",
64
+ "2.0.3": "/417",
65
+ "2.0.4": "/419",
66
+ "?": "/"
67
+ }, windowsVersionMap = {
68
+ "ME": "4.90",
69
+ "NT 3.11": "NT3.51",
70
+ "NT 4.0": "NT4.0",
71
+ "2000": "NT 5.0",
72
+ "XP": ["NT 5.1", "NT 5.2"],
73
+ "Vista": "NT 6.0",
74
+ "7": "NT 6.1",
75
+ "8": "NT 6.2",
76
+ "8.1": "NT 6.3",
77
+ "10": ["NT 6.4", "NT 10.0"],
78
+ "RT": "ARM"
79
+ };
80
+ var regexes = {
81
+ browser: [
82
+ [/\b(?:crmo|crios)\/([\w\.]+)/i],
83
+ [VERSION, [NAME, "Chrome"]],
84
+ [/edg(?:e|ios|a)?\/([\w\.]+)/i],
85
+ [VERSION, [NAME, "Edge"]],
86
+ [
87
+ /(opera mini)\/([-\w\.]+)/i,
88
+ /(opera [mobiletab]{3,6})\b.+version\/([-\w\.]+)/i,
89
+ /(opera)(?:.+version\/|[\/ ]+)([\w\.]+)/i
90
+ ],
91
+ [NAME, VERSION],
92
+ [/opios[\/ ]+([\w\.]+)/i],
93
+ [VERSION, [NAME, OPERA + " Mini"]],
94
+ [/\bop(?:rg)?x\/([\w\.]+)/i],
95
+ [VERSION, [NAME, OPERA + " GX"]],
96
+ [/\bopr\/([\w\.]+)/i],
97
+ [VERSION, [NAME, OPERA]],
98
+ [/\bb[ai]*d(?:uhd|[ub]*[aekoprswx]{5,6})[\/ ]?([\w\.]+)/i],
99
+ [VERSION, [NAME, "Baidu"]],
100
+ [/\b(?:mxbrowser|mxios|myie2)\/?([-\w\.]*)\b/i],
101
+ [VERSION, [NAME, "Maxthon"]],
102
+ [
103
+ /(kindle)\/([\w\.]+)/i,
104
+ /(lunascape|maxthon|netfront|jasmine|blazer|sleipnir)[\/ ]?([\w\.]*)/i,
105
+ /(avant|iemobile|slim(?:browser|boat|jet))[\/ ]?([\d\.]*)/i,
106
+ /(?:ms|\()(ie) ([\w\.]+)/i,
107
+ /(flock|rockmelt|midori|epiphany|silk|skyfire|ovibrowser|bolt|iron|vivaldi|iridium|phantomjs|bowser|qupzilla|falkon|rekonq|puffin|brave|whale(?!.+naver)|qqbrowserlite|duckduckgo|klar|helio|(?=comodo_)?dragon)\/([-\w\.]+)/i,
108
+ /(heytap|ovi|115)browser\/([\d\.]+)/i,
109
+ /(weibo)__([\d\.]+)/i
110
+ ],
111
+ [NAME, VERSION],
112
+ [/quark(?:pc)?\/([-\w\.]+)/i],
113
+ [VERSION, [NAME, "Quark"]],
114
+ [/\bddg\/([\w\.]+)/i],
115
+ [VERSION, [NAME, "DuckDuckGo"]],
116
+ [/(?:\buc? ?browser|(?:juc.+)ucweb)[\/ ]?([\w\.]+)/i],
117
+ [VERSION, [NAME, "UC" + BROWSER]],
118
+ [
119
+ /microm.+\bqbcore\/([\w\.]+)/i,
120
+ /\bqbcore\/([\w\.]+).+microm/i,
121
+ /micromessenger\/([\w\.]+)/i
122
+ ],
123
+ [VERSION, [NAME, "WeChat"]],
124
+ [/konqueror\/([\w\.]+)/i],
125
+ [VERSION, [NAME, "Konqueror"]],
126
+ [/trident.+rv[: ]([\w\.]{1,9})\b.+like gecko/i],
127
+ [VERSION, [NAME, "IE"]],
128
+ [/ya(?:search)?browser\/([\w\.]+)/i],
129
+ [VERSION, [NAME, "Yandex"]],
130
+ [/slbrowser\/([\w\.]+)/i],
131
+ [VERSION, [NAME, "Smart Lenovo " + BROWSER]],
132
+ [/(avast|avg)\/([\w\.]+)/i],
133
+ [[
134
+ NAME,
135
+ /(.+)/,
136
+ "$1 Secure " + BROWSER
137
+ ], VERSION],
138
+ [/\bfocus\/([\w\.]+)/i],
139
+ [VERSION, [NAME, FIREFOX + " Focus"]],
140
+ [/\bopt\/([\w\.]+)/i],
141
+ [VERSION, [NAME, OPERA + " Touch"]],
142
+ [/coc_coc\w+\/([\w\.]+)/i],
143
+ [VERSION, [NAME, "Coc Coc"]],
144
+ [/dolfin\/([\w\.]+)/i],
145
+ [VERSION, [NAME, "Dolphin"]],
146
+ [/coast\/([\w\.]+)/i],
147
+ [VERSION, [NAME, OPERA + " Coast"]],
148
+ [/miuibrowser\/([\w\.]+)/i],
149
+ [VERSION, [NAME, "MIUI" + SUFFIX_BROWSER]],
150
+ [/fxios\/([\w\.-]+)/i],
151
+ [VERSION, [NAME, FIREFOX]],
152
+ [/\bqihoobrowser\/?([\w\.]*)/i],
153
+ [VERSION, [NAME, "360"]],
154
+ [/\b(qq)\/([\w\.]+)/i],
155
+ [[
156
+ NAME,
157
+ /(.+)/,
158
+ "$1Browser"
159
+ ], VERSION],
160
+ [/(oculus|sailfish|huawei|vivo|pico)browser\/([\w\.]+)/i],
161
+ [[
162
+ NAME,
163
+ /(.+)/,
164
+ "$1" + SUFFIX_BROWSER
165
+ ], VERSION],
166
+ [/samsungbrowser\/([\w\.]+)/i],
167
+ [VERSION, [NAME, SAMSUNG + " Internet"]],
168
+ [/metasr[\/ ]?([\d\.]+)/i],
169
+ [VERSION, [NAME, "Sogou Explorer"]],
170
+ [/(sogou)mo\w+\/([\d\.]+)/i],
171
+ [[NAME, "Sogou Mobile"], VERSION],
172
+ [
173
+ /(electron)\/([\w\.]+) safari/i,
174
+ /(tesla)(?: qtcarbrowser|\/(20\d\d\.[-\w\.]+))/i,
175
+ /m?(qqbrowser|2345(?=browser|chrome|explorer))\w*[\/ ]?v?([\w\.]+)/i
176
+ ],
177
+ [NAME, VERSION],
178
+ [/(lbbrowser|rekonq)/i, /\[(linkedin)app\]/i],
179
+ [NAME],
180
+ [/ome\/([\w\.]+) \w* ?(iron) saf/i, /ome\/([\w\.]+).+qihu (360)[es]e/i],
181
+ [VERSION, NAME],
182
+ [/((?:fban\/fbios|fb_iab\/fb4a)(?!.+fbav)|;fbav\/([\w\.]+);)/i],
183
+ [[NAME, FACEBOOK], VERSION],
184
+ [
185
+ /(Klarna)\/([\w\.]+)/i,
186
+ /(kakao(?:talk|story))[\/ ]([\w\.]+)/i,
187
+ /(naver)\(.*?(\d+\.[\w\.]+).*\)/i,
188
+ /(daum)apps[\/ ]([\w\.]+)/i,
189
+ /safari (line)\/([\w\.]+)/i,
190
+ /\b(line)\/([\w\.]+)\/iab/i,
191
+ /(alipay)client\/([\w\.]+)/i,
192
+ /(twitter)(?:and| f.+e\/([\w\.]+))/i,
193
+ /(chromium|instagram|snapchat)[\/ ]([-\w\.]+)/i
194
+ ],
195
+ [NAME, VERSION],
196
+ [/\bgsa\/([\w\.]+) .*safari\//i],
197
+ [VERSION, [NAME, "GSA"]],
198
+ [/musical_ly(?:.+app_?version\/|_)([\w\.]+)/i],
199
+ [VERSION, [NAME, "TikTok"]],
200
+ [/headlesschrome(?:\/([\w\.]+)| )/i],
201
+ [VERSION, [NAME, CHROME + " Headless"]],
202
+ [/ wv\).+(chrome)\/([\w\.]+)/i],
203
+ [[NAME, CHROME + " WebView"], VERSION],
204
+ [/droid.+ version\/([\w\.]+)\b.+(?:mobile safari|safari)/i],
205
+ [VERSION, [NAME, "Android " + BROWSER]],
206
+ [/(chrome|omniweb|arora|[tizenoka]{5} ?browser)\/v?([\w\.]+)/i],
207
+ [NAME, VERSION],
208
+ [/version\/([\w\.\,]+) .*mobile\/\w+ (safari)/i],
209
+ [VERSION, [NAME, "Mobile Safari"]],
210
+ [/version\/([\w(\.|\,)]+) .*(mobile ?safari|safari)/i],
211
+ [VERSION, NAME],
212
+ [/webkit.+?(mobile ?safari|safari)(\/[\w\.]+)/i],
213
+ [NAME, [
214
+ VERSION,
215
+ strMapper,
216
+ oldSafariMap
217
+ ]],
218
+ [/(webkit|khtml)\/([\w\.]+)/i],
219
+ [NAME, VERSION],
220
+ [/(navigator|netscape\d?)\/([-\w\.]+)/i],
221
+ [[NAME, "Netscape"], VERSION],
222
+ [/(wolvic|librewolf)\/([\w\.]+)/i],
223
+ [NAME, VERSION],
224
+ [/mobile vr; rv:([\w\.]+)\).+firefox/i],
225
+ [VERSION, [NAME, FIREFOX + " Reality"]],
226
+ [
227
+ /ekiohf.+(flow)\/([\w\.]+)/i,
228
+ /(swiftfox)/i,
229
+ /(icedragon|iceweasel|camino|chimera|fennec|maemo browser|minimo|conkeror)[\/ ]?([\w\.\+]+)/i,
230
+ /(seamonkey|k-meleon|icecat|iceape|firebird|phoenix|palemoon|basilisk|waterfox)\/([-\w\.]+)$/i,
231
+ /(firefox)\/([\w\.]+)/i,
232
+ /(mozilla)\/([\w\.]+) .+rv\:.+gecko\/\d+/i,
233
+ /(amaya|dillo|doris|icab|ladybird|lynx|mosaic|netsurf|obigo|polaris|w3m|(?:go|ice|up)[\. ]?browser)[-\/ ]?v?([\w\.]+)/i,
234
+ /\b(links) \(([\w\.]+)/i
235
+ ],
236
+ [NAME, [
237
+ VERSION,
238
+ /_/g,
239
+ "."
240
+ ]],
241
+ [/(cobalt)\/([\w\.]+)/i],
242
+ [NAME, [
243
+ VERSION,
244
+ /master.|lts./,
245
+ ""
246
+ ]]
247
+ ],
248
+ cpu: [
249
+ [/\b((amd|x|x86[-_]?|wow|win)64)\b/i],
250
+ [[ARCHITECTURE, "amd64"]],
251
+ [/(ia32(?=;))/i, /\b((i[346]|x)86)(pc)?\b/i],
252
+ [[ARCHITECTURE, "ia32"]],
253
+ [/\b(aarch64|arm(v?[89]e?l?|_?64))\b/i],
254
+ [[ARCHITECTURE, "arm64"]],
255
+ [/\b(arm(v[67])?ht?n?[fl]p?)\b/i],
256
+ [[ARCHITECTURE, "armhf"]],
257
+ [/( (ce|mobile); ppc;|\/[\w\.]+arm\b)/i],
258
+ [[ARCHITECTURE, "arm"]],
259
+ [/((ppc|powerpc)(64)?)( mac|;|\))/i],
260
+ [[
261
+ ARCHITECTURE,
262
+ /ower/,
263
+ EMPTY,
264
+ lowerize
265
+ ]],
266
+ [/ sun4\w[;\)]/i],
267
+ [[ARCHITECTURE, "sparc"]],
268
+ [/\b(avr32|ia64(?=;)|68k(?=\))|\barm(?=v([1-7]|[5-7]1)l?|;|eabi)|(irix|mips|sparc)(64)?\b|pa-risc)/i],
269
+ [[ARCHITECTURE, lowerize]]
270
+ ],
271
+ device: [
272
+ [/\b(sch-i[89]0\d|shw-m380s|sm-[ptx]\w{2,4}|gt-[pn]\d{2,4}|sgh-t8[56]9|nexus 10)/i],
273
+ [
274
+ MODEL,
275
+ [VENDOR, SAMSUNG],
276
+ [TYPE, TABLET]
277
+ ],
278
+ [
279
+ /\b((?:s[cgp]h|gt|sm)-(?![lr])\w+|sc[g-]?[\d]+a?|galaxy nexus)/i,
280
+ /samsung[- ]((?!sm-[lr])[-\w]+)/i,
281
+ /sec-(sgh\w+)/i
282
+ ],
283
+ [
284
+ MODEL,
285
+ [VENDOR, SAMSUNG],
286
+ [TYPE, MOBILE]
287
+ ],
288
+ [/(?:\/|\()(ip(?:hone|od)[\w, ]*)(?:\/|;)/i],
289
+ [
290
+ MODEL,
291
+ [VENDOR, APPLE],
292
+ [TYPE, MOBILE]
293
+ ],
294
+ [
295
+ /\((ipad);[-\w\),; ]+apple/i,
296
+ /applecoremedia\/[\w\.]+ \((ipad)/i,
297
+ /\b(ipad)\d\d?,\d\d?[;\]].+ios/i
298
+ ],
299
+ [
300
+ MODEL,
301
+ [VENDOR, APPLE],
302
+ [TYPE, TABLET]
303
+ ],
304
+ [/(macintosh);/i],
305
+ [MODEL, [VENDOR, APPLE]],
306
+ [/\b(sh-?[altvz]?\d\d[a-ekm]?)/i],
307
+ [
308
+ MODEL,
309
+ [VENDOR, SHARP],
310
+ [TYPE, MOBILE]
311
+ ],
312
+ [/\b((?:brt|eln|hey2?|gdi|jdn)-a?[lnw]09|(?:ag[rm]3?|jdn2|kob2)-a?[lw]0[09]hn)(?: bui|\)|;)/i],
313
+ [
314
+ MODEL,
315
+ [VENDOR, HONOR],
316
+ [TYPE, TABLET]
317
+ ],
318
+ [/honor([-\w ]+)[;\)]/i],
319
+ [
320
+ MODEL,
321
+ [VENDOR, HONOR],
322
+ [TYPE, MOBILE]
323
+ ],
324
+ [/\b((?:ag[rs][2356]?k?|bah[234]?|bg[2o]|bt[kv]|cmr|cpn|db[ry]2?|jdn2|got|kob2?k?|mon|pce|scm|sht?|[tw]gr|vrd)-[ad]?[lw][0125][09]b?|605hw|bg2-u03|(?:gem|fdr|m2|ple|t1)-[7a]0[1-4][lu]|t1-a2[13][lw]|mediapad[\w\. ]*(?= bui|\)))\b(?!.+d\/s)/i],
325
+ [
326
+ MODEL,
327
+ [VENDOR, HUAWEI],
328
+ [TYPE, TABLET]
329
+ ],
330
+ [/(?:huawei)([-\w ]+)[;\)]/i, /\b(nexus 6p|\w{2,4}e?-[atu]?[ln][\dx][012359c][adn]?)\b(?!.+d\/s)/i],
331
+ [
332
+ MODEL,
333
+ [VENDOR, HUAWEI],
334
+ [TYPE, MOBILE]
335
+ ],
336
+ [/oid[^\)]+; (2[\dbc]{4}(182|283|rp\w{2})[cgl]|m2105k81a?c)(?: bui|\))/i, /\b((?:red)?mi[-_ ]?pad[\w- ]*)(?: bui|\))/i],
337
+ [
338
+ [
339
+ MODEL,
340
+ /_/g,
341
+ " "
342
+ ],
343
+ [VENDOR, XIAOMI],
344
+ [TYPE, TABLET]
345
+ ],
346
+ [
347
+ /\b(poco[\w ]+|m2\d{3}j\d\d[a-z]{2})(?: bui|\))/i,
348
+ /\b; (\w+) build\/hm\1/i,
349
+ /\b(hm[-_ ]?note?[_ ]?(?:\d\w)?) bui/i,
350
+ /\b(redmi[\-_ ]?(?:note|k)?[\w_ ]+)(?: bui|\))/i,
351
+ /oid[^\)]+; (m?[12][0-389][01]\w{3,6}[c-y])( bui|; wv|\))/i,
352
+ /\b(mi[-_ ]?(?:a\d|one|one[_ ]plus|note lte|max|cc)?[_ ]?(?:\d?\w?)[_ ]?(?:plus|se|lite|pro)?)(?: bui|\))/i,
353
+ / ([\w ]+) miui\/v?\d/i
354
+ ],
355
+ [
356
+ [
357
+ MODEL,
358
+ /_/g,
359
+ " "
360
+ ],
361
+ [VENDOR, XIAOMI],
362
+ [TYPE, MOBILE]
363
+ ],
364
+ [/; (\w+) bui.+ oppo/i, /\b(cph[12]\d{3}|p(?:af|c[al]|d\w|e[ar])[mt]\d0|x9007|a101op)\b/i],
365
+ [
366
+ MODEL,
367
+ [VENDOR, OPPO],
368
+ [TYPE, MOBILE]
369
+ ],
370
+ [/\b(opd2(\d{3}a?))(?: bui|\))/i],
371
+ [
372
+ MODEL,
373
+ [
374
+ VENDOR,
375
+ strMapper,
376
+ {
377
+ "OnePlus": [
378
+ "304",
379
+ "403",
380
+ "203"
381
+ ],
382
+ "*": OPPO
383
+ }
384
+ ],
385
+ [TYPE, TABLET]
386
+ ],
387
+ [/vivo (\w+)(?: bui|\))/i, /\b(v[12]\d{3}\w?[at])(?: bui|;)/i],
388
+ [
389
+ MODEL,
390
+ [VENDOR, "Vivo"],
391
+ [TYPE, MOBILE]
392
+ ],
393
+ [/\b(rmx[1-3]\d{3})(?: bui|;|\))/i],
394
+ [
395
+ MODEL,
396
+ [VENDOR, "Realme"],
397
+ [TYPE, MOBILE]
398
+ ],
399
+ [
400
+ /\b(milestone|droid(?:[2-4x]| (?:bionic|x2|pro|razr))?:?( 4g)?)\b[\w ]+build\//i,
401
+ /\bmot(?:orola)?[- ](\w*)/i,
402
+ /((?:moto(?! 360)[\w\(\) ]+|xt\d{3,4}|nexus 6)(?= bui|\)))/i
403
+ ],
404
+ [
405
+ MODEL,
406
+ [VENDOR, MOTOROLA],
407
+ [TYPE, MOBILE]
408
+ ],
409
+ [/\b(mz60\d|xoom[2 ]{0,2}) build\//i],
410
+ [
411
+ MODEL,
412
+ [VENDOR, MOTOROLA],
413
+ [TYPE, TABLET]
414
+ ],
415
+ [/((?=lg)?[vl]k\-?\d{3}) bui| 3\.[-\w; ]{10}lg?-([06cv9]{3,4})/i],
416
+ [
417
+ MODEL,
418
+ [VENDOR, LG],
419
+ [TYPE, TABLET]
420
+ ],
421
+ [
422
+ /(lm(?:-?f100[nv]?|-[\w\.]+)(?= bui|\))|nexus [45])/i,
423
+ /\blg[-e;\/ ]+((?!browser|netcast|android tv|watch)\w+)/i,
424
+ /\blg-?([\d\w]+) bui/i
425
+ ],
426
+ [
427
+ MODEL,
428
+ [VENDOR, LG],
429
+ [TYPE, MOBILE]
430
+ ],
431
+ [/(ideatab[-\w ]+|602lv|d-42a|a101lv|a2109a|a3500-hv|s[56]000|pb-6505[my]|tb-?x?\d{3,4}(?:f[cu]|xu|[av])|yt\d?-[jx]?\d+[lfmx])( bui|;|\)|\/)/i, /lenovo ?(b[68]0[08]0-?[hf]?|tab(?:[\w- ]+?)|tb[\w-]{6,7})( bui|;|\)|\/)/i],
432
+ [
433
+ MODEL,
434
+ [VENDOR, LENOVO],
435
+ [TYPE, TABLET]
436
+ ],
437
+ [/(nokia) (t[12][01])/i],
438
+ [
439
+ VENDOR,
440
+ MODEL,
441
+ [TYPE, TABLET]
442
+ ],
443
+ [/(?:maemo|nokia).*(n900|lumia \d+|rm-\d+)/i, /nokia[-_ ]?(([-\w\. ]*))/i],
444
+ [
445
+ [
446
+ MODEL,
447
+ /_/g,
448
+ " "
449
+ ],
450
+ [TYPE, MOBILE],
451
+ [VENDOR, "Nokia"]
452
+ ],
453
+ [/(pixel (c|tablet))\b/i],
454
+ [
455
+ MODEL,
456
+ [VENDOR, GOOGLE],
457
+ [TYPE, TABLET]
458
+ ],
459
+ [/droid.+; (pixel[\daxl ]{0,6})(?: bui|\))/i],
460
+ [
461
+ MODEL,
462
+ [VENDOR, GOOGLE],
463
+ [TYPE, MOBILE]
464
+ ],
465
+ [/droid.+; (a?\d[0-2]{2}so|[c-g]\d{4}|so[-gl]\w+|xq-a\w[4-7][12])(?= bui|\).+chrome\/(?![1-6]{0,1}\d\.))/i],
466
+ [
467
+ MODEL,
468
+ [VENDOR, SONY],
469
+ [TYPE, MOBILE]
470
+ ],
471
+ [/sony tablet [ps]/i, /\b(?:sony)?sgp\w+(?: bui|\))/i],
472
+ [
473
+ [MODEL, "Xperia Tablet"],
474
+ [VENDOR, SONY],
475
+ [TYPE, TABLET]
476
+ ],
477
+ [/ (kb2005|in20[12]5|be20[12][59])\b/i, /(?:one)?(?:plus)? (a\d0\d\d)(?: b|\))/i],
478
+ [
479
+ MODEL,
480
+ [VENDOR, ONEPLUS],
481
+ [TYPE, MOBILE]
482
+ ],
483
+ [
484
+ /(alexa)webm/i,
485
+ /(kf[a-z]{2}wi|aeo(?!bc)\w\w)( bui|\))/i,
486
+ /(kf[a-z]+)( bui|\)).+silk\//i
487
+ ],
488
+ [
489
+ MODEL,
490
+ [VENDOR, AMAZON],
491
+ [TYPE, TABLET]
492
+ ],
493
+ [/((?:sd|kf)[0349hijorstuw]+)( bui|\)).+silk\//i],
494
+ [
495
+ [
496
+ MODEL,
497
+ /(.+)/g,
498
+ "Fire Phone $1"
499
+ ],
500
+ [VENDOR, AMAZON],
501
+ [TYPE, MOBILE]
502
+ ],
503
+ [/(playbook);[-\w\),; ]+(rim)/i],
504
+ [
505
+ MODEL,
506
+ VENDOR,
507
+ [TYPE, TABLET]
508
+ ],
509
+ [/\b((?:bb[a-f]|st[hv])100-\d)/i, /\(bb10; (\w+)/i],
510
+ [
511
+ MODEL,
512
+ [VENDOR, BLACKBERRY],
513
+ [TYPE, MOBILE]
514
+ ],
515
+ [/(?:\b|asus_)(transfo[prime ]{4,10} \w+|eeepc|slider \w+|nexus 7|padfone|p00[cj])/i],
516
+ [
517
+ MODEL,
518
+ [VENDOR, ASUS],
519
+ [TYPE, TABLET]
520
+ ],
521
+ [/ (z[bes]6[027][012][km][ls]|zenfone \d\w?)\b/i],
522
+ [
523
+ MODEL,
524
+ [VENDOR, ASUS],
525
+ [TYPE, MOBILE]
526
+ ],
527
+ [/(nexus 9)/i],
528
+ [
529
+ MODEL,
530
+ [VENDOR, "HTC"],
531
+ [TYPE, TABLET]
532
+ ],
533
+ [
534
+ /(htc)[-;_ ]{1,2}([\w ]+(?=\)| bui)|\w+)/i,
535
+ /(zte)[- ]([\w ]+?)(?: bui|\/|\))/i,
536
+ /(alcatel|geeksphone|nexian|panasonic(?!(?:;|\.))|sony(?!-bra))[-_ ]?([-\w]*)/i
537
+ ],
538
+ [
539
+ VENDOR,
540
+ [
541
+ MODEL,
542
+ /_/g,
543
+ " "
544
+ ],
545
+ [TYPE, MOBILE]
546
+ ],
547
+ [/droid [\w\.]+; ((?:8[14]9[16]|9(?:0(?:48|60|8[01])|1(?:3[27]|66)|2(?:6[69]|9[56])|466))[gqswx])\w*(\)| bui)/i],
548
+ [
549
+ MODEL,
550
+ [VENDOR, "TCL"],
551
+ [TYPE, TABLET]
552
+ ],
553
+ [/(itel) ((\w+))/i],
554
+ [
555
+ [VENDOR, lowerize],
556
+ MODEL,
557
+ [
558
+ TYPE,
559
+ strMapper,
560
+ {
561
+ "tablet": ["p10001l", "w7001"],
562
+ "*": "mobile"
563
+ }
564
+ ]
565
+ ],
566
+ [/droid.+; ([ab][1-7]-?[0178a]\d\d?)/i],
567
+ [
568
+ MODEL,
569
+ [VENDOR, "Acer"],
570
+ [TYPE, TABLET]
571
+ ],
572
+ [/droid.+; (m[1-5] note) bui/i, /\bmz-([-\w]{2,})/i],
573
+ [
574
+ MODEL,
575
+ [VENDOR, "Meizu"],
576
+ [TYPE, MOBILE]
577
+ ],
578
+ [/; ((?:power )?armor(?:[\w ]{0,8}))(?: bui|\))/i],
579
+ [
580
+ MODEL,
581
+ [VENDOR, "Ulefone"],
582
+ [TYPE, MOBILE]
583
+ ],
584
+ [/; (energy ?\w+)(?: bui|\))/i, /; energizer ([\w ]+)(?: bui|\))/i],
585
+ [
586
+ MODEL,
587
+ [VENDOR, "Energizer"],
588
+ [TYPE, MOBILE]
589
+ ],
590
+ [/; cat (b35);/i, /; (b15q?|s22 flip|s48c|s62 pro)(?: bui|\))/i],
591
+ [
592
+ MODEL,
593
+ [VENDOR, "Cat"],
594
+ [TYPE, MOBILE]
595
+ ],
596
+ [/((?:new )?andromax[\w- ]+)(?: bui|\))/i],
597
+ [
598
+ MODEL,
599
+ [VENDOR, "Smartfren"],
600
+ [TYPE, MOBILE]
601
+ ],
602
+ [/droid.+; (a(?:015|06[35]|142p?))/i],
603
+ [
604
+ MODEL,
605
+ [VENDOR, "Nothing"],
606
+ [TYPE, MOBILE]
607
+ ],
608
+ [/; (x67 5g|tikeasy \w+|ac[1789]\d\w+)( b|\))/i, /archos ?(5|gamepad2?|([\w ]*[t1789]|hello) ?\d+[\w ]*)( b|\))/i],
609
+ [
610
+ MODEL,
611
+ [VENDOR, "Archos"],
612
+ [TYPE, TABLET]
613
+ ],
614
+ [/archos ([\w ]+)( b|\))/i, /; (ac[3-6]\d\w{2,8})( b|\))/i],
615
+ [
616
+ MODEL,
617
+ [VENDOR, "Archos"],
618
+ [TYPE, MOBILE]
619
+ ],
620
+ [/(imo) (tab \w+)/i, /(infinix) (x1101b?)/i],
621
+ [
622
+ VENDOR,
623
+ MODEL,
624
+ [TYPE, TABLET]
625
+ ],
626
+ [
627
+ /(blackberry|benq|palm(?=\-)|sonyericsson|acer|asus(?! zenw)|dell|jolla|meizu|motorola|polytron|infinix|tecno|micromax|advan)[-_ ]?([-\w]*)/i,
628
+ /; (hmd|imo) ([\w ]+?)(?: bui|\))/i,
629
+ /(hp) ([\w ]+\w)/i,
630
+ /(microsoft); (lumia[\w ]+)/i,
631
+ /(lenovo)[-_ ]?([-\w ]+?)(?: bui|\)|\/)/i,
632
+ /(oppo) ?([\w ]+) bui/i
633
+ ],
634
+ [
635
+ VENDOR,
636
+ MODEL,
637
+ [TYPE, MOBILE]
638
+ ],
639
+ [
640
+ /(kobo)\s(ereader|touch)/i,
641
+ /(hp).+(touchpad(?!.+tablet)|tablet)/i,
642
+ /(kindle)\/([\w\.]+)/i,
643
+ /(nook)[\w ]+build\/(\w+)/i,
644
+ /(dell) (strea[kpr\d ]*[\dko])/i,
645
+ /(le[- ]+pan)[- ]+(\w{1,9}) bui/i,
646
+ /(trinity)[- ]*(t\d{3}) bui/i,
647
+ /(gigaset)[- ]+(q\w{1,9}) bui/i,
648
+ /(vodafone) ([\w ]+)(?:\)| bui)/i
649
+ ],
650
+ [
651
+ VENDOR,
652
+ MODEL,
653
+ [TYPE, TABLET]
654
+ ],
655
+ [/(surface duo)/i],
656
+ [
657
+ MODEL,
658
+ [VENDOR, MICROSOFT],
659
+ [TYPE, TABLET]
660
+ ],
661
+ [/droid [\d\.]+; (fp\du?)(?: b|\))/i],
662
+ [
663
+ MODEL,
664
+ [VENDOR, "Fairphone"],
665
+ [TYPE, MOBILE]
666
+ ],
667
+ [/(u304aa)/i],
668
+ [
669
+ MODEL,
670
+ [VENDOR, "AT&T"],
671
+ [TYPE, MOBILE]
672
+ ],
673
+ [/\bsie-(\w*)/i],
674
+ [
675
+ MODEL,
676
+ [VENDOR, "Siemens"],
677
+ [TYPE, MOBILE]
678
+ ],
679
+ [/\b(rct\w+) b/i],
680
+ [
681
+ MODEL,
682
+ [VENDOR, "RCA"],
683
+ [TYPE, TABLET]
684
+ ],
685
+ [/\b(venue[\d ]{2,7}) b/i],
686
+ [
687
+ MODEL,
688
+ [VENDOR, "Dell"],
689
+ [TYPE, TABLET]
690
+ ],
691
+ [/\b(q(?:mv|ta)\w+) b/i],
692
+ [
693
+ MODEL,
694
+ [VENDOR, "Verizon"],
695
+ [TYPE, TABLET]
696
+ ],
697
+ [/\b(?:barnes[& ]+noble |bn[rt])([\w\+ ]*) b/i],
698
+ [
699
+ MODEL,
700
+ [VENDOR, "Barnes & Noble"],
701
+ [TYPE, TABLET]
702
+ ],
703
+ [/\b(tm\d{3}\w+) b/i],
704
+ [
705
+ MODEL,
706
+ [VENDOR, "NuVision"],
707
+ [TYPE, TABLET]
708
+ ],
709
+ [/\b(k88) b/i],
710
+ [
711
+ MODEL,
712
+ [VENDOR, "ZTE"],
713
+ [TYPE, TABLET]
714
+ ],
715
+ [/\b(nx\d{3}j) b/i],
716
+ [
717
+ MODEL,
718
+ [VENDOR, "ZTE"],
719
+ [TYPE, MOBILE]
720
+ ],
721
+ [/\b(gen\d{3}) b.+49h/i],
722
+ [
723
+ MODEL,
724
+ [VENDOR, "Swiss"],
725
+ [TYPE, MOBILE]
726
+ ],
727
+ [/\b(zur\d{3}) b/i],
728
+ [
729
+ MODEL,
730
+ [VENDOR, "Swiss"],
731
+ [TYPE, TABLET]
732
+ ],
733
+ [/\b((zeki)?tb.*\b) b/i],
734
+ [
735
+ MODEL,
736
+ [VENDOR, "Zeki"],
737
+ [TYPE, TABLET]
738
+ ],
739
+ [/\b([yr]\d{2}) b/i, /\b(dragon[- ]+touch |dt)(\w{5}) b/i],
740
+ [
741
+ [VENDOR, "Dragon Touch"],
742
+ MODEL,
743
+ [TYPE, TABLET]
744
+ ],
745
+ [/\b(ns-?\w{0,9}) b/i],
746
+ [
747
+ MODEL,
748
+ [VENDOR, "Insignia"],
749
+ [TYPE, TABLET]
750
+ ],
751
+ [/\b((nxa|next)-?\w{0,9}) b/i],
752
+ [
753
+ MODEL,
754
+ [VENDOR, "NextBook"],
755
+ [TYPE, TABLET]
756
+ ],
757
+ [/\b(xtreme\_)?(v(1[045]|2[015]|[3469]0|7[05])) b/i],
758
+ [
759
+ [VENDOR, "Voice"],
760
+ MODEL,
761
+ [TYPE, MOBILE]
762
+ ],
763
+ [/\b(lvtel\-)?(v1[12]) b/i],
764
+ [
765
+ [VENDOR, "LvTel"],
766
+ MODEL,
767
+ [TYPE, MOBILE]
768
+ ],
769
+ [/\b(ph-1) /i],
770
+ [
771
+ MODEL,
772
+ [VENDOR, "Essential"],
773
+ [TYPE, MOBILE]
774
+ ],
775
+ [/\b(v(100md|700na|7011|917g).*\b) b/i],
776
+ [
777
+ MODEL,
778
+ [VENDOR, "Envizen"],
779
+ [TYPE, TABLET]
780
+ ],
781
+ [/\b(trio[-\w\. ]+) b/i],
782
+ [
783
+ MODEL,
784
+ [VENDOR, "MachSpeed"],
785
+ [TYPE, TABLET]
786
+ ],
787
+ [/\btu_(1491) b/i],
788
+ [
789
+ MODEL,
790
+ [VENDOR, "Rotor"],
791
+ [TYPE, TABLET]
792
+ ],
793
+ [/((?:tegranote|shield t(?!.+d tv))[\w- ]*?)(?: b|\))/i],
794
+ [
795
+ MODEL,
796
+ [VENDOR, NVIDIA],
797
+ [TYPE, TABLET]
798
+ ],
799
+ [/(sprint) (\w+)/i],
800
+ [
801
+ VENDOR,
802
+ MODEL,
803
+ [TYPE, MOBILE]
804
+ ],
805
+ [/(kin\.[onetw]{3})/i],
806
+ [
807
+ [
808
+ MODEL,
809
+ /\./g,
810
+ " "
811
+ ],
812
+ [VENDOR, MICROSOFT],
813
+ [TYPE, MOBILE]
814
+ ],
815
+ [/droid.+; (cc6666?|et5[16]|mc[239][23]x?|vc8[03]x?)\)/i],
816
+ [
817
+ MODEL,
818
+ [VENDOR, ZEBRA],
819
+ [TYPE, TABLET]
820
+ ],
821
+ [/droid.+; (ec30|ps20|tc[2-8]\d[kx])\)/i],
822
+ [
823
+ MODEL,
824
+ [VENDOR, ZEBRA],
825
+ [TYPE, MOBILE]
826
+ ],
827
+ [/smart-tv.+(samsung)/i],
828
+ [VENDOR, [TYPE, SMARTTV]],
829
+ [/hbbtv.+maple;(\d+)/i],
830
+ [
831
+ [
832
+ MODEL,
833
+ /^/,
834
+ "SmartTV"
835
+ ],
836
+ [VENDOR, SAMSUNG],
837
+ [TYPE, SMARTTV]
838
+ ],
839
+ [/(nux; netcast.+smarttv|lg (netcast\.tv-201\d|android tv))/i],
840
+ [[VENDOR, LG], [TYPE, SMARTTV]],
841
+ [/(apple) ?tv/i],
842
+ [
843
+ VENDOR,
844
+ [MODEL, APPLE + " TV"],
845
+ [TYPE, SMARTTV]
846
+ ],
847
+ [/crkey/i],
848
+ [
849
+ [MODEL, CHROME + "cast"],
850
+ [VENDOR, GOOGLE],
851
+ [TYPE, SMARTTV]
852
+ ],
853
+ [/droid.+aft(\w+)( bui|\))/i],
854
+ [
855
+ MODEL,
856
+ [VENDOR, AMAZON],
857
+ [TYPE, SMARTTV]
858
+ ],
859
+ [/(shield \w+ tv)/i],
860
+ [
861
+ MODEL,
862
+ [VENDOR, NVIDIA],
863
+ [TYPE, SMARTTV]
864
+ ],
865
+ [/\(dtv[\);].+(aquos)/i, /(aquos-tv[\w ]+)\)/i],
866
+ [
867
+ MODEL,
868
+ [VENDOR, SHARP],
869
+ [TYPE, SMARTTV]
870
+ ],
871
+ [/(bravia[\w ]+)( bui|\))/i],
872
+ [
873
+ MODEL,
874
+ [VENDOR, SONY],
875
+ [TYPE, SMARTTV]
876
+ ],
877
+ [/(mi(tv|box)-?\w+) bui/i],
878
+ [
879
+ MODEL,
880
+ [VENDOR, XIAOMI],
881
+ [TYPE, SMARTTV]
882
+ ],
883
+ [/Hbbtv.*(technisat) (.*);/i],
884
+ [
885
+ VENDOR,
886
+ MODEL,
887
+ [TYPE, SMARTTV]
888
+ ],
889
+ [/\b(roku)[\dx]*[\)\/]((?:dvp-)?[\d\.]*)/i, /hbbtv\/\d+\.\d+\.\d+ +\([\w\+ ]*; *([\w\d][^;]*);([^;]*)/i],
890
+ [
891
+ [VENDOR, trim],
892
+ [MODEL, trim],
893
+ [TYPE, SMARTTV]
894
+ ],
895
+ [/droid.+; ([\w- ]+) (?:android tv|smart[- ]?tv)/i],
896
+ [MODEL, [TYPE, SMARTTV]],
897
+ [/\b(android tv|smart[- ]?tv|opera tv|tv; rv:)\b/i],
898
+ [[TYPE, SMARTTV]],
899
+ [/(ouya)/i, /(nintendo) ([wids3utch]+)/i],
900
+ [
901
+ VENDOR,
902
+ MODEL,
903
+ [TYPE, CONSOLE]
904
+ ],
905
+ [/droid.+; (shield)( bui|\))/i],
906
+ [
907
+ MODEL,
908
+ [VENDOR, NVIDIA],
909
+ [TYPE, CONSOLE]
910
+ ],
911
+ [/(playstation \w+)/i],
912
+ [
913
+ MODEL,
914
+ [VENDOR, SONY],
915
+ [TYPE, CONSOLE]
916
+ ],
917
+ [/\b(xbox(?: one)?(?!; xbox))[\); ]/i],
918
+ [
919
+ MODEL,
920
+ [VENDOR, MICROSOFT],
921
+ [TYPE, CONSOLE]
922
+ ],
923
+ [/\b(sm-[lr]\d\d[0156][fnuw]?s?|gear live)\b/i],
924
+ [
925
+ MODEL,
926
+ [VENDOR, SAMSUNG],
927
+ [TYPE, WEARABLE]
928
+ ],
929
+ [/((pebble))app/i, /(asus|google|lg|oppo) ((pixel |zen)?watch[\w ]*)( bui|\))/i],
930
+ [
931
+ VENDOR,
932
+ MODEL,
933
+ [TYPE, WEARABLE]
934
+ ],
935
+ [/(ow(?:19|20)?we?[1-3]{1,3})/i],
936
+ [
937
+ MODEL,
938
+ [VENDOR, OPPO],
939
+ [TYPE, WEARABLE]
940
+ ],
941
+ [/(watch)(?: ?os[,\/]|\d,\d\/)[\d\.]+/i],
942
+ [
943
+ MODEL,
944
+ [VENDOR, APPLE],
945
+ [TYPE, WEARABLE]
946
+ ],
947
+ [/(opwwe\d{3})/i],
948
+ [
949
+ MODEL,
950
+ [VENDOR, ONEPLUS],
951
+ [TYPE, WEARABLE]
952
+ ],
953
+ [/(moto 360)/i],
954
+ [
955
+ MODEL,
956
+ [VENDOR, MOTOROLA],
957
+ [TYPE, WEARABLE]
958
+ ],
959
+ [/(smartwatch 3)/i],
960
+ [
961
+ MODEL,
962
+ [VENDOR, SONY],
963
+ [TYPE, WEARABLE]
964
+ ],
965
+ [/(g watch r)/i],
966
+ [
967
+ MODEL,
968
+ [VENDOR, LG],
969
+ [TYPE, WEARABLE]
970
+ ],
971
+ [/droid.+; (wt63?0{2,3})\)/i],
972
+ [
973
+ MODEL,
974
+ [VENDOR, ZEBRA],
975
+ [TYPE, WEARABLE]
976
+ ],
977
+ [/droid.+; (glass) \d/i],
978
+ [
979
+ MODEL,
980
+ [VENDOR, GOOGLE],
981
+ [TYPE, WEARABLE]
982
+ ],
983
+ [/(pico) (4|neo3(?: link|pro)?)/i],
984
+ [
985
+ VENDOR,
986
+ MODEL,
987
+ [TYPE, WEARABLE]
988
+ ],
989
+ [/; (quest( \d| pro)?)/i],
990
+ [
991
+ MODEL,
992
+ [VENDOR, FACEBOOK],
993
+ [TYPE, WEARABLE]
994
+ ],
995
+ [/(tesla)(?: qtcarbrowser|\/[-\w\.]+)/i],
996
+ [VENDOR, [TYPE, EMBEDDED]],
997
+ [/(aeobc)\b/i],
998
+ [
999
+ MODEL,
1000
+ [VENDOR, AMAZON],
1001
+ [TYPE, EMBEDDED]
1002
+ ],
1003
+ [/(homepod).+mac os/i],
1004
+ [
1005
+ MODEL,
1006
+ [VENDOR, APPLE],
1007
+ [TYPE, EMBEDDED]
1008
+ ],
1009
+ [/windows iot/i],
1010
+ [[TYPE, EMBEDDED]],
1011
+ [/droid .+?; ([^;]+?)(?: bui|; wv\)|\) applew).+? mobile safari/i],
1012
+ [MODEL, [TYPE, MOBILE]],
1013
+ [/droid .+?; ([^;]+?)(?: bui|\) applew).+?(?! mobile) safari/i],
1014
+ [MODEL, [TYPE, TABLET]],
1015
+ [/\b((tablet|tab)[;\/]|focus\/\d(?!.+mobile))/i],
1016
+ [[TYPE, TABLET]],
1017
+ [/(phone|mobile(?:[;\/]| [ \w\/\.]*safari)|pda(?=.+windows ce))/i],
1018
+ [[TYPE, MOBILE]],
1019
+ [/droid .+?; ([\w\. -]+)( bui|\))/i],
1020
+ [MODEL, [VENDOR, "Generic"]]
1021
+ ],
1022
+ engine: [
1023
+ [/windows.+ edge\/([\w\.]+)/i],
1024
+ [VERSION, [NAME, EDGE + "HTML"]],
1025
+ [/(arkweb)\/([\w\.]+)/i],
1026
+ [NAME, VERSION],
1027
+ [/webkit\/537\.36.+chrome\/(?!27)([\w\.]+)/i],
1028
+ [VERSION, [NAME, "Blink"]],
1029
+ [
1030
+ /(presto)\/([\w\.]+)/i,
1031
+ /(webkit|trident|netfront|netsurf|amaya|lynx|w3m|goanna|servo)\/([\w\.]+)/i,
1032
+ /ekioh(flow)\/([\w\.]+)/i,
1033
+ /(khtml|tasman|links)[\/ ]\(?([\w\.]+)/i,
1034
+ /(icab)[\/ ]([23]\.[\d\.]+)/i,
1035
+ /\b(libweb)/i
1036
+ ],
1037
+ [NAME, VERSION],
1038
+ [/ladybird\//i],
1039
+ [[NAME, "LibWeb"]],
1040
+ [/rv\:([\w\.]{1,9})\b.+(gecko)/i],
1041
+ [VERSION, NAME]
1042
+ ],
1043
+ os: [
1044
+ [/microsoft (windows) (vista|xp)/i],
1045
+ [NAME, VERSION],
1046
+ [/(windows (?:phone(?: os)?|mobile|iot))[\/ ]?([\d\.\w ]*)/i],
1047
+ [NAME, [
1048
+ VERSION,
1049
+ strMapper,
1050
+ windowsVersionMap
1051
+ ]],
1052
+ [
1053
+ /windows nt 6\.2; (arm)/i,
1054
+ /windows[\/ ]([ntce\d\. ]+\w)(?!.+xbox)/i,
1055
+ /(?:win(?=3|9|n)|win 9x )([nt\d\.]+)/i
1056
+ ],
1057
+ [[
1058
+ VERSION,
1059
+ strMapper,
1060
+ windowsVersionMap
1061
+ ], [NAME, "Windows"]],
1062
+ [
1063
+ /[adehimnop]{4,7}\b(?:.*os ([\w]+) like mac|; opera)/i,
1064
+ /(?:ios;fbsv\/|iphone.+ios[\/ ])([\d\.]+)/i,
1065
+ /cfnetwork\/.+darwin/i
1066
+ ],
1067
+ [[
1068
+ VERSION,
1069
+ /_/g,
1070
+ "."
1071
+ ], [NAME, "iOS"]],
1072
+ [/(mac os x) ?([\w\. ]*)/i, /(macintosh|mac_powerpc\b)(?!.+haiku)/i],
1073
+ [[NAME, MAC_OS], [
1074
+ VERSION,
1075
+ /_/g,
1076
+ "."
1077
+ ]],
1078
+ [/droid ([\w\.]+)\b.+(android[- ]x86|harmonyos)/i],
1079
+ [VERSION, NAME],
1080
+ [/(ubuntu) ([\w\.]+) like android/i],
1081
+ [[
1082
+ NAME,
1083
+ /(.+)/,
1084
+ "$1 Touch"
1085
+ ], VERSION],
1086
+ [/(android|bada|blackberry|kaios|maemo|meego|openharmony|qnx|rim tablet os|sailfish|series40|symbian|tizen|webos)\w*[-\/; ]?([\d\.]*)/i],
1087
+ [NAME, VERSION],
1088
+ [/\(bb(10);/i],
1089
+ [VERSION, [NAME, BLACKBERRY]],
1090
+ [/(?:symbian ?os|symbos|s60(?=;)|series ?60)[-\/ ]?([\w\.]*)/i],
1091
+ [VERSION, [NAME, "Symbian"]],
1092
+ [/mozilla\/[\d\.]+ \((?:mobile|tablet|tv|mobile; [\w ]+); rv:.+ gecko\/([\w\.]+)/i],
1093
+ [VERSION, [NAME, FIREFOX + " OS"]],
1094
+ [/web0s;.+rt(tv)/i, /\b(?:hp)?wos(?:browser)?\/([\w\.]+)/i],
1095
+ [VERSION, [NAME, "webOS"]],
1096
+ [/watch(?: ?os[,\/]|\d,\d\/)([\d\.]+)/i],
1097
+ [VERSION, [NAME, "watchOS"]],
1098
+ [/crkey\/([\d\.]+)/i],
1099
+ [VERSION, [NAME, CHROME + "cast"]],
1100
+ [/(cros) [\w]+(?:\)| ([\w\.]+)\b)/i],
1101
+ [[NAME, CHROMIUM_OS], VERSION],
1102
+ [
1103
+ /panasonic;(viera)/i,
1104
+ /(netrange)mmh/i,
1105
+ /(nettv)\/(\d+\.[\w\.]+)/i,
1106
+ /(nintendo|playstation) ([wids345portablevuch]+)/i,
1107
+ /(xbox); +xbox ([^\);]+)/i,
1108
+ /\b(joli|palm)\b ?(?:os)?\/?([\w\.]*)/i,
1109
+ /(mint)[\/\(\) ]?(\w*)/i,
1110
+ /(mageia|vectorlinux)[; ]/i,
1111
+ /([kxln]?ubuntu|debian|suse|opensuse|gentoo|arch(?= linux)|slackware|fedora|mandriva|centos|pclinuxos|red ?hat|zenwalk|linpus|raspbian|plan 9|minix|risc os|contiki|deepin|manjaro|elementary os|sabayon|linspire)(?: gnu\/linux)?(?: enterprise)?(?:[- ]linux)?(?:-gnu)?[-\/ ]?(?!chrom|package)([-\w\.]*)/i,
1112
+ /(hurd|linux)(?: arm\w*| x86\w*| ?)([\w\.]*)/i,
1113
+ /(gnu) ?([\w\.]*)/i,
1114
+ /\b([-frentopcghs]{0,5}bsd|dragonfly)[\/ ]?(?!amd|[ix346]{1,2}86)([\w\.]*)/i,
1115
+ /(haiku) (\w+)/i
1116
+ ],
1117
+ [NAME, VERSION],
1118
+ [/(sunos) ?([\w\.\d]*)/i],
1119
+ [[NAME, "Solaris"], VERSION],
1120
+ [
1121
+ /((?:open)?solaris)[-\/ ]?([\w\.]*)/i,
1122
+ /(aix) ((\d)(?=\.|\)| )[\w\.])*/i,
1123
+ /\b(beos|os\/2|amigaos|morphos|openvms|fuchsia|hp-ux|serenityos)/i,
1124
+ /(unix) ?([\w\.]*)/i
1125
+ ],
1126
+ [NAME, VERSION]
1127
+ ]
1128
+ };
1129
+ var UAParser = function(ua, extensions) {
1130
+ if (typeof ua === OBJ_TYPE) {
1131
+ extensions = ua;
1132
+ ua = undefined;
1133
+ }
1134
+ if (!(this instanceof UAParser)) return new UAParser(ua, extensions).getResult();
1135
+ var _navigator = typeof window !== UNDEF_TYPE && window.navigator ? window.navigator : undefined;
1136
+ var _ua = ua || (_navigator && _navigator.userAgent ? _navigator.userAgent : EMPTY);
1137
+ var _uach = _navigator && _navigator.userAgentData ? _navigator.userAgentData : undefined;
1138
+ var _rgxmap = extensions ? extend(regexes, extensions) : regexes;
1139
+ var _isSelfNav = _navigator && _navigator.userAgent == _ua;
1140
+ this.getBrowser = function() {
1141
+ var _browser = {};
1142
+ _browser[NAME] = undefined;
1143
+ _browser[VERSION] = undefined;
1144
+ rgxMapper.call(_browser, _ua, _rgxmap.browser);
1145
+ _browser[MAJOR] = majorize(_browser[VERSION]);
1146
+ if (_isSelfNav && _navigator && _navigator.brave && typeof _navigator.brave.isBrave == FUNC_TYPE) _browser[NAME] = "Brave";
1147
+ return _browser;
1148
+ };
1149
+ this.getCPU = function() {
1150
+ var _cpu = {};
1151
+ _cpu[ARCHITECTURE] = undefined;
1152
+ rgxMapper.call(_cpu, _ua, _rgxmap.cpu);
1153
+ return _cpu;
1154
+ };
1155
+ this.getDevice = function() {
1156
+ var _device = {};
1157
+ _device[VENDOR] = undefined;
1158
+ _device[MODEL] = undefined;
1159
+ _device[TYPE] = undefined;
1160
+ rgxMapper.call(_device, _ua, _rgxmap.device);
1161
+ if (_isSelfNav && !_device[TYPE] && _uach && _uach.mobile) _device[TYPE] = MOBILE;
1162
+ if (_isSelfNav && _device[MODEL] == "Macintosh" && _navigator && typeof _navigator.standalone !== UNDEF_TYPE && _navigator.maxTouchPoints && _navigator.maxTouchPoints > 2) {
1163
+ _device[MODEL] = "iPad";
1164
+ _device[TYPE] = TABLET;
1165
+ }
1166
+ return _device;
1167
+ };
1168
+ this.getEngine = function() {
1169
+ var _engine = {};
1170
+ _engine[NAME] = undefined;
1171
+ _engine[VERSION] = undefined;
1172
+ rgxMapper.call(_engine, _ua, _rgxmap.engine);
1173
+ return _engine;
1174
+ };
1175
+ this.getOS = function() {
1176
+ var _os = {};
1177
+ _os[NAME] = undefined;
1178
+ _os[VERSION] = undefined;
1179
+ rgxMapper.call(_os, _ua, _rgxmap.os);
1180
+ if (_isSelfNav && !_os[NAME] && _uach && _uach.platform && _uach.platform != "Unknown") _os[NAME] = _uach.platform.replace(/chrome os/i, CHROMIUM_OS).replace(/macos/i, MAC_OS);
1181
+ return _os;
1182
+ };
1183
+ this.getResult = function() {
1184
+ return {
1185
+ ua: this.getUA(),
1186
+ browser: this.getBrowser(),
1187
+ engine: this.getEngine(),
1188
+ os: this.getOS(),
1189
+ device: this.getDevice(),
1190
+ cpu: this.getCPU()
1191
+ };
1192
+ };
1193
+ this.getUA = function() {
1194
+ return _ua;
1195
+ };
1196
+ this.setUA = function(ua) {
1197
+ _ua = typeof ua === STR_TYPE && ua.length > UA_MAX_LENGTH ? trim(ua, UA_MAX_LENGTH) : ua;
1198
+ return this;
1199
+ };
1200
+ this.setUA(_ua);
1201
+ return this;
1202
+ };
1203
+ UAParser.VERSION = LIBVERSION;
1204
+ UAParser.BROWSER = enumerize([
1205
+ NAME,
1206
+ VERSION,
1207
+ MAJOR
1208
+ ]);
1209
+ UAParser.CPU = enumerize([ARCHITECTURE]);
1210
+ UAParser.DEVICE = enumerize([
1211
+ MODEL,
1212
+ VENDOR,
1213
+ TYPE,
1214
+ CONSOLE,
1215
+ MOBILE,
1216
+ SMARTTV,
1217
+ TABLET,
1218
+ WEARABLE,
1219
+ EMBEDDED
1220
+ ]);
1221
+ UAParser.ENGINE = UAParser.OS = enumerize([NAME, VERSION]);
1222
+ if (typeof exports !== UNDEF_TYPE) {
1223
+ if (typeof module !== UNDEF_TYPE && module.exports) exports = module.exports = UAParser;
1224
+ exports.UAParser = UAParser;
1225
+ } else if (typeof define === FUNC_TYPE && define.amd) define(function() {
1226
+ return UAParser;
1227
+ });
1228
+ else if (typeof window !== UNDEF_TYPE) window.UAParser = UAParser;
1229
+ var $ = typeof window !== UNDEF_TYPE && (window.jQuery || window.Zepto);
1230
+ if ($ && !$.ua) {
1231
+ var parser = new UAParser();
1232
+ $.ua = parser.getResult();
1233
+ $.ua.get = function() {
1234
+ return parser.getUA();
1235
+ };
1236
+ $.ua.set = function(ua) {
1237
+ parser.setUA(ua);
1238
+ var result = parser.getResult();
1239
+ for (var prop in result) $.ua[prop] = result[prop];
1240
+ };
1241
+ }
1242
+ })(typeof window === "object" ? window : exports);
1243
+ })))();
1244
+ const FROZEN_IOS_USER_AGENT_VERSION = "18.6";
1245
+ function getParsedUserAgent(userAgent) {
1246
+ const result = (userAgent ? new import_ua_parser.UAParser(userAgent) : new import_ua_parser.UAParser()).getResult();
1247
+ const deviceVendor = result.device.vendor ?? (result.device.model?.startsWith("Pixel") ? "Google" : void 0);
1248
+ let browserName = result.browser.name;
1249
+ if (browserName === "Chrome" && /(?:\b(?:crmo|crios)\/|chrome\/[\w.]+ mobile)/i.test(result.ua)) browserName = "Mobile Chrome";
1250
+ else if (browserName === "Firefox" && /(?:\bfxios\/|(?:mobile|tablet);.*firefox\/)/i.test(result.ua)) browserName = "Mobile Firefox";
1251
+ let osName = result.os.name;
1252
+ if (osName === "Mac OS") osName = "macOS";
1253
+ else if (osName === "Chromium OS") osName = "Chrome OS";
1254
+ const safariVersion = /\) Version\/([\d.]+)/.exec(result.ua)?.[1];
1255
+ const osVersion = result.os.name === "iOS" && result.os.version === FROZEN_IOS_USER_AGENT_VERSION && safariVersion !== void 0 && Number.parseInt(safariVersion, 10) >= 26 ? safariVersion : result.os.version;
1256
+ return {
1257
+ device: {
1258
+ model: result.device.model,
1259
+ vendor: deviceVendor,
1260
+ type: result.device.type
1261
+ },
1262
+ os: {
1263
+ name: osName,
1264
+ version: osVersion
1265
+ },
1266
+ browser: {
1267
+ name: browserName,
1268
+ version: result.browser.version
1269
+ },
1270
+ engine: {
1271
+ name: result.engine.name,
1272
+ version: result.engine.version
1273
+ },
1274
+ cpu: { architecture: result.cpu.architecture }
1275
+ };
1276
+ }
1277
+ //#endregion
1278
+ export { getParsedUserAgent as t };